Skip to content

ADR-061: Schema entry points for concern-split output#186

Open
nathanacurtis wants to merge 5 commits into
release/schema-0.28.0+cli-0.25.0from
061-concern-split-schemas
Open

ADR-061: Schema entry points for concern-split output#186
nathanacurtis wants to merge 5 commits into
release/schema-0.28.0+cli-0.25.0from
061-concern-split-schemas

Conversation

@nathanacurtis

Copy link
Copy Markdown
Member

Summary

  • Implements ADR-061: adds JSON Schema entry points for --split-concerns CLI output, which previously had none.
  • New types ComponentApi, ComponentVariants, ComponentExamples (concern-scoped subsets of Component), each with a per-component schema and a library-wide set-wrapper schema, mirroring the existing component.schema.json / components.schema.json pairing.
  • root.schema.json's oneOf grows from 2 to 8 entries.
  • Purely additive — lands within the already-reserved 0.28.0 (no version bump needed, package.json already at 0.28.0).

Test plan

  • tsc -p tsconfig.build.json --noEmit — clean
  • validate-schema.sh — 11/11 schemas pass
  • Manual cross-file $ref resolution check — all pointers resolve
  • tests/*.test-d.ts (including new ComponentConcerns.test-d.ts) — compiles clean, no regressions
  • Author review of diff, then /specs.adr.accept to mark ADR-061 ACCEPTED

…header config

Only whole-library and whole-component output shapes have JSON Schemas today;
--split-concerns output (modes 4/5) has none. Proposes six new schema files
(component-api/variants/examples + set wrappers) and a Config.format.yamlSchemaComment
flag so specs-cli can emit a yaml-language-server header comment for RedHat YAML validation.
component-api/variants/examples + components-api/variants/examples
give --split-concerns output a real, addressable JSON Schema for the
first time, mirroring the existing component/components pairing.
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