What gets generated
Per template and choice, one application circuit whose single public is
app_context_root, whose body opens the context, checks
controllers ⊆ tx.actors(), evaluates the choice, asserts the Verdict,
and asserts that Effects equal the created slots of the context. Per
program: program.json (templates, method VK hashes, methods_vk_root,
schemas, assert ids), the Rust and TypeScript clients (record types,
envelope codecs, fragment builders, manifest rendering), and the scenario
runner.
The division of labor is as in Weld spec §5.10: Noir comptime handles
template schemas, stakeholder roles, Effects typing, and assert
extraction; the CLI emits packages and manifests.