Learn / Wiring
Failure and recovery
| Failure | Where it surfaces |
|---|---|
| Two items share a key | assemble throws, naming the key |
Two items handle one tag (not shared) | assemble throws, naming both |
| Two items use one Managed Resource tag | assemble/resources throws |
| Config built by hand instead of derived | complete type error at the property |
| A wiring deleted from the list | Silent; caught by behavior (transcript, dispatch tests) |
A route that returns None for its own values | Silent drop; the parity tests each package carries exist for this |
Recovery is re-derivation: the assembly output is disposable — rebuild it from the list and the error names the line that is wrong.