joule-code does not compile against main. `jcp-schema`'s Grant gained
`budget_funds` (dual ceilings) and `caveats` (§4.9), and three Grant literals in
joule-code-jcp and joule-code-conformance were never updated, so the whole
workspace fails with E0063.
This is the SAME break already repaired in sandbox-jcp, in a second workspace I
missed. The cause is structural, not incidental: `jcp-schema` is path-depended on
from at least three OTHER cargo workspaces —
sandbox/sandbox-rs → ../../../../jcp/jcp-rs/crates/jcp-schema
joule-code/… → ../../../../jcp/jcp-rs/crates/jcp-schema
jouledesk/… → ../../../../jcp/jcp-rs/crates/jcp-schema
— and none of them is in jcp's workspace, so `cargo test --workspace` inside
jcp/jcp-rs is green while three sibling workspaces are broken. Adding a required
field to a shared schema type silently breaks every consumer outside the
workspace that CI and local verification actually build.
Surveyed all four jcp-consuming workspaces rather than guessing: joule-code was
broken (2 errors), jouledesk imports the types but constructs no Grant literal,
sandbox was already repaired, jcp itself green. Only joule-code needed the fix.
Two of the three literals took the patch mechanically; the third used FIELD
SHORTHAND (`budget_uj,` with no colon) and escaped a `budget_uj:` pattern — the
same shorthand that escaped this same class of patch twice earlier. Worth
remembering: shorthand initializers are invisible to `field:`-shaped searches.
39 joule-code suites green; all four workspaces now compile.
Co-Authored-By: Claude Opus 4.8 <[email protected]>