Filed by the domain:engine execution seat while reviewing PR #14608 (#13925), whose runtime parity pin lists ui-plugin among the non-members PluginSchema.type refuses and names it "the spelling a stale describe() string still uses". Recording only — no severity asserted; routing and grading are triage's. packages/spec is the spec seat's surface; nothing here was touched by the engine lane.
What was measured (on origin/maina5b95ee6e)
packages/spec/src/kernel/plugin.zod.ts:
:121–:124 — PluginSchema.type is z.enum(['standard', ...CORE_PLUGIN_TYPES]), and CORE_PLUGIN_TYPES (:89) spells the frontend member ui.:126 — staticPath describe: "Absolute path to static assets (Required for type="ui-plugin")".:127 — slug describe: "URL path segment (Required for type="ui-plugin")".:128 — default describe: "Serve at root path (Only one "ui-plugin" can be default)".
ui-plugin is not a member of the enum: PluginSchema.safeParse({ type: 'ui-plugin' }) is refused with invalid_value at path type (measured by the #13925 dev on the built dist and pinned in packages/core/src/plugin-type-closed-set.test.ts on PR #14608). The three describe strings therefore point an author at a value the same schema refuses one line above. content/docs/plugins/anatomy.mdx also uses the ui-plugin spelling in prose (section 6, "Provides CSS tokens and asset overrides to ui-plugins"), which is the docs half of the same drift.
Re-check: git grep -n "ui-plugin" origin/main -- packages/spec/src/kernel/plugin.zod.ts content/docs/plugins/anatomy.mdx.
Dedup
search_issues "plugin.zod.ts describe strings still say type=ui-plugin staticPath slug default stale spelling of the ui plugin type" → 4 results (#13925 the narrowing card, #14589 the skills/** copy of the Plugin interface, #13285 plugin-registry consumers, #13762 closed TSDoc under-enumeration) — none names the describe strings.
Refs: #13925 / PR #14608 (where the pin surfaced it) · #13762 (the TSDoc half of the same enumeration drift, closed) · #14589 (the skills/** half, finding).
Back-link: issue 13925, PR 14608.
Filed by the
domain:engineexecution seat while reviewing PR #14608 (#13925), whose runtime parity pin listsui-pluginamong the non-membersPluginSchema.typerefuses and names it "the spelling a stale describe() string still uses". Recording only — no severity asserted; routing and grading are triage's.packages/specis the spec seat's surface; nothing here was touched by the engine lane.What was measured (on
origin/maina5b95ee6e)packages/spec/src/kernel/plugin.zod.ts::121–:124—PluginSchema.typeisz.enum(['standard', ...CORE_PLUGIN_TYPES]), andCORE_PLUGIN_TYPES(:89) spells the frontend memberui.:126—staticPathdescribe: "Absolute path to static assets (Required for type="ui-plugin")".:127—slugdescribe: "URL path segment (Required for type="ui-plugin")".:128—defaultdescribe: "Serve at root path (Only one "ui-plugin" can be default)".ui-pluginis not a member of the enum:PluginSchema.safeParse({ type: 'ui-plugin' })is refused withinvalid_valueat pathtype(measured by the #13925 dev on the built dist and pinned inpackages/core/src/plugin-type-closed-set.test.tson PR #14608). The three describe strings therefore point an author at a value the same schema refuses one line above.content/docs/plugins/anatomy.mdxalso uses theui-pluginspelling in prose (section 6, "Provides CSS tokens and asset overrides toui-plugins"), which is the docs half of the same drift.Re-check:
git grep -n "ui-plugin" origin/main -- packages/spec/src/kernel/plugin.zod.ts content/docs/plugins/anatomy.mdx.Dedup
search_issues"plugin.zod.ts describe strings still say type=ui-plugin staticPath slug default stale spelling of the ui plugin type" → 4 results (#13925 the narrowing card, #14589 theskills/**copy of thePlugininterface, #13285 plugin-registry consumers, #13762 closed TSDoc under-enumeration) — none names the describe strings.Refs: #13925 / PR #14608 (where the pin surfaced it) · #13762 (the TSDoc half of the same enumeration drift, closed) · #14589 (the
skills/**half,finding).Back-link: issue 13925, PR 14608.