Skip to content

[v0.4] #252 four negative fixtures, #251 retitles, claim-audit wording - #256

Merged
afflom merged 12 commits into
release/v0.4from
claude/issue-34-closure
Oct 31, 2026
Merged

afflom merged 12 commits into
release/v0.4from
claude/issue-34-closure

Conversation

@afflom

@afflom afflom commented Oct 21, 2026 •

Copy link
Copy Markdown
Member

What

Closes #252 and #251; the wording items of the #34 claim audit, plus CHANGELOG.md entries for the landed v0.4 slices. Draft. Base: release/v0.4 @ cee0fbade.

  1. Wording (committed): README text-component rows no longer say "first/second/third slice"; production-coverage is 36 roots across five modules and its coverage of the registry is shared with production, models, reasoning and OR-02's probes (the same overclaim the [v0.4] #34 closure: example READMEs and README claim wording #250 review caught in the example README, here in README line 134); SPEC §4.2 states its list is the language-1.0 boundary; SPEC §17.14 points at certificates B and E and keeps rustc agreement as build evidence. "All 436 … pass" and the Install section are untouched, as directed. CHANGELOG.md records the landed v0.4 slices (Wave 4: SL-02 (SHA-256), BS-03 (primitive scanner), PD-08 (stack bounds) and the ready #33/#34 drafts #216, Identity wave: refuse the data form (#149), #91 stages 2 and 3, RP-15, the diagnostic schema, certificate A of lists (#208), D1; every identity regenerated #219, Wave 6: LLS8002 (#215), BS-04 (#92 step 4), SP-20 and RB-14 (#91 stage 4, #105 step 2); the language-1.2 identity regenerated #220, Slice 3 of #30: text classifiers, composition and adapters, no prompt as code (LM-07..LM-09) #221, std-models, std-reasoning, and the helpdesk application (#32, L2.3) #225, [v0.4] #34 closure: example READMEs and README claim wording #250) under [Unreleased].
  2. Four negative fixtures (committed, Four public refusals have no committed negative fixture: LLB6005, LLB6006, LLB6007, LLT4016 #252): production-package-name-keyword → LLB6005 (a Rust keyword as crate name), gnaf-request-malformed → LLB6006, gnaf-certificate-malformed → LLB6007 (a valid committed GNAF request with a truncated certificate), text-window-zero-capacity → LLT4016. Each is a minimal project refused with exactly its code, written through check-fixtures --write (no existing fixture changed) and registered in EX-07's prescribed table (285 → 289). The inline plants stay. Cost to accept: the request fixtures embed the target descriptor digest, which binds to the current compiler identity, so they are re-pinned when #91 stage 4, PR 4: the width families of the core runtime as source (RB-16, SP-22) #248 lands.
  3. Retitling of the seven examples (committed, Seven examples carry the literal example's \title{Natural number addition} #251): collections, higher-order, language-1.2, production, production-coverage, recursion, and recursive-data each gain a glossary/<pkg>.titles path glossary with one label-word entry per module (the fold-laws pattern) and their modules are retitled; re-locked, expected/build and expected/verify regenerated via check-golden --write and verify-examples --write. SM-23 downgrades languagetwelve.titles/lexicon.toml alongside lexlean.toml and src/Main.lex.tex when testing language 1.1 and 1.0.

Not touched

No register row, model/ids.toml, language data, schema or compiler source. EX-07 and SM-23 are the only gate sources edited.

Evidence

  • check-fixtures --write wrote only the four new fixtures; each expected/diagnostics.json carries exactly its code; no host path in any expected/ file.
  • verify-examples --write Lean verification wall times (pinned Lean 4.32.1): collections 14 s, higher-order 1 s, language-1.2 1 s, production 268 s, production-coverage 704 s, recursion 14 s, recursive-data 2 s.
  • cargo xtask validate (436 ids, 86 codes), cargo xtask check-test-inventory (766 tests = 285 + 481), cargo xtask check-fixtures (295 fixtures), cargo xtask check-golden (all examples + compiler + stdlib + std-models + std-reasoning + bootstrap + 18 tooling artifacts), conformance_ex_07, and conformance_sm_23 all pass.

claude and others added 6 commits October 21, 2026 13:06
…tion-coverage line (#34)

README: the text-component rows no longer say first, second and third slice;
production-coverage is 36 roots across five modules and its coverage of the
registry is shared with production, models and reasoning (OR-02's probes cover
the rest), as the gate states it. SPEC 4.2: the non-goals list bounds language
1.0 only. SPEC 17.14: points at certificates B and E for the declared Rust
machine; rustc agreement stays build evidence. No register row or identity moves.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0135zd5jvsTLg2b9XM19j2Q5
Each public language-class refusal that had only an inline plant now has a
committed project under tests/negative, refused with exactly its code and
registered in EX-07's prescribed table (285 -> 289):
production-package-name-keyword (a Rust keyword as a crate name),
gnaf-request-malformed, gnaf-certificate-malformed (a valid committed GNAF
request with a truncated certificate), text-window-zero-capacity.
The inline plants stay. expected/ written by check-fixtures --write; no
existing fixture changed. Targets' digests in the request fixtures bind to the
current identity and are re-pinned when #248 lands.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0135zd5jvsTLg2b9XM19j2Q5
…mes its program (#251)

collections, higher-order, language-1.2, production, production-coverage,
recursion and recursive-data carried the literal example's title on every
module. Each now has a path glossary <pkg>.titles (the fold-laws pattern) with
one label-word entry per module, the lexicon_source row, and re-pinned lock.
fmt --check and check pass for all seven. Source only: the expected/ trees and
verified records are regenerated in the next commit (check-golden --write,
verify-examples --write), so check-golden is red on this commit by design.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0135zd5jvsTLg2b9XM19j2Q5
…n retitles (#34)

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0135zd5jvsTLg2b9XM19j2Q5
@humuhumu33
humuhumu33 marked this pull request as ready for review October 27, 2026 11:00

afflom commented Oct 27, 2026

Copy link
Copy Markdown
Member Author

Back to draft until its landing: the head ca9f64314 is 363 commits behind release/v0.4 (a1b925dc6, post-tag), so a ready run on it is a whole gate spent on a tree that cannot pass, which #131 is about. It is queued as a 0.4.x landing after #305 (H7-audit, in landing now) and #247 (#30 slice 4): I merge the line in, regenerate the fixtures and the expected records of the retitled examples on the line's identity, and run the gate once on the result. Nothing is needed from the author or from hh before then; marking it ready is part of the landing.


Generated by Claude Code

@afflom
afflom marked this pull request as draft October 27, 2026 11:49
@humuhumu33
humuhumu33 marked this pull request as ready for review October 27, 2026 11:51
Conflicts: CHANGELOG.md (this PR's bullets move to an Unreleased section above
0.4.0), EX-07's prescribed table (298 line classes plus this PR's four = 302),
and the seven retitled examples' lexlean.lock and expected/ (regenerated with
lexlean lock and cargo xtask check-golden --write; expected/verify needs Lean
and is not regenerated here).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013Asa3QZQru5a9Beo3r4Rfa
…igest after the merge

The three production-request fixtures pinned the rust-core descriptor digest of
the pre-merge line; the line's H6/H7 landings moved it. Each fixture is again
refused with exactly its prescribed code (LLB6005, LLB6006, LLB6007, LLT4016)
and its committed command.json is unchanged.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013Asa3QZQru5a9Beo3r4Rfa
@afflom
afflom marked this pull request as draft October 31, 2026 02:21

afflom commented Oct 31, 2026

Copy link
Copy Markdown
Member Author

Merged release/v0.4 (842707d28); relocked and repinned the four negative fixtures (0122fd80e). Each fixture is still refused with exactly its code. No identity moves.

Left: expected/verify of the seven retitled examples needs cargo xtask verify-examples --write under Lean 4.32.1, then check-golden. Back to draft, and I cancelled run 41159204529, which could only fail on that.


Generated by Claude Code

cargo xtask verify-examples --write with Lean 4.32.1, restricted to collections,
higher-order, language-1.2, production, production-coverage, recursion and
recursive-data.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013Asa3QZQru5a9Beo3r4Rfa
…es (#251)

The exported packages' source digests follow the module titles; cargo xtask
check-production-export --write, nothing else changes.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013Asa3QZQru5a9Beo3r4Rfa
@afflom
afflom marked this pull request as ready for review October 31, 2026 06:37
… the example's titles glossary (#251)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013Asa3QZQru5a9Beo3r4Rfa
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013Asa3QZQru5a9Beo3r4Rfa
@afflom
afflom merged commit ccbf038 into release/v0.4 Oct 31, 2026
36 checks passed
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.

2 participants