Skip to content

feat(cli)!: refuse a generate name outside the charset spec declares for an object name #23712

feat(cli)!: refuse a generate name outside the charset spec declares for an object name

feat(cli)!: refuse a generate name outside the charset spec declares for an object name #23712

Triggered via pull request September 10, 2026 12:05
Status Success
Total duration 53s
Artifacts

pr-automation.yml

on: pull_request
Check PR Size
21s
Check PR Size
Check Changeset
49s
Check Changeset
Auto Label
14s
Auto Label
Fit to window
Zoom out
Zoom in

Annotations

1 notice
Check Changeset: .changeset/generate-name-charset-gate.md#L0
ADR-0087 exemption (no-migration-prescription): Nothing authorable or stored moves. No `packages/spec` key, no Zod schema, no authored metadata property and no stored `sys_metadata` shape changes its spelling, type or legality — the charset this gate applies is the one spec ALREADY declares for an object `name`, read rather than redeclared — so `objectstack migrate meta` has nothing to visit, `spec-changes.json` has nothing to project and the upgrade guide has no row to gain. What moves is which ARGUMENT a scaffolding command accepts at authoring time; a name it now refuses was never a legal object `name` in the first place, so no metadata written from an accepted name needs conversion, and files already scaffolded from a refused name are untouched by this change. The remedy is to type a name spec accepts, delivered by the command's own loud refusal at the terminal and by this changelog — the source-code / invocation-side audience the ledger explicitly does not serve (ADR-0087 D8). The other four categories are closed on facts: `@objectstack/cli` publishes to npm (not `unpublished`); no ADR-0087 id is minted in this diff (not `registered`) and none pre-dates the base that would cover it (not `already-registered`); no exported declaration changes shape at all — the gate is a file-local function absent from the package entry — so neither `runtime-interface-only` nor `type-surface-only` has a subject.