docs: build orchestrator code trace - #194
Conversation
A line-level trace of build-gate/build-orchestrator.mjs: the phase machine in buildProject, the makeTeamDispatch worker adapter, the ephemeral keyring, the execution half it reaches in merkle-dag, test coverage per behaviour, six findings (ok-vs-certified, triple test execution, stale docstring, dead lifecycle branches, unguarded runBuild refusal, capability packets never supplied), and the file's commit lineage. Verified on main at 0c9b539 with the orchestrator suites and the full build-gate npm test green. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JrjwsLBYk3FcnkneUTqqkQ
|
CI status on
This is not this PR's failure: the diff is one Markdown file under I have re-run the failed job once. If it stays red, this PR is waiting only on that secret. Generated by Claude Code |
|
Follow-up on the Third attempt at 00:35 UTC (one hour after the first two) failed identically: So this is not a missing vault entry and, given the hour's gap and the failure on a fresh PR, unlikely to be a transient usage cap. The remaining cause is the OAuth token itself (expired or revoked). Fix, for a repo admin: run Everything else on this PR is green and mergeable. Generated by Claude Code |
|
Resolved. After the Generated by Claude Code |
Bring the per-node verify stage up to date with main (079e77e), which now carries #193 (repo code trace + keyless evidence fixes), #196 (gate verdict surfacing + runBuild refusals as phased results, F1/F5), and #194 (trace docs). build-orchestrator.mjs auto-merges cleanly: the verify-stage changes and the F1/F5 changes touch different regions. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013rxfYqddLk2NykrPkjy1Pr
What
Adds
docs/build-orchestrator-trace.md: a line-level trace ofbuild-gate/build-orchestrator.mjsonmainat0c9b539. It is the deep companion to §3.1 of the repository code trace in #193.Contents:
proposal-orchestrator.mjs).buildProjectphase by phase with line numbers: what each phase returns, what is on disk when it exits, and which module re-derives each trusted input.makeTeamDispatchstep by step (routing by id, declared-file clamp, re-resolve aftermkdirSync, inner adaptation loop,respechand-up) with a table of which test covers which behaviour and which branches are uncovered.makeTeamKeyringand the execution half it reaches inmerkle-dag/orchestrate.mjsandledger-gate.mjs.ok:truedoes not mean certified. In legacy advisory modebuildProjectreturnsok:truewhilecouncil.certified === false.:141is stale (missingsituation, pre-reorder order).councilContext/gateSourcebranches at:192-197are dead (same as F7 in docs: repository code trace + fix the keyless evidence scripts broken by signed-by-default (F1, F1b) #193).runBuildrefusal (PLAN_TAMPERED,MUTATE_FAILED, …) would throw aTypeErrorat:223instead of returning a phased result; the lifecycle path guards this atproposal-orchestrator.mjs:316.Documentation only. No code, contracts, or governance records change.
Checklist
.telos/artifacts, secrets,.env*, or*.pemfiles committedTest results
Node 22.22.2, on
mainat0c9b539(the doc adds no code, these verify the claims in it):node --check build-gate/build-orchestrator.mjs-> oknode build-gate/scripts/test-build-orchestrator.mjs-> 13 cases OKnode build-gate/scripts/test-runtime-adaptation.mjs-> OKcd build-gate && npm test-> exit 0 (runsbreakouttoo)ok:true,certified:false,safe_next_action: advisory-only-NOT-certified-do-not-merge, node test executed 3 times🤖 Generated with Claude Code
https://claude.ai/code/session_01JrjwsLBYk3FcnkneUTqqkQ
Generated by Claude Code