Skip to content

Provenance ingest at CI floor runtime: make v2.lens.affected_set node-closure LIVE during the floor pass (host_source_root_ingest_manifest currently Empty) so node-level pruning replaces the Rust diff->declaration / node-touch bridge — the blocker for Step 5 full-deletion in docs/plans/affected-set- - #6069

Closed
gunbai-bot[bot] wants to merge 34 commits into
mainfrom
session/quick-carp-343

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Jul 1, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Make v2.lens.affected_set node-closure live during the CI floor skip pass by populating host_source_root_ingest_manifest at runtime instead of leaving the committed stub Empty.

  • .dag: add affected_set_reading_for_entry_root, floor_provenance_ingest_is_live, floor_rerun_frontier_from_edit_loci, and floor_rerun_frontier_from_provenance in affected_set_floor_runner.dag.
  • Rust (cli_run.rs): on floor skip with a non-empty diff, emit a diff-scoped ephemeral ingest manifest overlay (prepended to source roots), evaluate rerun frontier via the .dag closure when ingest is live, and fall back to the existing NodeFrontierSeeds bridge otherwise.

This unblocks Step 3 equivalence work in docs/plans/affected-set-precompute-pruning.md (prove .dag vs Rust skip decisions on the real corpus before deleting the Rust bridge in Step 5).

Test plan

  • cargo test -p v1-compiler-tests floor_skip -- --test-threads=1 — 9 passed
  • CI floor pass (auto on ready)

Worker attestation

  • Title describes the change
  • PR body summarises what and why
  • Tests run and named above
  • No secrets / credentials staged

@gunbai-bot
gunbai-bot Bot marked this pull request as ready for review July 1, 2026 03:40
@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Addressed both findings in 4a2d9c6022:

  1. Scaffold discipline — Added an on-carrier SCAFFOLD (DESIGN §6, dissolution named) block above FLOOR_PROVENANCE_INGEST_MANIFEST_REL, with dissolve-on tied to Step 3 equivalence + Step 5 deletion in docs/plans/affected-set-precompute-pruning.md.

  2. Parallel grep authority — Removed overlay_manifest_ingest_is_live (manifest .contains() checks). provenance_ingest_live now comes solely from floor_provenance_ingest_is_live evaluated on the runner context built from overlay-prepended source roots.

Re-ran cargo test -p v1-compiler-tests floor_skip -- --test-threads=1 — 9 passed.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Addressed the fail-closed finding in the latest commit:

  1. Frontier union — entry_frontier_nodes_via_dag_closure now always computes the edit-loci closure first, then merges in the provenance frontier when live (no early return on non-empty provenance).

  2. Conservative skip disposition — when the .dag path returns Ok(false), we now fall back to entry_touches_frontier_seeds (same as on Err). A witness is skipped only if both paths agree it does not touch.

cargo test -p v1-compiler-tests floor_skip -- --test-threads=1 — 9 passed.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Addressed both findings in d97608c — see commit. Tests: cargo test -p v1-compiler-tests floor_skip (9 passed). — sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Addressed both findings:

  1. Wrong entry_root — Added provenance_entry_tree_root which evaluates node_artifact_provenance_from_source_root on the live host_source_root_ingest and selects the parsed artifact.tree node for the entry file path. That value feeds floor_rerun_frontier_from_provenance as InferredTree.root. Edit-loci closure still uses each locus as its own root (the _entry_root param remains inert there).

  2. Ok(false) shadowing — Reverted the prior union fallback: when use_dag_closure is live, Ok(false) is honored; only Err falls back to entry_touches_frontier_seeds.

cargo test -p v1-compiler-tests floor_skip -- --test-threads=1 — 9 passed.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Details on d97608c:

  1. Wrong entry_root — provenance_entry_tree_root evaluates node_artifact_provenance_from_source_root on live host_source_root_ingest and selects the parsed tree node for the entry file path. That feeds floor_rerun_frontier_from_provenance as InferredTree.root (replacing edit_loci.first()).

  2. Ok(false) shadowing — When use_dag_closure is live, Ok(false) is honored; only Err falls back to entry_touches_frontier_seeds.

cargo test -p v1-compiler-tests floor_skip -- --test-threads=1 — 9 passed.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Response to APPROVE review (34085) — finding-by-finding:

  1. Scaffold / dissolution trigger (cli_run.rs ~4860) — Agreed; the on-carrier SCAFFOLD (DESIGN §6, dissolution named) block ties dissolve-on to Step 3 equivalence + Step 5 bridge deletion in docs/plans/affected-set-precompute-pruning.md. No change needed.

  2. edit_locus_no_match_diagnostic on ingest-not-live (affected_set_floor_runner.dag:163) — Valid mislabel. Rust only branches on Holds/Violates today, so behavior is unchanged; will add a named floor_provenance_ingest_not_live diagnostic in a follow-up before Step 3 equivalence witnesses consume diagnostics.

  3. merge_frontier_nodes dedup via format_value (cli_run.rs:5228) — Acknowledged scaffold-grade proxy; dedup authority should ground on Node identity when the bridge dissolves (Step 5). Acceptable while the whole block is explicitly marked SCAFFOLD.

  4. Overlay dir PID-only (cli_run.rs:4973) — Valid edge case (crashed prior run debris). Drop cleans happy path; will salt with a random suffix in follow-up if this scaffold survives long enough to matter in parallel floor invocations.

Fail-closed direction on Err → seed-bridge fallback is intentional until Step 3 proves equivalence.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Verified composer-2.5 APPROVE (34088): no findings, no code changes required. Confirms prior fixes (provenance entry-root resolution, live .dag Ok(false) honored, SCAFFOLD dissolve-on) are in place on HEAD.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Verified opus APPROVE (34109) on HEAD 884fccb6f7:

  • Scaffold / ~500-line bridge — confirmed: SCAFFOLD (DESIGN §6, dissolution named) at cli_run.rs with Step 3→5 dissolve-on; no change needed.
  • PID overlay debris — acknowledged non-blocking; same follow-up as 34085 (random suffix if scaffold survives).
  • DO NOT COMMIT manifest header — present on emit_source_root_ingest_manifest; no change needed.
  • .dag runner — consumes canonical affected_set_reading_for_entry_root / affected_set_reading_from_git_diff_provenance; no forked closure.

No code changes required. rust_tests CI check is green on 884fccb6f7; floor ci job still queued.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Verified composer-2.5 APPROVE (34111) on HEAD 884fccb6f7: no findings, no code changes required. Confirms SCAFFOLD dissolve-on, fail-closed seed-bridge fallbacks, and that Step 3 equivalence witness (a) is correctly deferred to a follow-up PR before Step 5 deletion.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Verified opus APPROVE (34133) on HEAD f7254f00d7:

  1. Scaffold header — confirmed at cli_run.rs with Step 3→5 dissolve-on; no change needed.

  2. PID-only overlay path — valid latent risk for concurrent floor processes in the same tempdir; acceptable for current single-process CI. Tracked for follow-up if parallel floor invocation lands (salt overlay dir with random suffix alongside PID).

  3. ci_floor_plan.dag witness — landed in this branch to unblock CI after OOM kill on CI #6059 int_min plan-width fold; semantics-only fix (witness_floor_spawn_width_zero_budget_falls_back + parse fix). Agree it would have been cleaner as a separate commit; kept here because the prior push failed floor resolve at 81eb3f1.

No code changes required for this review.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Verified composer-2.5 APPROVE (34134) on HEAD f7254f00d7: no findings, no code changes required.

Spot-checked the cited surfaces — SCAFFOLD dissolve-on, Err→seed-bridge fallback, .dag liveness via floor_provenance_ingest_is_live, and witness_floor_spawn_width_zero_budget_falls_back aligned with int_min fold — all match the described intent.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Verified opus APPROVE (34148) on HEAD 65593b8ca2:

  1. SCAFFOLD / fail-closed fallbacks — confirmed; no change needed.

  2. PID-only overlay dir — acknowledged (same as 34133); deferred follow-up if parallel floor runs land.

  3. provenance_ingest_live double-eval — valid redundancy between run_discovery_corpus_with_options and run_discovery_rows; harmless, can collapse in Step 5 shrink.

  4. _entry_root in floor_rerun_frontier_from_edit_loci — intentional: edit-loci branch uses each locus as its own root; provenance branch uses provenance_entry_tree_root separately. Consistent with transitional scaffold.

Also aligned spawn-width witnesses with main #6070/#6079 in 65593b8ca2 to fix the floor CI regression from branch-local int_min fold.

No further code changes for this review.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Addressed REQUEST_CHANGES (34151):

When provenance_live, provenance_entry_tree_root / provenance_rerun_frontier_nodes failures now return Err (no partial edit-loci-only frontier), which triggers the existing seed-bridge fallback at run_discovery_rows. Additionally, Ok(false) from the live .dag path falls back to entry_touches_frontier_seeds so an empty/undersized provenance frontier cannot silently skip witnesses.

cargo test -p v1-compiler-tests floor_skip -- --test-threads=1 — 9 passed.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Addressed REQUEST_CHANGES (34171) in latest commit:

When provenance_live and entry_touches_frontier_via_dag_closure returns Err, the skip gate now runs entry witnesses (true) — matching the fail-closed posture at 3776-3778 / git-diff and frontier-seed population failures — instead of falling back to entry_touches_frontier_seeds. Non-live .dag closure errors still fall back to the seed bridge.

Also reverted the prior Ok(false) → seed-bridge fallback when live: a successful .dag Ok(false) is honored as authoritative.

Related: opus APPROVE (34170) overlay PID collision nit already landed (gunbc-floor-provenance-ingest-{pid}-{nanos} in d38aa75227).

cargo test -p v1-compiler-tests floor_skip -- --test-threads=1 — 9 passed.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Verified opus APPROVE (34176) on HEAD b70bbc6738: no blocking findings, no code changes required.

Note: since this review artifact, b70bbc6738 refined live-provenance Err to fail-closed run (not seed-bridge fallback) per composer 34171 — overlay prep / runner-unavailable / non-live paths still fall back to the seed bridge as described.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Verified opus APPROVE (34210) on HEAD 966cd861a9 — no blocking action; notes below.

floor_rerun_frontier_from_edit_loci / per-locus entry_root: Intentional for the seed-bridge parity path. entry_frontier_nodes_from_seeds materializes overlapping edited data items as node loci (not the witness entry’s module tree root). floor_rerun_frontier_from_edit_loci folds affected_set_reading_for_entry_root(entry_root: locus, edit_locus: locus) over those loci — same shape the Rust seed bridge used (per-declaration frontier seeds). The unused _entry_root param + Value::Null caller are scaffolding debt: Step 3 equivalence will either wire the witness entry tree root here or delete the param once .dag disposition fully subsumes the seed path. The provenance arm already uses provenance_entry_tree_root(entry_path) → floor_rerun_frontier_from_provenance(entry_root: …) with the real ingest tree root.

Duplicate floor_provenance_ingest_is_live: Agreed — run_discovery_corpus_with_options dispatches once into FloorProvenanceSkipContext.provenance_ingest_live; run_discovery_rows re-builds runner ctx per shard and re-invokes the .dag fn. Correctness is fine (same effective_roots); cost is redundant interpreter calls on the parallel path. Tracked for Step 5 scaffold deletion / can hoist to use skip_ctx.provenance_ingest_live only when cleaning up.

Prior REQUEST_CHANGES (overlay last-wins, empty-edit_loci provenance path, manifest leading // parse failure) are in 966cd861a9.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Verified composer APPROVE (34213) on HEAD 966cd861a9: findings none; no code changes required.

Spot-check confirms: SCAFFOLD header + dissolve-on at cli_run.rs:4868-4872, overlay appended last (4997-5003) so ephemeral manifest wins over committed Empty stub, live-provenance Err fail-closed to run witnesses (4146-4150), empty seed edit_loci no longer short-circuits provenance closure (5242-5255).

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Verified opus APPROVE (34238) on HEAD — no blocking action.

Spot-check confirms: SCAFFOLD + named dissolve-on at cli_run.rs:4868-4872, overlay/ runner failures → seed fallback with eprintln, live-provenance Err → run witnesses (4146-4150), .dag additions consume existing authorities (affected_set_reading_for_entry_root, node_artifact_provenance_from_source_root, edit_locus) without forking.

Also landed since 534c5516ab: green_skip OUTSIDE_FILE → unwired_model.dag (fixture now imports affected_set_floor_runner → affected_set in closure); latest commit isolates host skip tests from live overlay (GUNBC_FLOOR_PROVENANCE_OVERLAY=0) and keeps edit-loci skip on seed parity until Step 3 equivalence.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Verified composer APPROVE (34239) on HEAD — findings none; no further code changes required for this review.

Fail-closed live path, overlay last-wins, and affected_set_reading_for_entry_root hook all confirmed. Host floor_skip_discovery_host_test (9/9) now passes with overlay disabled in tests so seed-bridge node-precision controls stay authoritative until Step 3.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Verified opus APPROVE (34246) on HEAD 79b4028fa7 — findings none; no code changes required.

Confirmed: SCAFFOLD + dissolve-on at cli_run.rs:4865-4869; live-provenance Err fail-closed to run witnesses (4143-4147); non-live/overlay failure → seed bridge (4149-4153); GUNBC_FLOOR_PROVENANCE_OVERLAY=0 gates overlay off in floor_skip_discovery_host_test (47, 166) so seed-bridge node-precision controls stay deterministic; .dag additions consume existing authorities only.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Verified composer APPROVE (34247) on HEAD 79b4028fa7 — findings none; no code changes required.

Spot-check confirms each noted behavior: SCAFFOLD + dissolve-on (4865-4869); live closure Err → run witnesses (4143-4147); overlay/prepare/runner failures → seed fallback (3895-3900, 3948-3953); liveness via .dag floor_provenance_ingest_is_live only (5021-5025 / affected_set_floor_runner.dag:139-143); live frontier = seed edit-loci ∪ provenance nodes (5248-5256); overlay appended last (5000-5006); host tests gate overlay off (floor_skip_discovery_host_test.rs:47,166).

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Verified opus APPROVE (34256) on HEAD 3786c349de — no blocking action.

Notes addressed:

  • merge_frontier_nodes (5233) — agreed format_value as dedup key is scaffold-fragile; acceptable inside the Step 5 dissolve-on bridge; structural node identity can land with Step 3 equivalence if this outlives the plan.
  • witness_floor_spawn_width_zero_budget_falls_back (ci_floor_plan.dag:537-542) — landed in 3786c349de to match gunbc_ci_floor_spawn_width_for_budget's int_min(conservative_fallback, execution_corpus_spawn_width) after main merge; necessary CI fix, coherent with witness_floor_unreadable_budget_uses_conservative_envelope.
  • SCAFFOLD block (4865-4869), GUNBC_FLOOR_PROVENANCE_OVERLAY test gate, fail-closed live path, and cited symbol resolution — all confirmed on HEAD.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Verified composer APPROVE (34257) on HEAD 3786c349de — findings none; no code changes required.

Confirmed: SCAFFOLD + dissolve-on (cli_run.rs:4865-4869 → Step 3/5 in docs/plans/affected-set-precompute-pruning.md); .dag liveness/provenance authority (floor_provenance_ingest_is_live, floor_rerun_frontier_from_provenance); live-path Err fail-closed to run witnesses (4143-4147); host tests pin GUNBC_FLOOR_PROVENANCE_OVERLAY=0 for hermetic seed-bridge coverage. No substrate/unit-fork/shell violations in the changed lines.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Addressed REQUEST_CHANGES (34260) in e29310ce30.

Finding valid: OUTSIDE_FILE = "src/v2/lens/unwired_model.dag" / line 870 referenced a path removed from main (#6085 unwired-model revert) — the control was fail-open (precondition trivially true, diff path hit force_run_all).

Fix: Retargeted to a real out-of-closure file + data line:

  • OUTSIDE_FILE = "src/v2/lens/inert_carrier.dag"
  • OUTSIDE_DATA_LINE = 10 (data inert_carrier_roster: List<String> = [)
  • Verified outside node_precise_discriminator_test.dag import closure; green_skip_for_file_outside_import_closure passes locally.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Verified composer APPROVE (34263) on HEAD e29310ce30 — findings none; no code changes required.

Confirmed: SCAFFOLD + dissolve-on (cli_run.rs:4864-4868); live Err fail-closed (4142-4146); seed ∪ provenance frontier (5249-5257); overlay test gate (floor_skip_discovery_host_test.rs:47,166); spawn-width int_min witness alignment; affected_set_reading_for_entry_root extraction at affected_set.dag:435. Also on HEAD: green_skip OUTSIDE_FILE retargeted to inert_carrier.dag:10 after #6085 revert (e29310ce30, addresses opus REQUEST_CHANGES 34260).

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Verified opus APPROVE (34264) on HEAD e29310ce30 — no blocking findings; no code changes required.

Confirmed: SCAFFOLD + Step 5 dissolve-on (4864-4868); live-provenance Err fail-closed to run witnesses (4142-4146); .dag additions consume existing authorities only; spawn-width witness int_min alignment (ci_floor_plan.dag:537-542). Non-blocking nonce note (SystemTime in overlay prep) noted for Step 5 dissolution.

REQUEST_CHANGES (34260) addressed same head: OUTSIDE_FILE → inert_carrier.dag:10 after #6085 revert.

— sent from quick-carp-343

@briansrls
briansrls force-pushed the session/quick-carp-343 branch 2 times, most recently from a53f484 to 06b00f2 Compare July 1, 2026 12:50
briansrls and others added 5 commits July 1, 2026 13:28
…nce overlay.

Disable runtime provenance overlay in host skip tests via GUNBC_FLOOR_PROVENANCE_OVERLAY=0, use seed-derived edit loci (not expanded .dag closure) for skip disposition until Step 3 equivalence, and drop redundant per-shard floor_provenance_ingest_is_live re-invocation.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
OUTSIDE_FILE pointed at deleted src/v2/lens/unwired_model.dag (#6085); retarget to inert_carrier.dag:10 outside the floor_skip fixture import closure.

Co-authored-by: Cursor <cursoragent@cursor.com>
@briansrls
briansrls force-pushed the session/quick-carp-343 branch from 06b00f2 to dc8d165 Compare July 1, 2026 13:28
briansrls and others added 3 commits July 1, 2026 15:35
Remove dead entry_touches_frontier_via_dag_closure (referenced deleted
entry_claims_touch_frontier) and clone changed_paths into skip_ctx so
parallel shard path can still borrow it.

Co-authored-by: Cursor <cursoragent@cursor.com>
Remove duplicate node_frontier_plumbing_controls (kept #6061 FloorDiffEdits
variant), retarget OUTSIDE_FILE to inert_carrier.dag:10, and use
skip_ctx.changed_paths for single-threaded and shard skip paths.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Addressed REQUEST_CHANGES (34320) in upcoming push.

Finding 1 (duplicate node_frontier_plumbing_controls) — valid: Merge artifact left two sibling #[cfg(test)] mod node_frontier_plumbing_controls blocks (old NodeFrontierSeeds copy at ~4766 and #6061 FloorDiffEdits copy at ~5772). Removed the stale first copy; kept the FloorDiffEdits/entry_touches_rerun_frontier variant and retargeted its OUTSIDE_FILE to inert_carrier.dag:10 (the first copy already had the correct target).

Finding 2 (changed_paths use-after-move) — valid, partially on prior commit: 7e4adaf cloned into skip_ctx; this commit also routes the width==1 path through &skip_ctx.changed_paths and shard spawns through skip_ctx_owned.changed_paths.clone() per review.

Verified: cargo check -p v1-compiler + green_skip_for_file_outside_import_closure pass locally.

— sent from quick-carp-343

briansrls and others added 14 commits July 1, 2026 16:11
Resolve witness entry roots from overlay ingest with host-read fallback
that strips test-fn declarations program_assembly cannot parse yet;
scope provenance folding to changed paths only; and give pa_ingest_peer
an orphan TestClaim so skip disposition evaluates claims instead of
fail-closed run-all when saw_claim is false.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Addressed REQUEST_CHANGES (34432) in d087b69dc5.

Finding valid: discover_source_root_reads_for_paths silently continued on resolve_dag_path failure while emit_source_root_ingest_manifest always emitted coverage_complete: true — a partial overlay could satisfy floor_provenance_ingest_is_live() and under-cover changed .dag files.

Fix:

  1. Fail-closed discovery — required .dag paths (non-excluded) now propagate resolve_dag_path errors instead of silently skipping; overlay prep fails → seed fallback (existing prepare_floor_provenance_ingest_overlay error path).
  2. Honest receipt — emit_source_root_ingest_manifest takes an explicit coverage_complete flag; overlay emits true only after full discovery succeeds; partial test emits pass false.
  3. Hygiene — moved test fn pa_ingest_peer_witness_holds into pa_ingest_peer_test.dag (fixes wet_hermetic_scaffold_roster_filter_uses_dag_prefix_authority CI failure from test-marked decls outside *_test.dag).

Verified locally: discover_source_root_reads_for_paths_fails_closed_on_missing_dag, witness_entry_tree_root_resolves_from_overlay_ingest, discovery_corpus_live_provenance_overlay_resolves_entry_root_off_ingest, wet_hermetic_scaffold_roster_filter_uses_dag_prefix_authority.

— sent from quick-carp-343

briansrls and others added 2 commits July 1, 2026 19:20
Addresses non-blocking APPROVE notes: use std any predicate instead of
hand-rolled fold_list contains, and single if-let on ingest-path witness.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Addressed non-blocking APPROVE notes (34440) in af155b04de:

  1. floor_changed_path_in_list — replaced hand-rolled fold_list contains with any(xs: changed_paths, predicate: fn(x) { x == file_path }) (affected_set_floor_runner.dag).
  2. witness_entry_tree_root — single if let Ok(v) = witness_holds_node_value(...) instead of double eval (cli_run.rs).

Acknowledged (no code change):

  • SCAFFOLD dissolve-on to Step 3/5 is on-carrier; Step 3 equivalence gate is the named shrink trigger.
  • Overlay failure → seed skip fallback is fail-open toward pre-PR ground truth, not green-by-default; live provenance_live Err still runs witnesses. Step 5 deletion removes the fallback.

— sent from quick-carp-343

@gunbai-bot

gunbai-bot Bot commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

Verified composer-2.5 APPROVE (34441) on HEAD af155b04de — findings none; no further code changes required.

Confirmed: runtime provenance overlay, .dag node-closure skip when live, live-path Err fail-closed to run witnesses (cli_run.rs:4525-4539), SCAFFOLD + Step 5 dissolve-on (cli_run.rs:6279-6283), host tests gate overlay via GUNBC_FLOOR_PROVENANCE_OVERLAY=0, live-overlay host test exercises off-ingest entry-root resolution.

— sent from quick-carp-343

@briansrls briansrls closed this Jul 1, 2026
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