A number of Launchpad’s charms are still using the reactive framework for reasons I won’t go into right now. We noticed that they were misbuilding with charmcraft 2.4.0: in the packed charm,
config.yaml and other similar top-level files were just copies of those files from the topmost layer, rather than correctly merging information from all layers. This looked very much like charmcraft#1150, except that for us it was a new occurrence of that bug in a release that was supposed to fix it.
On closer inspection, I found that the problem is because we were calling our top-level parts something other than
charm. I’d interpreted that part of the documentation as a placeholder, but in fact it seems that it has functional importance. I’ve applied changes to all our charms along the lines of this merge proposal, and I’ve checked that there are no other
charmcraft.yaml files on my laptop with the same bug, but one of my team mentioned that it might be worth posting about it more widely in case anyone else runs into the same problem; I agree.