First of all I understand your frustration, I would also consider this issue to be a blocker and release nothing new until this basic functionality issue is completely solved.
About 10 years: no, it was working properly in R4.0, at least for me. So, it is a major regression (probably the biggest of all time Qubes OS exists). And the problem was not address for a long time. Layout switching was broken in R4.1 due to the new layout propagation approach and this dramatic change was not even mentioned in the R4.1 changelog.
On R4.1 there were at least 4 separate bugs in managing keyboard layout. Most of them has been fixed recently, not sure if they are already updated with dom0 updates, though. But the delay when switching is still not fixed, as I understand. I diagnosed the issue and reported, but it has not been not addressed yet.
You can post your concerns on github in the linked issues, because it seems that devs are not reading forum actively nowadays, or at least do not reply.
Read more about layout switching issues of R4.2 and the progress of solving them here:
- This commend on github: Layout xkb options are not cleared during propagation · Issue #8230 · QubesOS/qubes-issues · GitHub
- This thread starting from the linked commet: How Qubes installation manages keyboard layout? - #25 by balko
- The unresolved layout switching issue is this one: `XKLAVIER_ALLOW_SECONDARY` property changed twice with a time gap, that breaks layout switching sometimes · Issue #8441 · QubesOS/qubes-issues · GitHub