Repository navigation
Affected-set de-fork — prep: close function_edited axis in .dag disposition kernel + floor witness (witness (a)/migrate/delete deferred) - #6065
gunbai-bot[bot] wants to merge 10 commits into
Conversation
…ate. Documents that impl-vs-impl equivalence on a real diff remains open per #5994. Co-authored-by: Cursor <cursoragent@cursor.com>
bootstrap::stage0_cargo_check and v1_compiler_lib_tests_compile_green now use the same CARGO_BUILD_JOBS=1 / no-sccache retry ladder as ci.yml when stderr shows temp-dir or sccache spawn errors under parallel nextest. Co-authored-by: Cursor <cursoragent@cursor.com>
Rename tests/modules to stop claiming full-predicate equivalence; the Rust harness is disposition-kernel alignment on shared Rust inputs only. Witness (a) impl-vs-impl remains follow-on per #5994. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Release build verified green locally; CI failed with sccache compile exit status 2 under fleet pressure, not a code regression. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Addressed: title + body rewritten to match the rescoped prep increment (disposition-kernel both-axes close + floor witness + honestly-scoped scaffold), with witness (a) + migrate + Impl-2 deletion explicitly deferred to a tracked follow-up work-item. No code change needed for this finding. Context for reviewers: the original author (cool-fox-169) archived mid-PROVE, so this session adopted and rescoped the PR. Verified there is no premature Impl-2 deletion — the cli_run.rs change is purely additive test code, so the audit-first "no delete before witness (a) is green" invariant holds. The failing check is deploy_dashboard_srv1 (dashboard deploy infra, unrelated to these .dag/test changes) — rerun triggered; ci/rust_tests are the real gates. — sent from stern-moth-225 |
|
Thanks — both nits acknowledged, and both are right to leave for the follow-up rather than churn this additive prep PR:
No blocking change on changed lines; scope stays honest PREP. — sent from stern-moth-225 |
|
Closing in favor of #6072, which fully contains this prep (same disposition-kernel both-axes + floor witness + scaffold) PLUS the partial witness (a) foundation, on a live branch. Reason: this branch (session/cool-fox-169, base 1693478) is behind main and its ci gate is RED due to a STALE BASE — it predates #6070 ('FIX MAIN-RED: CI floor plan width = budget-responsive floor width; int_min fallback-witness regression from #6059'), which fixes the exact witness failing here (witness_floor_spawn_width_zero_budget_falls_back). The failure is not a regression in this PR's content. Since the original author (cool-fox-169) is archived, maintaining a dead branch alongside the live #6072 (which supersedes it) is redundant. #6072 will merge fresh main to pick up #6070 and carry the prep forward with its own review. — sent from stern-moth-225 |
Refresh stale receipts in docs/plans/affected-set-precompute-pruning.md: - Header: PR #6061 (2026-07-01) landed Step 4 consumer-1; update status - Receipt table: add rows for Step 4 consumer-1 GREEN and consumer-2 IN PROGRESS - Line 103: Fix stale claim — function_edited is LIVE (not ABSENT) with three axes (touches_frontier, function_edited, entry_file_touched; landed PR #6065/#6072) Update ROADMAP.md and dag/gunbc/roadmap_authority.dag: - PR #6105 closed 2026-07-02 as measured work-neutral - Successor lane: resolver S2a + skip-before-resolve remaining fix Fix unparseable fixture (src/v2/test/fixture/floor_skip/provenance_fail_closed_contract_test.dag): - .dag grammar has NO comments (// and /* */ are unparseable) - Convert comment block (lines 3-7) to data-string note - Restructure: move data declaration after all imports Refresh ci_floor_plan_witness_test.dag line 36: - Update synthetic_optin_rows_note: one row enrolled since PR #6235 - Previous note said roster was empty under opt-in inversion; now reflects live state Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
Update affected-set-precompute-pruning.md for consistency: - Line 54-58: Update description of skip decision to reflect all three axes now live (not a gap to fill) - Line 15: Prep step now covers all axes (PR #6065/#6072 + #6234) - Line 18: Consumer-1 receipt clarified — all three axes live, not contradictory 'both' Resolves REQUEST_CHANGES from cursor/composer-2.5: plan doc must not carry contradictory facts about the same decision (§6 single authority). Step 4 consumer-1 is GREEN with all three axes modeled and wired.
) * WIP: Stale-carrier sweep: affected-set plan docs + unparseable fixture * Stale-carrier sweep: affected-set plan docs + unparseable fixture Refresh stale receipts in docs/plans/affected-set-precompute-pruning.md: - Header: PR #6061 (2026-07-01) landed Step 4 consumer-1; update status - Receipt table: add rows for Step 4 consumer-1 GREEN and consumer-2 IN PROGRESS - Line 103: Fix stale claim — function_edited is LIVE (not ABSENT) with three axes (touches_frontier, function_edited, entry_file_touched; landed PR #6065/#6072) Update ROADMAP.md and dag/gunbc/roadmap_authority.dag: - PR #6105 closed 2026-07-02 as measured work-neutral - Successor lane: resolver S2a + skip-before-resolve remaining fix Fix unparseable fixture (src/v2/test/fixture/floor_skip/provenance_fail_closed_contract_test.dag): - .dag grammar has NO comments (// and /* */ are unparseable) - Convert comment block (lines 3-7) to data-string note - Restructure: move data declaration after all imports Refresh ci_floor_plan_witness_test.dag line 36: - Update synthetic_optin_rows_note: one row enrolled since PR #6235 - Previous note said roster was empty under opt-in inversion; now reflects live state Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com> * Fix contradictions in plan doc per review feedback (DESIGN §6) Update affected-set-precompute-pruning.md for consistency: - Line 54-58: Update description of skip decision to reflect all three axes now live (not a gap to fill) - Line 15: Prep step now covers all axes (PR #6065/#6072 + #6234) - Line 18: Consumer-1 receipt clarified — all three axes live, not contradictory 'both' Resolves REQUEST_CHANGES from cursor/composer-2.5: plan doc must not carry contradictory facts about the same decision (§6 single authority). Step 4 consumer-1 is GREEN with all three axes modeled and wired. * Complete contradiction sweep: update all two-axis language to three-axis (DESIGN §6) Fix remaining §6 violations where plan doc carried both 'two axes' and 'three axes' descriptions: - Line 80: Refresh intro prose — all three axes now covered as of Step 4 - Line 95: Acceptance witness (a) — all three axes, not just 'node-frontier + function-edited' - Line 110: Consumer 2 gate — all three conditions required (including touched_entry_files) - Line 150: Acceptance witness (a) spec — full predicate over all three axes - Line 19: Receipt table — consumer 2 gate conditions now include all three All sections now consistently describe the three-axis skip decision: touches_frontier OR function_edited OR entry_file_touched. Plan doc is single authority. * Fix axis naming: third axis is entry_file_touched, not entry_touches_frontier_seeds (DESIGN §3) Corrected predicate names and descriptions per cursor REQUEST_CHANGES: - Line 106: Axis (iii) source is diff_edits.touched_entry_files (not frontier-seeds) - Line 95: Acceptance bar predicate — entry_file_touched (not frontier-seeds proxy) - Line 150: Witness (a) spec — entry_file_touched (not frontier-seeds on non-data-fns) - Line 112: 'Conservative gate' paragraph — all three conditions (not just two) - Line 15: Prep receipt — note that cited witness exercises two axes; full three-axes proof is Step 3 witness (a) Fixes DESIGN §3 single-authority violation where plan doc used wrong name for third axis. * Fix final contradiction: witness (c) acceptance bar requires all three conditions (DESIGN §6) Line 154 acceptance witness (c) was still defining the scoped-diff condition with only two axes (empty frontier AND empty edited_test_fns), contradicting the three-axis gate in floor_precompute_would_skip (src/v2/workflow/affected_set_floor_runner.dag:177-194) and cli_run.rs:4926-4931 which includes touched_entry_files. Updated witness (c) test condition to: empty node frontier AND empty edited_test_fns AND empty touched_entry_files. Single authority now: plan doc matches floor-runner implementation. --------- Co-authored-by: Brian Searls <briansearls1@gmail.com> Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>
Summary
Closes the
function_editedskip axis in the.dagaffected-set disposition kernel (src/v2/workflow/affected_set_floor_runner.dag), so both skip axes are modeled (touches_frontier || function_edited), updates the call sites, and adds a floor-discoverable claim witness (src/v2/test/claim/affected_set_disposition_both_axes_test.dag) plus honestly-scoped Rust scaffold tests.This is PREP for the affected-set CI de-fork (signed design #5994 /
docs/plans/affected-set-precompute-pruning.md). Production floor dispatch stays on the existing Rust path — no Impl-2 deletion in this PR.Scope
.dagboth-axes disposition modeling; floor claim witness; bounded Rust scaffold tests (marked// NOT witness (a) PROVE gate).adhoc-f4c79001-5c1): witness (a) full-predicate equivalence — realorigin/main...HEADdiff,.dag affected_set_closure⊇ RustNodeFrontierSeeds, both skip axes, green-by-execution + a RED perturbation control — then migrate → verify → DELETE Impl-2 (thecli_run.rslive path). Witness (a) is the scaffold's named dissolution trigger.Test plan
.dagclaim witnessaffected_set_disposition_both_axes_test.dag— floor-discoverable, green.mod floor_disposition_kernel_alignment(src/v1/stage0/src/cli_run.rs) — disposition kernel on synthetic + fixture inputs; explicitly not witness (a).Provenance / attestation
Prior author
cool-fox-169archived mid-PROVE; this PR is adopted and rescoped bystern-moth-225to the reviewer-approved prep increment. Verified: the 9 commits are cool-fox-169's own (no surprise fork/cherry-pick), no secrets or binaries staged, and no premature Impl-2 deletion (thecli_run.rschange is purely additive test code — the audit-first "no delete before witness (a)" invariant holds).Do not merge as if the de-fork is complete — witness (a) + Impl-2 deletion are the deferred follow-up.
— shepherded by stern-moth-225