Skip to content

spec(igla): make the nine IGLA CODER specs compile and pass with 0 vacuous (Closes #10075) - #10101

Merged
gHashTag merged 6 commits into
masterfrom
spec/igla-coder-compile
Oct 17, 2026
Merged

gHashTag merged 6 commits into
masterfrom
spec/igla-coder-compile

Conversation

@gHashTag

Copy link
Copy Markdown
Owner

Closes #10075. Part of #10024 (own model).

What changed

All nine specs/igla/coder/*.t27 (arch, tokenizer, dataset, training, benchmark, eval, weights, pipeline, bench_proxy), plus prm.t27, now compile under t27c and pass t27c test-report on the Railway lab with 0 vacuous passes. Only .t27 files changed; no compiler or Rust edit.

spec tests pass vacuous
arch 188 188 0
tokenizer 173 173 0
dataset 193 193 0
training 104 104 0
benchmark 358 358 0
eval 324 324 0
weights 121 121 0
pipeline 159 159 0
bench_proxy 119 119 0
prm 106 106 0

Before: all nine were BLOCKED (the generated Zig did not compile).

  • Text and vector producers write into caller buffers or static scratch buffers (t27c has no allocator yet). Functions the old tests called but nobody had defined are now real, documented functions.
  • Padding that asserted nothing (verify baseline, assert true, invariant x: true, forall invariants that lower to NOT CHECKED) is deleted, not counted. A test whose expectation contradicted the spec's own documented behaviour was corrected with a comment saying why; none was weakened to a trivial assert.
  • benchmark.t27 (map cell 4) encodes the t27 bench counts from igla-coder-gpu research/T27_BENCH.md: 466 items from 130 specs = 391 strict + 75 other, the skip counts, 466/466 controls, and the pair results, with relation tests.
  • eval.t27 (map cell 5) encodes the unbiased pass@k estimator in integer ppm and the report_pair_10b MultiPL-E rows, with relation tests.
  • own_model.t27: CODER_SPECS_COMPILING 0 -> 9, ML_SPECS_COMPILING 6 -> 15 of 17 (nn/attention and optimizer/adamw are still BLOCKED and owned by another session), cells 4, 5 and 6 earn VERIFIED through earned_status with a passing test, percentages, slide text and tests follow. own_model.t27 itself passes 8/8, 0 vacuous.

Compiler findings (parked, not worked on; worked around in .t27)

  • Module-level var is not spliced by use, so cross-module scratch buffers are re-declared locally in pipeline.
  • A private name declared in two imported modules with different bodies is left undeclared (BeamCandidate, has_substring, check_sacred_compliance, exp_approx, ln_approx, min_usize); pipeline therefore does not import prm or dataset.
  • const x = n; where n is a var mutated later is inlined to the stale value.
  • Nested slice literals lower to tuples; s[a..] lowers wrongly; 0:i8 and '\0' are invalid.

Not in this PR

  • specs/igla/coder/_tmp_pipeline_import.t27 is a stale copy of the old pipeline header; left untouched.
  • The checked-in arch.zig, eval.zig, prm.zig, training.zig are stale generated files; left untouched.
  • nn/attention and optimizer/adamw (another session).

🤖 Generated with Claude Code

gHashTag and others added 2 commits October 18, 2026 01:52
…cuous (Closes #10075)

All nine specs/igla/coder/*.t27 (arch, tokenizer, dataset, training, benchmark, eval,
weights, pipeline, bench_proxy) plus prm now compile under t27c and pass test-report on
the lab with 0 vacuous passes (arch 188, tokenizer 173, dataset 193, training 104,
benchmark 358, eval 324, weights 121, pipeline 159, bench_proxy 119, prm 106).

- Text and vector producers write into caller buffers or static scratch buffers (no
  allocator in t27c yet); undefined functions the old tests called are now real,
  documented functions.
- Padding that asserted nothing (verify baseline, assert true, invariant x: true, forall
  invariants that lower to NOT CHECKED) is deleted, not counted. Tests whose expectation
  contradicted the spec's own documented behaviour were corrected with a comment.
- benchmark.t27 carries the t27 bench counts (466 = 391 + 75, skips, controls) and the
  pair results; eval.t27 carries the pass@k estimator and the report_pair_10b rows, each
  with relation tests.
- own_model.t27: 9 of 9 coder specs and 15 of 17 ML specs compile; cells 4, 5, 6 earn
  VERIFIED through a passing test; percentages and slide text follow.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-10-17 19:16:33 UTC

Summary

Status Count
Total Open PRs 50
PRs with Failing Checks 48
PRs with All Checks Green 2
READY 0
FAILING 48
PENDING 0
NO CHECKS YET 0

These columns do not partition: 0 + 48 + 0 + 0 = 48, and there are 50 open PRs. A PR is being counted twice or not at all.

Seal Status

  • ⚠️ STALE -- sha256(compiler.rs)=e769ef021713 != manifest seal=87e5cbd3ad94.
    The committed NMSE numbers were certified against an older compiler.rs.
    Run scripts/reseal-check.sh locally for the two-step reseal command (advisory; not a merge gate).

gHashTag and others added 2 commits October 18, 2026 02:40
Resolve specs/igla/own_model.t27: keep the coder-compile flags and counts, take the
training-step cells (16-18) from master. Now 1 published, 15 verified, 6 drafts, 5 gaps.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…bless the ratchets (Closes #10075)

- own_model_board.t27 mirrors the merged own_model map: 1 published, 15 verified, 6 drafts,
  5 gaps; 53 percent; metrics 625 bytes.
- _tmp_pipeline_import.t27: one call to detokenize_verilog gets the out-buffer argument the
  tokenizer now takes, so the stale repro typechecks and generates again.
- ten coder seals re-saved on the lab (spec_hash equals the file).
- assertionless and duplicate-body ledgers moved down (re-blessed).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-10-17 19:47:36 UTC

Summary

Status Count
Total Open PRs 50
PRs with Failing Checks 48
PRs with All Checks Green 2
READY 0
FAILING 48
PENDING 0
NO CHECKS YET 0

These columns do not partition: 0 + 48 + 0 + 0 = 48, and there are 50 open PRs. A PR is being counted twice or not at all.

Seal Status

  • ⚠️ STALE -- sha256(compiler.rs)=3b53d48ddb52 != manifest seal=87e5cbd3ad94.
    The committed NMSE numbers were certified against an older compiler.rs.
    Run scripts/reseal-check.sh locally for the two-step reseal command (advisory; not a merge gate).

gHashTag and others added 2 commits October 18, 2026 02:55
…s apart (types ratchet, #2774)

own_model: keep the CODER-compile numbers and take master's VSA-path
re-test, PCT[14]=95 and the new open row. pipeline.t27 and eval.t27 no
longer define ModuleSpec, AgentAction and BenchRow, which collided with
the repro copy and benchmark.t27 and moved the conflicted-type-name set;
they are PipeModuleSpec, PipeAgentAction and PairBenchRow. Reseal both.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
… so 16 of 17 ML specs

own_model and the board: master's arena/file-I/O re-test and the adamw
compile came in; with the nine coder specs only nn/attention is still
BLOCKED, so 16 of 17 compile (94 percent), lens 3 mean 36, overall 54.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-10-17 20:00:53 UTC

Summary

Status Count
Total Open PRs 50
PRs with Failing Checks 49
PRs with All Checks Green 1
READY 0
FAILING 49
PENDING 0
NO CHECKS YET 0

These columns do not partition: 0 + 49 + 0 + 0 = 49, and there are 50 open PRs. A PR is being counted twice or not at all.

Seal Status

  • ⚠️ STALE -- sha256(compiler.rs)=3b53d48ddb52 != manifest seal=87e5cbd3ad94.
    The committed NMSE numbers were certified against an older compiler.rs.
    Run scripts/reseal-check.sh locally for the two-step reseal command (advisory; not a merge gate).

@gHashTag
gHashTag merged commit 18c98cc into master Oct 17, 2026
27 of 29 checks passed
gHashTag added a commit that referenced this pull request Oct 18, 2026
…n, t27mcp duplicate helpers (Closes #10171) (#10172)

* fix(ci): master green again -- 8 stale corpus-ledger rows, census re-pin after pr-budget.yml (Closes #10171)

Corpus ratchet: #10101 (seven igla/coder specs) and #10095 (nn/attention)
now pass every phase; their rows are dropped and the cap follows 81 -> 73.
Re-pinned: bench_proxy 738 -> 696, prm 521 -> 520, benchmark 315 -> 319
(bdd-block-fallback only: #10101 lengthened then-conditions in BDD blocks
the parser already skips).

Census: #10087 added pr-budget.yml. workflow files 66 -> 67, jobs 87 -> 88,
run steps 313 -> 314, bash steps 292 -> 293, path-not-quiet 198 -> 200.
Re-pinned with tri census pin --bless.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* spec(t27mcp): examples.t27 uses check_hints' find/has instead of a second copy (Refs #10171)

#10157 landed examples.t27 with byte-identical find(), has() and NO_POS
from check_hints.t27, so duplicate-bodies on master reports two new
groups. examples.t27 now imports t27mcp::check_hints. gen-c still emits
both definitions in the one C file the wasm build compiles; 8/8 tests,
0 vacuous.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.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.

spec(igla): make the nine IGLA CODER specs compile and pass their tests (Part of #10024)

1 participant