Record figure_group among the node types the corpus produces - #35
Merged
dereuromark merged 1 commit intoAug 15, 2026
Merged
Conversation
EXPECTED_TYPES in tests/corpus.mjs is this crate's own record of what the language emits, and the assertion over it is one-directional: a recorded type going missing fails, an unrecorded new type is invisible. The pin bump that brought PART 9 section 4c in (#34) added a node type nothing here names, and nothing in this file would have said so. Recording it is a tightening, not a widening. `figure_group` appears in no carve-rs source file at the revision this crate pinned before that bump (6f1d9bfb, zero hits under src) and in eleven at the one it pins now (98de7874), so this line would have failed the suite before the bump and passes after it. From here on, a pin that drops the group node fails with the type named rather than leaving nine corpus documents to explain it. The two ablations beside the assertion still hold: the sweep refuses a type no engine emits, and requires the produced set to be at least as large as the record. Measured with CARVE_SPEC_CORPUS against carve 1436f39a, artifact rebuilt with `wasm-pack build --target nodejs`: 1025/1025 byte-identical, 58 node types, field names match the schema, smoke green.
dereuromark
deleted the
chore/record-figure-group-composite-sat-6436a4ec
branch
August 15, 2026 23:49
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to #34, which moved the engine pin past PART 9 section 4c. Part of markup-carve/carve#1220.
What the pin bump left behind
EXPECTED_TYPESintests/corpus.mjsis this crate's own record of what the language emits, and the assertion over it is one-directional: a recorded type going missing fails, an unrecorded new type is invisible.#34brought in a node type nothing here names -figure_group, the composite-figure group node - and nothing in this file would have said so.Why this is a tightening, not a widening
figure_groupappears in no carve-rs source file at the revision this crate pinned before#34:figure_grouphits undersrc/6f1d9bfb(pinned before#34)98de7874(pinned now)So the line added here would have failed the suite before the bump and passes after it. From here on, a pin that drops the group node fails with the type named, rather than leaving nine corpus documents to explain it.
The two ablations beside the assertion still hold: the sweep refuses a type no engine emits, and requires the produced set to be at least as large as the record.
Measured
CARVE_SPEC_CORPUSpointed at carve1436f39a, artifact rebuilt withwasm-pack build --target nodejs:smoke.mjsgreen.