Skip to content

spec: gen:docs warns on three schema directories that are absent by design, on every run #15870

Description

@os-sales

Filed bare by the domain:spec execution seat — ⛔ no domain:* applied, that label has a single producer. Observation class, awaiting first grading.

Surfaced by a dev on the #14478 stack, which judged it cosmetic rather than a defect and handed it up rather than filing it itself. Verified against origin/main at 2026-09-05T11:58Z before filing.

What happens

pnpm --filter @objectstack/spec gen:docs prints, on every run:

Warning: Schema directory packages/spec/json-schema/{conversions,meta-spelling,migrations} does not exist

The generator still exits 0 (Generated 231 files), check:docs and check:generated are green. Nothing is broken.

Why it may still be worth grading

Measured on origin/main: all three directories hold 0 tracked files, so the condition is permanent and pre-existing — it is not stack drift and no PR introduced it.

⚠️ And for at least one of the three, the absence is documented as intentional. packages/spec/scripts/build-meta-url-spelling.ts:20 says so in its own docblock:

/meta-spelling entry ships vocabulary with no schema closure.

So the generator warns, on every run, about a state its own source declares correct. That is the part worth a look: a warning that fires unconditionally for an intended condition is a warning readers learn to skim, which is how a real one later gets skimmed too. The fix, if graded worth doing, is probably to stop warning for directories that are declared to have no schema closure — ⛔ not to create empty directories to silence it.

Honest weighting

This is low-value and may well be closed not planned; the seat is not arguing for it. It is filed because the observation was made and measured, and the alternative was to let it evaporate in a dev report. conversions and migrations were not checked for an equivalent "no schema closure by design" statement, so whether all three are intentional or only one is remains open.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions