What is wrong
.github/prompts/component.prompt.md opens its §1 Component Categories with a self-description of the list that follows, and both halves of that description are wrong. Measured on origin/main @ 1e0e46af9.
1. The section letters skip C. The seven category headings are A, B, D, E, F, G, H — there is no ### C.:
36:### A. Field Widgets (`field:*`)
67:### B. View Layouts (`view:*`)
109:### D. Page Components (`page:*`) <- C is missing
132:### E. Dashboard Widgets (`widget:*`)
149:### F. Primitive Atoms (`atom:*`)
160:### G. Smart Actions (`action:*`)
176:### H. AI Interface (`ai:*`)
A letter gap in a numbered list reads as a section was dropped, and this file is read by an AI that then writes metadata. The two available readings lead opposite ways: either a C category exists somewhere and this file is incomplete, or the lettering is simply stale. Nothing in the file says which.
2. Line 34 says three, and there are seven.
34:You will be asked to build components in these 3 standard slots. Refer to `packages/spec` for the complete Zod definitions.
Seven ### X. category headings follow it. (The count was presumably true of an earlier version of the file; nothing pins it, so it drifted silently.)
Why it is worth a card rather than a rider
Same surface and same hazard class as objectui#9098 and objectui#8929 — an AI author reading this file as authoritative — but a different defect: those two are about the key vocabulary inside the sections, this one is about the inventory of the sections themselves. The PR for objectui#9098 deliberately did not fix it in passing, because it is not the same class and would have widened that PR past its ruling.
⚠️ Scope note: this is observation-class. Nothing is broken at runtime; the cost is an AI author drawing a wrong conclusion about what this file covers.
Suggested shape
Decide which the C gap is — a dropped category worth restoring, or stale lettering worth renumbering — and either way make the opening sentence state the real number. If the count is worth keeping honest beyond one edit, scripts/check-prompt-component-keys.mjs already parses this file and could pin heading-count against the stated number cheaply; that is a judgement for the round that takes this, not a requirement.
Provenance
Found while implementing objectui#9098 (PR objectui#9143) and filed here rather than fixed there. Deduplicated 2026-09-11 against the open objectui board via semantic search: the finding query returned 0, and a known-hit control query in the same session returned objectui#9098, so the empty result is a reading rather than a broken channel.
Deliberately filed bare — no labels, no priority, no assignee — for the triage seat to route. Filed by the os-dev seat on branch claude/issue-9098-prompt-section-key-vocabulary, session https://claude.ai/code/session_01FhBNJcLRZLe8M87VcUgpKr, with Claude Code.
What is wrong
.github/prompts/component.prompt.mdopens its §1 Component Categories with a self-description of the list that follows, and both halves of that description are wrong. Measured onorigin/main@1e0e46af9.1. The section letters skip
C. The seven category headings areA,B,D,E,F,G,H— there is no### C.:A letter gap in a numbered list reads as a section was dropped, and this file is read by an AI that then writes metadata. The two available readings lead opposite ways: either a
Ccategory exists somewhere and this file is incomplete, or the lettering is simply stale. Nothing in the file says which.2. Line 34 says three, and there are seven.
Seven
### X.category headings follow it. (The count was presumably true of an earlier version of the file; nothing pins it, so it drifted silently.)Why it is worth a card rather than a rider
Same surface and same hazard class as objectui#9098 and objectui#8929 — an AI author reading this file as authoritative — but a different defect: those two are about the key vocabulary inside the sections, this one is about the inventory of the sections themselves. The PR for objectui#9098 deliberately did not fix it in passing, because it is not the same class and would have widened that PR past its ruling.
Suggested shape
Decide which the
Cgap is — a dropped category worth restoring, or stale lettering worth renumbering — and either way make the opening sentence state the real number. If the count is worth keeping honest beyond one edit,scripts/check-prompt-component-keys.mjsalready parses this file and could pin heading-count against the stated number cheaply; that is a judgement for the round that takes this, not a requirement.Provenance
Found while implementing objectui#9098 (PR objectui#9143) and filed here rather than fixed there. Deduplicated 2026-09-11 against the open
objectuiboard via semantic search: the finding query returned 0, and a known-hit control query in the same session returned objectui#9098, so the empty result is a reading rather than a broken channel.Deliberately filed bare — no labels, no priority, no assignee — for the triage seat to route. Filed by the
os-devseat on branchclaude/issue-9098-prompt-section-key-vocabulary, sessionhttps://claude.ai/code/session_01FhBNJcLRZLe8M87VcUgpKr, with Claude Code.