oficina / docs Public

Spec: estilo's address, the estilo-* prefix, and where the guidance lives

Facts, not the parked decision. estilo exists at oficina/estilo -- which
also resolves a conflict this spec flagged rather than guessed at, where
two sessions reported contradictory states and the one claiming it did not
exist turned out to have strengthened 'hasn't started yet' into 'doesn't
exist, deliberately'.

The prefix rule is the one most likely to save rework: estilo's components
take estilo-*, never rst-*. That namespace is the framework's and a future
version may claim a name we took -- not hypothetical, since rastrillo's own
stage-1 migration found rst-form__foot and rst-form-foot both live inside
ui.

Records the guidance's location and two honest caveats on it: it has not
been through the copy gate, and its line about dropping the class spelling
before 1.0 is unstarted intent rather than shipped fact.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011F5CivVm4CmL9ByfSSAaXA
Paul Campbell pushed by paul@keymail.dev 67c510d1713dfb9d561d416ecaeea8ca58f1cf8d parent 4e062c0
1 file changed, +17 −0
  • docs/superpowers/specs/2026-08-30-docs-design.md +17 −0

CI passed — run details

diff --git a/docs/superpowers/specs/2026-08-30-docs-design.md b/docs/superpowers/specs/2026-08-30-docs-design.md
index ecefe80..e623c9c 100644
--- a/docs/superpowers/specs/2026-08-30-docs-design.md
+++ b/docs/superpowers/specs/2026-08-30-docs-design.md
@@ -712,6 +712,23 @@ Paul, 2026-08-30, correcting earlier advice this spec had taken. An
inspector panel shared by a document editor and a spreadsheet is the
*suite's* component; the design system stays rastrillo's.
+The variant is **estilo**, at `amadan.net/oficina/estilo` — named by Paul and
+created 2026-08-30. Primitives stay app-local until one app copies or imports
+another's; **a copy is the trigger**, because "a second consumer appears"
+never fires while copying is cheap and immediate.
+
+**Estilo's components take an `estilo-*` prefix, never `rst-*`.** That
+namespace belongs to the framework and a future version may claim a name we
+took — which is not hypothetical: rastrillo's own stage-1 migration found
+`rst-form__foot` and `rst-form-foot` both live inside `ui`. The guidance is
+at `docs/site/design-system.md` in the rastrillo repo, published at
+rastrillo.org/docs/design-system once stage 2 lands; it covers the
+customisation ladder, where app-specific components belong, the extraction
+rule, and upgrading via `doctor`. Two caveats on it: it has not been through
+the copy gate, so its prose may change; and its line about the class spelling
+being dropped before 1.0 describes stage 3, which is ruled and unstarted —
+intent rather than a shipped fact.
+
The correction is worth keeping because the reasoning was subtly wrong
rather than simply wrong. Two callers at design time is the right bar for
**extraction**, and Sheets and Docs applied it correctly. But it says