Coding 2023-11-09
Hm. It turns out that things aren't quite as easy as switching to Invocation, because there are various pieces of data that have to get passed around and worked with. Like, however you create a Cmd task, doing so requires four pieces of information:
- the arguments
- the environment
- the implicit artifacts
- the failure codes that shouldn't abort
I've got a sense for how this should all fit together with some of the high-level stuff, but I'm not confident in my gut feelings here. Those gut feelings are:
- arguments + environment -> invocation; this is known
- invocation + implicit -> ???; this type would convert failure codes to facts
- ??? + installer mapping -> ????; this type would downconvert to a ??? suitable for the above; this type (modulo layout) is currently called Metadata, but, no.
I think I need to let this percolate for a bit, and I do have some other things to focus on in the meantime, so let's do that...
Good night.