Skip to content

feat: capability first routing, judgment authorship, failure kind telemetry (0.0.40) - #39

Merged
okisdev merged 6 commits into
mainfrom
release/0.0.40-capability-first-routing
Jul 26, 2026
Merged

feat: capability first routing, judgment authorship, failure kind telemetry (0.0.40)#39
okisdev merged 6 commits into
mainfrom
release/0.0.40-capability-first-routing

Conversation

@okisdev

@okisdev okisdev commented Jul 26, 2026

Copy link
Copy Markdown
Owner

summary

  • routing becomes capability first: packages route by their load bearing capability instead of surface task type, capability monopolies hard route (X and live platform reads to grok live-web, Claude tool surface and privacy to Claude workers, judgment dense authorship to the main session), grounded in a same day controlled probe where grok web_fetch returned a full x.com post body while the codex web surface returned empty HTML for the same URL
  • the orchestration policy gains a judgment dense authorship section: deliverables whose faithful brief would equal the deliverable itself are authored in the main session as control plane work, design intent travels to peers as contract (exemplar files, MUST NOT gates, signatures) rather than prose, and lane acceptance rates are never read as taste evidence
  • judgment shaped rejections become measurable end to end: /fusion:stats --record gains --failure-kind / --failure-kind-for (rejected only, intent_override, scope_rewrite, wrong_approach, style_mismatch), the bridge forwards the kind to both companions, worker records persist acceptanceFailureKind, and the brief envelope accepts package-type: design
  • bench task T09-style-fidelity lands: six machine checkable style gates that deliberately conflict with model defaults, a style checker independent of the hidden behavior tests, and a mutant that passes every behavior test while violating only the contract, so the verifier isolates externally imposed style fidelity from output quality

breaking changes

  • both companions' record-acceptance now requires --reason for a rejected verdict (previously optional at the engine layer); direct scripted callers must pass it, /fusion:stats --record already enforced it

test plan

already verified

  • npm test -> 985 tests: 965 pass, 1 skip, 19 fails all in tests/breaker-check.test.mjs and identical on a clean HEAD worktree (pre-existing hermeticity leak reading live breaker state, ledger item; CI has no live home state)
  • node --test tests/fusion-stats.test.mjs tests/fusion-worker-state.test.mjs tests/fusion-worker-lifecycle.test.mjs tests/fusion-raw-args-transport.test.mjs -> 230/230
  • node --test tests/codex-companion.test.mjs tests/codex-state.test.mjs tests/grok-record-acceptance.test.mjs tests/failure-kinds.test.mjs -> 154/154
  • node --test tests/routing-policy.test.mjs tests/rules-sync.test.mjs tests/verified-versions.test.mjs -> 23/23 with zero assertion edits (the policy rewrite kept every pinned sentence)
  • node bench/manifest.mjs --check -> up to date; bash bench/tasks/T09-style-fidelity/selftest.sh -> mutant rejected on style gates only, solution passes, PASS

reviewer should verify

  • bash bench/tasks/T09-style-fidelity/selftest.sh and confirm the mutant leg fails with style diagnostics only (async or await, comment, new Error lines) while the behavior tests above them pass

notes

  • x_search stays unwired: grok CLI 0.2.112 carries it on the agent profile surface, not the --tools registry; documented in docs/grok-contract.md with the probe evidence
  • docs/codex-contract.md still names the removed --record-acceptance stats form in a pre-existing paragraph; queued for the next docs touch

@okisdev
okisdev merged commit 134f1df into main Jul 26, 2026
10 of 11 checks passed
@okisdev
okisdev deleted the release/0.0.40-capability-first-routing branch July 26, 2026 14:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant