Skip to content

Delete hand-maintained filename/test-row list+count enumerations across the tree; replace with reflection-based discovery (corpus/affected/probe/lens gate runners, parse_allowlist, shell file-arrays). Reflection was supposed to handle this. - #5005

Merged
briansrls merged 4 commits into
mainfrom
session/crisp-bear-37
Jun 15, 2026

Conversation

@briansrls

@briansrls briansrls commented Jun 15, 2026 •

Copy link
Copy Markdown
Contributor

What this does (reflection / single-authority cleanup — item-8 of the modeling-smell audit)

Dissolves the hand-maintained list+count parallel ledgers in the CI gate runners. These are .dag-native deletions only — no shell, no new capability.

Deleted (zero readers, verified):

  • claim_witness_corpus_claim_run_row_count / shard_a_row_count / shard_b_row_count (corpus runner)
  • ci_runner_node_frontier_claim_run_row_count (affected_set runner)
  • affected_testgen_claim_run_row_count (affected_testgen runner)
  • claim_witness_corpus_claim_run_rows — the unconsumed, stale-by-one "all 54" aggregate (the gate reads the shard lists, never this; chore(ci): retire redundant *_row_count cross-checks (merge-skew liability) #4959 retired its cross-check). Real count was 55; the datum still said "54".

These are the *_row_count datums #4959's commit message described removing but whose diff only touched the shell scripts — they were left dangling and unconsumed. The gates fold the typed shard List directly, so a dropped row simply isn't enrolled; a parallel count datum can't detect that and only drifts under concurrent merges. Teeth retained: per-row pass + perturb-RED + ExpectFail-drift + empty-roster fail-closed guards are untouched.

Also (unblock): dsl/std/compute_fabric.dag:541 declared data operator_fleet_runner_slot_total: Int = with the RHS on the next line; the parser rejects =-then-newline, failing closed on every gate that resolves a dsl/ closure (corpus/lens gates) on all PRs. Single-lined it. (Parent's #4960 deletes this dead datum + moves the file to dsl/product/compute_fabric.dag; whichever lands first heals main, delete wins on the trivial conflict.)

Verification

  • gunbc compile --source-root src/v4 --target dag → exit 0 (whole-tree v4 parse).
  • Grep: zero readers of every deleted symbol across .dag/.sh/.rs/.yml.
  • scripts/v4-claim-witness-corpus-gate.sh --shard b locally → GATE EXIT 0, 35 rows matched (34 ExpectPass, 1 ExpectFail).
  • The 8 CI reds are fleet-contention (sccache fail-closed-by-design + compile-admission concurrency-group cancellations) in the CI-Rework lane, not merit failures — confirmed with the parent.

Deliberately NOT in this PR (scoped follow-on)

The operator asked to also delete the individual corpus_ci_gate_row_* enrollment rows and let reflection discover them. Ground-truth discover_owned_data coverage proof: 34/54 are discoverable, 20 are NOT (9 dsl/test/claim/* rows are outside the discoverer's src/v4/test/claim scan-dir; 11 src/v4 rows — 7 timeseries, mvp1-emit-matches-serialize, sg2-fold-row-delimiter, ts_effect_io_emit, spice — are registered in the TestClaim = BoolWitnessClaim { witness: BoolWitness { holds: fn() } } shape the discoverer's transport projection doesn't capture). Deleting those 20 would silently drop coverage (fabricated-green), which the fail-closed bar forbids. Safely deleting the rows requires: extend discovery scan to dsl/, make the 11 src/v4 witnesses discoverable, handle the 1 ExpectFail residual (#4801), and rewire the gate's enrollment to the discovery manifest. Tracked as the discovery-rewire follow-on.

@gunbai-bot
gunbai-bot Bot marked this pull request as ready for review June 15, 2026 22:32
@briansrls
briansrls merged commit 8f8d9ee into main Jun 15, 2026
16 of 18 checks passed
@briansrls
briansrls deleted the session/crisp-bear-37 branch June 15, 2026 23:01
briansrls added a commit that referenced this pull request Jun 15, 2026
Co-authored-by: Cursor <cursoragent@cursor.com>

# Conflicts:
#	src/v4/test/claim/workflow/claim_witness_corpus_ci_runner.dag
briansrls added a commit that referenced this pull request Jun 15, 2026
Drop hand-maintained master list + row_count datums (reflection gate per

Co-authored-by: Cursor <cursoragent@cursor.com>
#5005); retain M1a program_runs row on shard b only.
briansrls added a commit that referenced this pull request Jun 15, 2026
Rebase onto #5005 left conflict markers in shard_b enrollment; remove
them and keep reflection-based discovery (row defs + shard_b only).

Co-authored-by: Cursor <cursoragent@cursor.com>
briansrls added a commit that referenced this pull request Jun 15, 2026
Resolve claim_witness_corpus_ci_runner.dag under #5005: keep SP-M2
dual-emission + wave-1 row defs and shard_b enrollment; drop retired
monolithic list and hand-maintained row-count strings.

Co-authored-by: Cursor <cursoragent@cursor.com>
briansrls added a commit that referenced this pull request Jun 15, 2026
Keep #5005 shard_b-only enrollment: union main self_host_stage_emission_equality
rows with SP-M1 spice witness rows; no master-list/_row_count ledger.

Co-authored-by: Cursor <cursoragent@cursor.com>
briansrls added a commit that referenced this pull request Jun 15, 2026
#5005 shard_b-only: union main self_host rows with
corpus_ci_gate_row_spice_resistor_round_trip enrollment.

Co-authored-by: Cursor <cursoragent@cursor.com>
briansrls added a commit that referenced this pull request Jun 16, 2026
Rebase onto #5005 left conflict markers in shard_b enrollment; remove
them and keep reflection-based discovery (row defs + shard_b only).

Co-authored-by: Cursor <cursoragent@cursor.com>
briansrls added a commit that referenced this pull request Jun 16, 2026
Rebase onto #5005 left conflict markers in shard_b enrollment; remove
them and keep reflection-based discovery (row defs + shard_b only).

Co-authored-by: Cursor <cursoragent@cursor.com>
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