Bundle / Bundle and Submodel

What it does not change

  • State and transitions. model.work is an ordinary field, and a GotWorkMessage goes through the parent's update like any other Message. The package's parity test runs one Message script through a placement and through the same child wired by hand with Foldkit's lifts, and requires the same Models, Command Messages and Subscription dependencies at every step (test/parity.test.ts).
  • Tooling. DevTools, replay and Scene tests see a placement as the Submodel it compiles to: Update.foldChildStep for update, Update.foldChildInit for init, Subscription.lift, ManagedResource.lift and h.submodel.
  • What it costs. One more package and one more concept. For a child used once, with nothing to forget, the hand wiring is short and plain, and that is fine (below).