Skip to content

chore(ci-dissolution): claim-witness corpus model-first dissolution (6 root-aligned ci-claim-gate shards) - #4958

Closed
briansrls wants to merge 15 commits into
mainfrom
ci/corpus-model-first
Closed

briansrls wants to merge 15 commits into
mainfrom
ci/corpus-model-first

Conversation

@briansrls

@briansrls briansrls commented Jun 15, 2026 •

Copy link
Copy Markdown
Contributor

Corpus #3b — claim-witness corpus model-first dissolution

Converts the claim-witness corpus CI gate from the bespoke shell scaffold to the uniform
ci-claim-gate transport, model-first: the .dag rows own the corpus, the harness only
selects a shard's rows-fn + source-root(s). Per zesty's FULL-DISSOLUTION + option-2 (root-aligned
single-root shards) rulings.

What dissolved

Shape: 6 root-aligned shards (zesty option-2)

ci-claim-gate's perturb pass copies only the PRIMARY --source-root into its temp tree, so every
perturbed row must live under the primary root (a mixed-root shard fails LOUD, not fail-open). Shards
are kept single-primary-root — no host change. A born-mark at run_perturb_pass records the
multi-root + copy-once generalization as the JIT trigger for a future cost-balanced multi-root shard.

  • shard_a..e → primary src/v4 (46 rows: 9,9,9,9,10)
  • shard_f → primary dsl (9 dsl rows; src/v4 added read-only solely to resolve the gate-entry)

By-execution receipts (merged tree, includes origin/main #4955)

Roster = union of all 6 shards == 55 (verified disjoint, exact defined↔enrolled, root-pure):
a=9 b=9 c=9 d=9 e=10 f=9.

Per-shard FULL --perturb-check (sequential, uncontended), all EXIT=0, full green + full
perturb-RED, still-passed=0:

shard wall green perturb-RED ×2.6 tail
a 183s 9 9 ~8m
b 249s 9 9 ~11m
c 146s 9 9 ~6m
d 326s 9 9 ~14m (max)
e 233s 10 10 ~10m
f 3s 9 9 ~8s

Max wall 326s (shard_d, holds the negation row); ×2.6 merge-wave tail ≈ 14m, comfortably < 20m ceiling.

Run-on-PR enforcement: all 6 jobs v4_claim_witness_corpus_{a..f} are wired into the ci
aggregator needs: with fail-closed result-checks, so the per-shard perturb runs on the PR itself
(this discharges the upgraded sign-condition from the #4947 merge-skew investigation: the gate is
required-on-PR, proven RED-on-perturb at PR head).

Files

  • src/v4/test/claim/workflow/claim_witness_corpus_ci_runner.dag — coproduct/field/counts dissolved; 6 shard lists + rows_tsv folds.
  • src/v4/test/claim/manual/sg2_type_expression_projection.dag — negation witness added.
  • scripts/v4-claim-witness-corpus-gate.sh — rewritten as ci-claim-gate shard selector.
  • .github/workflows/ci.yml — 2→6 corpus jobs + aggregator wiring.
  • tools/ci_claim_gate/src/main.rs — born-marks at run_perturb_pass (comment-only).
  • dsl/test/claim/probe_selector_compute_fabric_import_repro.dag — de-stale comment.

DRAFT until zesty sign. Sign conditions verified above; routing to zesty.

🤖 Generated with Claude Code

@briansrls briansrls changed the title ci investigation chore(ci-dissolution): claim-witness corpus model-first dissolution (6 root-aligned ci-claim-gate shards) Jun 15, 2026
@briansrls

Copy link
Copy Markdown
Contributor Author

Closing as SUPERSEDED, not abandoned — the work is being re-homed, not dropped. This PR was held because the operator reframe (glob-derive corpus counts) made its 2-to-6 shard-manifest expansion point the wrong direction; the subsequent operator pivot (finish ci_runner.dag as THE one-binary minimal-safe-floor CI and collapse ci.yml) now DEMOTES the claim-witness corpus gate to non-blocking and restructures the runner inside the architecture lane (worker sunny-crab-863). Keeping this draft open is also a 3-way merge-conflict risk: it edits ci.yml, scripts/v4-claim-witness-corpus-gate.sh, and claim_witness_corpus_ci_runner.dag — the exact files that #4959 (count-check retire) and the architecture collapse PR are touching. Salvage to re-land through the architecture lane: (1) the coproduct dissolution that drops the expected field and the ClaimWitnessCorpusExpectation variant for a 3-field row, and (2) the #4801 negation witness in sg2_type_expression_projection.dag. Branch ci/corpus-model-first is preserved at 89c6cfa for harvest. — sent from zesty-swift-79

@briansrls briansrls closed this Jun 15, 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