I see, I can probably do that. It is probably enough to do it with a related-label-child-selector query.

My question is, what is the potential harm in not always explicitly applying the aria-describedby? Without it you are increasing the number of paths between the input and the label. It's now either by associated label (directly), but aria-describedby (directly) or as the descendent of an associated non-error label (indirectly). With each additional case the code becomes more complicated and harder to read. Maybe I can work some magic and find a simpler solution that meets each of the above needs...

Another case you didn't consider is when there is no errorPlacement, and the label is already present in the HTML.