cloud-init preseeds

I am trying to find the right way to apply a default series of steps to all deployed Ubuntu systems. I would like these to execute for both disk- and memory-deployed systems. I’ve identified preseeding as the correct way to do this but am struggling on file naming and understanding precedence. The documentation at Machine customization - MAAS documentation describes preseeding via curtin and cloud-init with a lexical match example, but I’m trying to determine a few things:

  1. Do curtin preseeds apply to systems deployed as ephemeral? My testing seems to indicate no, but I wanted to confirm that.
  2. How is lexical matching performed? Is it simply a series of slugs matched in any order, where a template with more matched slugs wins (e.g. ubuntu_amd64_xenial is used over ubuntu_amd64_generic), or are all that match at all applied in an order? The documentation states that they are matched in order from most-specific to generic fallbacks, then states that this lets you override behavior per OS. Does this imply that multiple templates can be applied if matched, and that the most-specific (e.g. the xenial example) would be applied before the generic ubuntu preseed?
  3. Is cloud-init capable of being applied globally via the preseeds directory, or is that expected to be per-instance deployment? If my assumption about curtin not applying to ephemeral deployments is correct, I would need to use cloud-init to achieve this outcome.

Appreciate any input!

I’m running MAAS 3.7.2 and all testing was conducted there.