FABRIC.md: lock REPL prompt format and colors

Punch list §25 item 4.4 complete.
Design-only, no code. Format [VM name] ok>; ok> reuses existing
FB_ANSI_PALETTE[14] bright cyan (0x55FFFF); [VM name] gets a fresh literal
orange (0xFFA500), since no orange exists in the ANSI palette. Verified: no
implementation, just literal values checked against the existing codebase
constants and written into FABRIC.md for 4.4a/4.4c to consume.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Robert Allan James
2026-08-11 07:31:15 -04:00
co-authored by Claude Sonnet 5
parent a079028b40
commit 838dcab5d2
+15 -1
View File
@@ -4980,7 +4980,7 @@ document and committing that amendment as its own item.*
*and keyboard work above. 4.5 (renumbered from 4.4, 2026-08-11) is unaffected by anything*
*added above this marker.)*
- [ ] **4.4 — Design-only: lock the prompt format and color values.** No code. Write down the
- [x] **4.4 — Design-only: lock the prompt format and color values.** No code. Write down the
exact target string — `[VM name] ok>` for now, `(user)` added later per 4.4n — and the exact
color values for the bracketed VM name and for `ok>` against
[`repl-mockup.png`](repl-mockup.png). Captain Bob's spoken values (orange, cyan) were both
@@ -4990,6 +4990,20 @@ document and committing that amendment as its own item.*
document, referencing the mockup.
*Refs:* §25.5, §27.8.
> **DONE 2026-08-11.** Format: `[VM name] ok>` — e.g. `[Hera] ok>`, `[Hermes] ok>`. The
> entire bracketed substring (brackets included) renders in one color; `ok>` (including its
> trailing space) renders in a second, distinct color. Values chosen with Captain Bob,
> checked against what already exists in the codebase rather than invented cold:
> - **`ok>`: bright cyan, `0x55FFFF`.** Reuses `FB_ANSI_PALETTE[14]`
> (`framebuffer.c:30`) as-is — no new constant, stays consistent with the ANSI palette the
> rest of the console already uses.
> - **`[VM name]`: standard web orange, `0xFFA500`.** No orange exists anywhere in the
> classic 16-color ANSI palette (checked — `FB_ANSI_PALETTE` has none), so this is a fresh
> literal value, not a reused constant. `TTF-TEXT`'s `color` argument is a raw RGB value
> (not an ANSI palette index), so this is not a constraint — any RGB is valid.
> These are literal `FB_RGB()`-equivalent values for 4.4a/4.4c to consume directly; no
> implementation performed by this item, per its own "no code" scope.
- [ ] **4.4a — Build `[VM name]` bracket text in the prompt, monochrome.** Replace the two
existing, mutually inconsistent VM-identity conventions — `console.c`'s per-line `[Name]`
prefix (`console_set_vm_name()`/`g_active_vm_name`, unaffected/out of scope for non-prompt