Repository navigation
docs/plans: edge-(b) rust-test↔consumed-.dag provenance brief (the §1 coverage keystone) - #5526
Merged
Merged
Conversation
…he 3× fleet-red) Pins the 3× fleet-red to stale-green (PR validated against a pre-gate base, merged without re-validating current main) via the #5429 timeline receipts; ranks the merge-policy fixes (merge-queue >> require-up-to-date under the approval outage); scopes neat-ibex's reverse-staleness lens as complementary, not the 3×-red killer. Decision record for the operator's merge-policy call. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…e (the §1 coverage keystone) Scoping artifact for the operator greenlight call. One declared fact (rust-test→ consumed-.dag closure on the existing NodeArtifactProvenance carrier) read in two directions: FIRE-when-consumed (coverage wall, fail-closed) and SKIP-when-unaffected (affordability selector) — DESIGN §4 one grammar both directions. Shared testgen-reflection blocker; first vertical slice; honest multi-day estimate. Build HELD for operator nod; decoupled from #5427. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…try (closure ⊇ reads) bright-stag's load-bearing sharpening: coverage (fire-on-change) is fail-OPEN to under-declaration (declaration drift re-opens the .dag→rust hole), while affordability (skip) is fail-safe to over-declaration. So (1) the completeness lens must check closure ⊇ actual-.dag-reads (CORRECTNESS), not mere presence — presence is the §5 faked-cache-key trap; (2) structural closure discovery IS the soundness, not optional polish — a hand-authored closure is the §3/§5 fork that silently re-opens the hole; (3) slice-1 must state whether its closure is structurally derived (proves the wall) or hand-listed (proves only the wiring). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…ge item (doc reachability) The new docs/plans/edge-b-rust-dag-provenance-brief.md was an orphan doc → the floor witness doc_graph_has_no_orphan_docs (dsl/test/claim/doc_reachability_witness_test.dag) RED on #5526. Fix per the rule (every docs/**/*.md reachable from a ROADMAP/DESIGN root): add a terse pointer on the existing §1 rust-gate-coverage line, its correct semantic home — edge-(b) is the .dag→rust coverage wall that #5427 (the .rs-hole-closer) does not close. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
… refinement)
Per the operator short-lines rule (bright-stag enforces): move the mechanism density
(rust-test↔consumed-.dag closure, fail-closed both directions) into the brief; keep the
ROADMAP line a short scannable summary + pointer + explicit no-overclaim status
('SCOPED / pending operator greenlight'). Build is NOT greenlit; the line now says so.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
briansrls
added a commit
that referenced
this pull request
Jun 22, 2026
…ak (per-job placement divisor) (#5574) * WIP: ci is slow investiation * docs/plans: ci-merge-freshness decision record (stale-green root of the 3× fleet-red) Pins the 3× fleet-red to stale-green (PR validated against a pre-gate base, merged without re-validating current main) via the #5429 timeline receipts; ranks the merge-policy fixes (merge-queue >> require-up-to-date under the approval outage); scopes neat-ibex's reverse-staleness lens as complementary, not the 3×-red killer. Decision record for the operator's merge-policy call. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * docs/plans: scoped edge-(b) brief — rust-test↔consumed-.dag provenance (the §1 coverage keystone) Scoping artifact for the operator greenlight call. One declared fact (rust-test→ consumed-.dag closure on the existing NodeArtifactProvenance carrier) read in two directions: FIRE-when-consumed (coverage wall, fail-closed) and SKIP-when-unaffected (affordability selector) — DESIGN §4 one grammar both directions. Shared testgen-reflection blocker; first vertical slice; honest multi-day estimate. Build HELD for operator nod; decoupled from #5427. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * docs/plans: edge-(b) brief — fold in the coverage-completeness asymmetry (closure ⊇ reads) bright-stag's load-bearing sharpening: coverage (fire-on-change) is fail-OPEN to under-declaration (declaration drift re-opens the .dag→rust hole), while affordability (skip) is fail-safe to over-declaration. So (1) the completeness lens must check closure ⊇ actual-.dag-reads (CORRECTNESS), not mere presence — presence is the §5 faked-cache-key trap; (2) structural closure discovery IS the soundness, not optional polish — a hand-authored closure is the §3/§5 fork that silently re-opens the hole; (3) slice-1 must state whether its closure is structurally derived (proves the wall) or hand-listed (proves only the wiring). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * ROADMAP: anchor the edge-(b) keystone brief from the rust-gate-coverage item (doc reachability) The new docs/plans/edge-b-rust-dag-provenance-brief.md was an orphan doc → the floor witness doc_graph_has_no_orphan_docs (dsl/test/claim/doc_reachability_witness_test.dag) RED on #5526. Fix per the rule (every docs/**/*.md reachable from a ROADMAP/DESIGN root): add a terse pointer on the existing §1 rust-gate-coverage line, its correct semantic home — edge-(b) is the .dag→rust coverage wall that #5427 (the .rs-hole-closer) does not close. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * ROADMAP: trim edge-(b) line 36 to short summary + status (bright-stag refinement) Per the operator short-lines rule (bright-stag enforces): move the mechanism density (rust-test↔consumed-.dag closure, fail-closed both directions) into the brief; keep the ROADMAP line a short scannable summary + pointer + explicit no-overclaim status ('SCOPED / pending operator greenlight'). Build is NOT greenlit; the line now says so. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * WIP: ci is slow investiation * fmt: rustfmt the cgroup-peak measurement additions (claim_executor) The hand-written binding_cap_cgroup_dir / cgroup_peak_pids_at_binding_ancestor / sccache_server_cgroup_rel helpers were not rustfmt-clean; this only reflows them. No logic change. Fixes the rust_tests fmt failure on the held draft #5564. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * CI measurement: rust_tests-job leaf cgroup peak + --measure-cgroup-peak (per-job placement divisor) Second half of the whole-tree CI memory measurement (companion to #5564's ci-job emit): a claim_executor --measure-cgroup-peak standalone mode + a rust_tests-job ci.yml step that calls it, so the rust_tests job (the binding ~16-23 GiB per-job constraint, measured live on srv1) emits its own cgroup peak. Corrects #5564's cap-ancestor read for the real fleet. Live srv1 inspection (operator-granted) shows the runner units run MemoryMax=infinity (UNCAPPED), so binding_cap_cgroup_dir returns None and the cap-ancestor read emits "unavailable". The measurement now reads memory.peak at the LEAF runner cgroup (the ephemeral per-job cgroup, always present) and reports capped-vs-uncapped + host MemTotal. One walk, all reads (single authority): the emit line carries memory.peak (usage) + memory.max (budget, =uncapped on the fleet) + host_ram + pids.current/max + the sccache server cgroup classified descendant-vs-sibling (the "accounted exactly once" decision) — consumed by the compile-jobs divisor (#5546) and the placement model (#5559). Stacked on #5564 (reuses its binding_cap_cgroup_dir / sccache scan). ci.yml regenerated via main_wet; drift gate green; fmt + clippy -D warnings + release build clean; --measure-cgroup-peak verified by execution. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * Review fix (#5574): path-component prefix for sccache descendant check claude-opus-4-7 flagged that sccache_under_leaf used a bare string prefix, so a sibling like <leaf>-other.service would misclassify as a descendant (under-counts host_fixed_overhead — the fail-OPEN direction). Compare on path components: leaf itself, or a strict <leaf>/ prefix. Comment updated to match. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> --------- Co-authored-by: Brian Searls <briansrls@gunb.ai> Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Scoping artifact for the edge-(b) keystone — the §1 coverage wall. One declared structural fact (rust-test → consumed-.dag closure on the existing NodeArtifactProvenance carrier) read in two directions: FIRE-when-consumed (coverage, fail-closed) and SKIP-when-unaffected (affordability selector) — DESIGN §4 one grammar both directions, three consumers one moat (coverage wall + affordability selector + testgen reflection).
Docs-only (one file under docs/plans/). Records the bounded core, the coverage-completeness asymmetry (closure ⊇ actual-reads — coverage is fail-OPEN to under-declaration, so the completeness lens checks correctness not presence, and structural closure discovery IS the soundness not optional polish), the shared testgen-reflection blocker, an honest multi-day estimate, and the smallest first vertical slice.
The BUILD itself is held for the operator's explicit greenlight (carried by bright-stag with a GO recommendation); this PR lands only the plan doc as the canonical docs/plans/ reference. Decoupled from #5427.
— sent from quick-ant-298