The spec is very detailed and allows a lot of granularity. Unfortunately, real businesses often don't have set holiday schedules but rather play it by ear each year. OSM has no way to add "this business will be closed on these holidays this year, next year might be different". When lots of businesses introduced modified hours during the Covid lockdowns, there was no concept of temporary opening hours so a "opening_hours:covid19" was introduced. Older data consumers simply ignored that tag. More generally OSM is only for data that is (mostly) permanent. Adding "this business will be closed for Christmas this year" is not OSM data. "This business is closed on Christmas" can be added on OSM. But many businesses don't plan that far ahead as to have set announced holiday hours that can be written in the OSM opening_hours syntax.
What do you mean by this? The spec seems to allow it https://wiki.openstreetmap.org/wiki/Key:opening_hours/specif...