Repository navigation
Clean up archived planning documents and receipts - #9635
Conversation
…che, 47-red triage, srv1 convergence, repo cleanup census Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017qPeVyc2VjbdN4os17UG3y
…AP, and every other doc Reference census: each basename grep'd across all tracked non-docs content and across docs/ itself; zero consumers. The srv1_residue_rehearsal receipt's path-string mentions are a host-disk snapshot, not consumers. docs/briefs loses 5 of 8 one-day lane briefs; docs/plans loses 15; the remainder await disposition in docs/plans/repo-stability-2026-08.md P4. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017qPeVyc2VjbdN4os17UG3y
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017qPeVyc2VjbdN4os17UG3y
tools/: all five persisted receipt/manifest files (m1c_bulk0_*, extdeps_scope census) removed per operator ruling — derived data is not committed; only .dag code to re-derive it belongs in tree. Their only in-tree mentions are path strings in the srv1_residue_rehearsal host-disk snapshot receipt. docs/plans: 33 files last touched 2026-06..08-14, off the live workstreams (v2 self-host, fabric, roadmap, namespace/import migration, scm, CI stability), and whose only references are the srv1 disk-snapshot strings, each other, or nothing. 112 further old off-topic plans are deferred because live carriers (roadmap_authority, dag plan carriers, cli_run.rs, lens modules) cite them; those need carrier-row edits, tracked in docs/plans/repo-stability-2026-08.md P4/P5. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017qPeVyc2VjbdN4os17UG3y
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017qPeVyc2VjbdN4os17UG3y
…ment dumps Operator ruling: derived data is never committed — only the .dag code to re-derive it. Verified no executing consumer: every in-tree mention of these paths is prose (annotations, note strings, the srv1 disk-snapshot rows, a roadmap handback sentence); nothing reads them at witness or compile time. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017qPeVyc2VjbdN4os17UG3y
…purge) All last touched 2026-06..08-14 and off the live workstreams (v2 self-host, fabric, roadmap, namespace/import migration, scm, CI stability). Citing comments and prose pointers in dag/src carriers are stripped in the follow-up commits; historical receipts (srv1 disk snapshot, roadmap acceptance history, digest-bearing fixtures) are left as-is since they describe past states. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017qPeVyc2VjbdN4os17UG3y
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: b39a3b98ff
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| @@ -1,197 +0,0 @@ | |||
| # Plan — algorithmic-cost reduction by construction (rewrite suboptimal patterns) | |||
There was a problem hiding this comment.
Retire the plan carrier before deleting its projection
Deleting this generated Markdown file alone leaves gunbc.plans.algebraic_rewrite_optimization.algebraic_rewrite_optimization_plan registered with PlanProjectsCommittedMarkdown. Consequently, gunbc.generated_artifact.committed_generated_artifacts() still requires docs/plans/algebraic-rewrite-optimization.md; the required generated-artifact drift phase will report it missing, and the heal path will regenerate it. Retire the plan carrier or change its projection in the same change so the deletion is stable.
Useful? React with 👍 / 👎.
| @@ -1,1088 +0,0 @@ | |||
| # Replacing GitHub Actions with the fabric: the plan | |||
There was a problem hiding this comment.
Remove deleted documents from the root registry
When the live-tree document witness runs, this deletion leaves gunbc.doc_graph_roots.hand_authored_doc_bind_incomings still registering fabric-ci-replacement as a PlanDoc root. The same mismatch exists for 31 other documents removed here, so doc_graph_registered_plan_roots_all_admitted observes fewer admitted files than registered roots. Remove or otherwise retire the corresponding HandAuthoredDocBind rows alongside the files.
Useful? React with 👍 / 👎.
| @@ -1,47 +0,0 @@ | |||
| # Affected-set differential falsifier + non-hermetic residue cadence | |||
There was a problem hiding this comment.
Repoint links before deleting the referenced plan
This file is still linked from the retained docs/plans/affected-set-precompute-pruning.md and docs/plans/live-read-witness-classification-design.md. Those links now resolve to a nonexistent working-tree path, breaking navigation for readers and adding dangling edges to doc_graph_dangling_link_count(), which is required to be zero by doc_graph_has_no_dangling_links. Remove, replace, or convert these references to an explicit historical location before deleting the target.
Useful? React with 👍 / 👎.
…iers to PlanIsAuthorityOnly cli_run.rs: main @ e910a39 (#9612) re-added the three shared-artifact wall-fill definitions that a231ccb (#9609) had already landed a minute earlier — duplicate fn/static definitions, E0428, so main's head does not build; its own CI runs are still queued behind the backlog. The second, byte-identical copies are removed. Plan carriers: every carrier whose committed markdown projection was deleted in this cleanup now declares PlanIsAuthorityOnly with the ruling, per the a295e17 precedent — the registry row is what made the deleted .md expected on disk, and flipping it is the modeled path that keeps the generated-artifact phase green without resurrecting the files. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017qPeVyc2VjbdN4os17UG3y
Comment-channel only (§4c: annotations never reach emission, so no mirror or projection drifts). String-field citations in roadmap_authority and stale plan carrier bodies are deferred to the roadmap/plans content refresh, where those rows are edited with their projections regenerated. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017qPeVyc2VjbdN4os17UG3y
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017qPeVyc2VjbdN4os17UG3y
… of the archived plan doc main's #9635 deleted docs/plans/spark-standup-program-accounting.md; this branch carried an 8-line edit to it. The deletion is taken rather than the edit restored: resurrecting a document removed on purpose would re-perform what that commit refused, and this branch's substance is its .dag changes, not the doc. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
… ignore reasons
Replaces gunbc.gitignore_model + gunbc.gitignore_authority (one nullary
variant per path, patterns restated in a central emit match — the shape
that let seven dead allowlist rows emit unnoticed) with a producer-owned
derivation:
- std.workspace_artifact: the agnostic shape — WorkspaceArtifact
{pattern, meaning, reason} with a closed IgnoreReason vocabulary, and
WorkspaceFootprint with CitedUpstream/RepoTool provenance.
- Each extdeps product declares its own footprint beside its citation
(cargo, cargo-tarpaulin, CPython/PEP 3147, npm, tmux, macOS Finder,
Windows Explorer, JetBrains, VS Code, Vim, Emacs, dotenv); repo-chosen
locations are parameters, so policy stays a workflow fact.
- gunbc.repo_workspace joins extdeps footprints with the repo's own
tools' declarations (each naming its owner module) — onboarding a
concept now naturally carries what files it introduces, what they
mean, and why they are untracked.
- gunbc.gitignore_emit becomes a pure renderer: it declares no pattern
of its own; the emitted file carries each pattern's reason and
meaning as comments. Generated-artifact rows remain a separate arm
derived from gunbc.generated_artifact commit policy.
- src/v1/runtime_rust.dag: align the emitted trace_mark doc comment
with the #9635 hand-edit of the generated v1_rt.rs mirror, restoring
regen first-generation equality (drift was masked on main by the
guarantee_rung_drop parse refusal).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CQPnTvxdvVjBLzjL6bcWVh
Main closed the v1_rt drift by restoring the mirror to the old docs/plans/ci-floor-fractal-gantt.md citation; this branch had moved the authority to 'ci-floor-fractal-gantt (plan doc deleted 2026-08-28)'. Both were internally consistent and disagreed. The deciding fact: the plan doc does not exist on the merged tree (#9635 deleted it; gunbc.plans.ci_floor_fractal_gantt is authority-only), so main's direction re-landed a citation to a nonexistent file — the §3 stale-citation class. The authority-side text survives the merge in runtime_rust.dag and its generator mirror; this installs the emitted v1_rt.rs so the pair agrees, verified by --required-regen on this tree. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CQPnTvxdvVjBLzjL6bcWVh
* Close the guarantee_rung_drop parse refusal and the generated-artifact drift the masked window accumulated - guarantee_rung_drop.dag: restore the missing closing brace on the wall_deadline GuaranteeStall record (#9612); the unparseable module refused the whole module index, so both required lanes died before any drift adjudication could run. - gitignore authority/model/emit: delete the seven hardcoded .py allowlist variants whose subjects the measurement bankruptcy and the plan-markdown cut deleted; drop the gate test fn that pinned those literal rows (a tree-copied oracle). - generated_artifact.dag: repoint the two stage0 generated .dag ArtifactLocation rows to dag/gunbc/stage0/, where #9637 moved the files; the registry still named the old directory. - Regenerate .gitignore, .gitattributes, and .githooks via generated_artifact_gate main_wet: .gitattributes drops the 41 merge-driver rows for plan markdowns #9635 deleted (verified by executing expected_gitattributes()); .gitignore drops the dead allowlist rows and gains the derived ignore rows for authority-only plan markdowns; hook headers pick up the post-reorg githooks/ module paths. - Delete dag/config/codegen_paths.dag: an orphan module no closure reaches, describing a layout that no longer exists. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CQPnTvxdvVjBLzjL6bcWVh * Remodel .gitignore: producer-declared workspace footprints with typed ignore reasons Replaces gunbc.gitignore_model + gunbc.gitignore_authority (one nullary variant per path, patterns restated in a central emit match — the shape that let seven dead allowlist rows emit unnoticed) with a producer-owned derivation: - std.workspace_artifact: the agnostic shape — WorkspaceArtifact {pattern, meaning, reason} with a closed IgnoreReason vocabulary, and WorkspaceFootprint with CitedUpstream/RepoTool provenance. - Each extdeps product declares its own footprint beside its citation (cargo, cargo-tarpaulin, CPython/PEP 3147, npm, tmux, macOS Finder, Windows Explorer, JetBrains, VS Code, Vim, Emacs, dotenv); repo-chosen locations are parameters, so policy stays a workflow fact. - gunbc.repo_workspace joins extdeps footprints with the repo's own tools' declarations (each naming its owner module) — onboarding a concept now naturally carries what files it introduces, what they mean, and why they are untracked. - gunbc.gitignore_emit becomes a pure renderer: it declares no pattern of its own; the emitted file carries each pattern's reason and meaning as comments. Generated-artifact rows remain a separate arm derived from gunbc.generated_artifact commit policy. - src/v1/runtime_rust.dag: align the emitted trace_mark doc comment with the #9635 hand-edit of the generated v1_rt.rs mirror, restoring regen first-generation equality (drift was masked on main by the guarantee_rung_drop parse refusal). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CQPnTvxdvVjBLzjL6bcWVh * Install the stage0 mirror for std.workspace_artifact The new module entered the v1 seed closure, so --required-regen refused with 'emitted surface has no committed mirror'; this installs the candidate the regen run produced (std_workspace_artifact.rs plus its lib.rs module line), unmodified. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CQPnTvxdvVjBLzjL6bcWVh * Install the regen-produced stage0 mirrors the remodel drifted --required-regen names four drifted surfaces, each a direct consequence of this branch's edits: extdeps_cargo.rs (cargo.dag gained its workspace footprint), v1_compiler_runtime_rust.rs and v1_rt.rs (the trace_mark doc comment realignment), and emitted_population.rs (the population gained std_workspace_artifact). All four installed from the regen candidate tree unmodified. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CQPnTvxdvVjBLzjL6bcWVh * Use concat, not append, for the cargo footprint list join The emitted v1_rt::append takes (list, one item) while the interpreter's append(list, items:) concatenates lists — cargo.dag is the first mirrored seed module to hit that divergence, so its emitted mirror failed to compile (E0308 at extdeps_cargo.rs:277). concat has the same list-concatenation meaning in both realizations. The regenerated mirror follows in the next commit once the fixed-point verification completes. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CQPnTvxdvVjBLzjL6bcWVh * Install the second-generation mirrors: concat-form extdeps_cargo, corrected v1_rt extdeps_cargo.rs is the regenerated mirror of the concat fix (compiles clean; verified by cargo locally). v1_rt.rs corrects a first-generation install in the previous mirror commit: that candidate was emitted by the pre-fix binary, so it reverted the trace_mark doc comment while the generator mirror in the same commit moved forward; this is the second generation's output, matching what the current generator emits. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CQPnTvxdvVjBLzjL6bcWVh * Port two masked-window main defects this branch unblocked CI into: frontier fixture exemptions, BMC demand-curve type error Both pre-date this branch and were invisible while #9612's parse refusal kept every required phase from running; this branch's head is the first to reach the declarations census and the floor's strict preparation, so they surfaced here. - declaration_index.rs FIXTURE_CARRIER_CITATION_EXEMPTIONS: #9607 re-pointed test.claim.annotation_carrier's planted rows at the deliberately-fictional test.fixture.frontier without updating the exemption roster. Add the four rows for the new deliberately-absent citations and delete the spent extdeps.network.mac row the census itself demands removed. - extdeps/bmc/pid_control_program.dag curve_points_agree: the output half compared a ZoneDemandValue where decimal_measures_agree declares a Measure; compare the ExactDecimal magnitudes directly (verified: the entry now compiles with 0 blocking diagnostics). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CQPnTvxdvVjBLzjL6bcWVh * Close the remaining eleven strict-preparation diagnostics blocking every PR's floor All landed on main inside the masked window (#9612's parse refusal kept the floor from typechecking anything); this branch is the first head to reach strict preparation, so they surface here. Seven are ported verbatim from #9646 (capacity_class on the training fixtures, value CustomerExecutableCapacity per that PR's model reading — it no-ops when that PR merges); four are fixed here: - source_integration_landing_spine: the Optional-receiver '|> map' at the additional-continuation arm becomes a match (the module's own idiom two arms up), and the module's unresolved-method frontier row in v1/04_infer.dag is deleted per the diagnostic's own prescription — the deficit fully dissolves, so the row must not keep its ground. - fabric_terminal_contract_witness_test: the positive-control receipt is bound as Receipt<NonEmptyStr> before the call, so the payload's P no longer infers String against the NonEmptyStr grant. - repository_convergence_placement: drop the primary_path argument; repository_converge_wet derives it internally and no longer declares the parameter. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CQPnTvxdvVjBLzjL6bcWVh * Resolve the three remaining audit leftovers: delete the import-strip dumps, register js_site's generated pages, keep the bound probe receipt - docs/plans/import-strip-measurement/ and import-strip-residual-ledger.tsv: deleted as unconsumed transcription per the measurement-bankruptcy principle (unconsumed transcription disappears; consumed evidence stays attached to its consumer). Neither is bound in gunbc.doc_graph_roots — the bound import-strip doc is a different, surviving plan markdown. The citing plan's prose now records the deletion. - dag/examples/js_site/generated/: the six committed generated files were produced by examples.js_site_emit and adjudicated by nothing. They are now JsSitePageArtifact rows in gunbc.generated_artifact (derived from the page roster, not hand-listed), located by js_site_emit's own path fns and generated through its pure per-page projections, so the generated-artifact drift phase adjudicates them like every other committed generated artifact. - docs/probes/leading_minus_continuation_silently_truncates_2026-08-23.md: no change, deliberately — gunbc.doc_graph_roots already binds it as consumed evidence under an operator ruling that reverted its deletion. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CQPnTvxdvVjBLzjL6bcWVh * Install the infer mirror for the frontier-row deletion; adjudicate js_site under the drift gate - src/v1/stage0/src/v1_compiler_infer.rs: regenerated mirror of the 04_infer.dag frontier-row deletion; --required-regen reports first_generation_equal=true on this tree after one rebuild, and the landing_spine entry now compiles with 0 blocking diagnostics. - generated_artifact_emit: the extra-validation match gains its JsSitePageArtifact arm (main_wet's fail-closed non-exhaustive refusal caught the omission). - .gitattributes: regenerated; the six js_site pages join the derived merge-driver population. main_wet regenerates the pages byte-identical to what was committed, so registration changes no page content. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CQPnTvxdvVjBLzjL6bcWVh * Converge v1_rt on the authority's citation text after the merge of main Main closed the v1_rt drift by restoring the mirror to the old docs/plans/ci-floor-fractal-gantt.md citation; this branch had moved the authority to 'ci-floor-fractal-gantt (plan doc deleted 2026-08-28)'. Both were internally consistent and disagreed. The deciding fact: the plan doc does not exist on the merged tree (#9635 deleted it; gunbc.plans.ci_floor_fractal_gantt is authority-only), so main's direction re-landed a citation to a nonexistent file — the §3 stale-citation class. The authority-side text survives the merge in runtime_rust.dag and its generator mirror; this installs the emitted v1_rt.rs so the pair agrees, verified by --required-regen on this tree. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CQPnTvxdvVjBLzjL6bcWVh --------- Co-authored-by: Claude <noreply@anthropic.com>
The host-converge-inventory path was absent only by #9635 history. Pin admission against missing-file-slug, the same construction-absent specimen as the PlanIsAuthorityOnly witness, and join it through a synthetic HandAuthoredDocBind's derived path. Co-authored-by: Cursor <cursoragent@cursor.com>
* Retarget fleet-state-frontier off a deleted plan slug. Co-authored-by: Cursor <cursoragent@cursor.com> #9635 removed docs/plans/host-converge-inventory.md while ROADMAP and a HandAuthoredDocBind still named it. Gate those nodes on gunbc.host_converge, drop the bind, and refuse PlanIsAuthorityOnly rows as doc-graph extra roots. * Use a synthetic missing-file slug for the extra-root RED. The host-converge-inventory path was absent only by #9635 history. Pin admission against missing-file-slug, the same construction-absent specimen as the PlanIsAuthorityOnly witness, and join it through a synthetic HandAuthoredDocBind's derived path. Co-authored-by: Cursor <cursoragent@cursor.com> --------- Co-authored-by: gunbc-ci-auto-heal <gunbc-ci-auto-heal@users.noreply.github.com> Co-authored-by: Cursor <cursoragent@cursor.com>
Remove a large collection of archived planning documents, design notes, measurement receipts, and investigation logs that have reached their end-of-life. These materials document completed work, superseded designs, and historical measurements that are no longer active references.
Removed categories:
src/v2/experimental/directory and associated tooling receiptsRationale:
These documents served their purpose during active development phases but are no longer referenced in current work. Removing them reduces noise in the repository's planning layer and clarifies which documents remain as active design authority (those retained in
docs/plans/anddocs/briefs/).The removal preserves git history — all content remains accessible via
git logfor historical reference while decluttering the working tree.https://claude.ai/code/session_017qPeVyc2VjbdN4os17UG3y