Skip to content

Improve materials/id schema description and examples - #172

Merged
gnidan merged 1 commit into
mainfrom
writer-improve-materials-id
Mar 9, 2026
Merged

gnidan merged 1 commit into
mainfrom
writer-improve-materials-id

Conversation

@gnidan

@gnidan gnidan commented Mar 9, 2026

Copy link
Copy Markdown
Member

The previous description was too vague ("An opaque external ID (likely generated by compiler)"). Rewrote to explain what resources the ID identifies (sources, compilations), the uniqueness constraint, and the numeric/string type options. Replaced placeholder examples with realistic values matching patterns used in other schemas.

The previous description ("An opaque external ID (likely generated by
compiler)") was too vague. The new description explains what resources
the ID identifies, notes the uniqueness constraint, and clarifies
that values can be numeric or string. Examples now use realistic
values matching patterns seen in other schemas.
@github-actions

github-actions Bot commented Mar 9, 2026 •

Copy link
Copy Markdown
Contributor
PR Preview Action v1.8.1
Preview removed because the pull request was closed.
2026-03-09 14:23 UTC

@gnidan gnidan left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Schema architect review: Looks good

The description accurately captures how materials/id is used:

  • Referenced by materials/source (source IDs), materials/compilation (compilation IDs), and materials/reference (generic ID refs) — the "compilation resource" framing covers these correctly.
  • "Unique within the scope where they appear" aligns with the source schema's uniqueness requirement.
  • "Typically generated by the compiler" is accurate.

Examples are improved — 0 is realistic as a source index, and "__301f3b6d85831638" matches the actual compilation ID example in info.schema.yaml.

LGTM.

@gnidan
gnidan merged commit 1b3b94b into main Mar 9, 2026
4 checks passed
@gnidan
gnidan deleted the writer-improve-materials-id branch March 9, 2026 14:19
gnidan added a commit that referenced this pull request Sep 17, 2026
The empty-context history was attributed to the wrong PR: #145 dropped
`minProperties: 1` and the `required` entry, but the context schema's
`anyOf` still rejected an explicit `{}` until #150 replaced the union
with `if`/`then` clauses. #131 likewise never declared the compilation
`id` required in prose; it only dropped the "optional" wording.

Every `Schemas:` list now names each schema file the change touched,
verified against the diffs. The #284 entry is split, since the segment
offset carry and the `$this` circularity rule are separate changes with
separate consequences. The encoding label rule is marked as a normative
tightening no validator catches, and its canonical label is described as
preferred rather than required, matching the schema. The id uniqueness
requirement is presented as the new part of #172, and `frame`'s values
as examples rather than an enumeration. The preamble explains why this
file is keyed by the `@ethdebug/format` version, and the history ends at
`0.1.0-0`.
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