aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/specs/theme-studio-editable-height-spec.org10
1 files changed, 8 insertions, 2 deletions
diff --git a/docs/specs/theme-studio-editable-height-spec.org b/docs/specs/theme-studio-editable-height-spec.org
index eafaea64..4451053e 100644
--- a/docs/specs/theme-studio-editable-height-spec.org
+++ b/docs/specs/theme-studio-editable-height-spec.org
@@ -3,16 +3,17 @@
#+TODO: TODO | DONE
#+TODO: DRAFT READY DOING | IMPLEMENTED SUPERSEDED CANCELLED
-* READY Theme-Studio Spec: Editable Face Height
+* DOING Theme-Studio Spec: Editable Face Height
:PROPERTIES:
:ID: acf7e080-d5ae-4500-b3fd-30dcaa0fb8de
:END:
+- 2026-07-02 Thu @ 22:11:05 -0400 — DOING: spec-response Phase 6 decomposed the five phases into build tasks under todo.org's "theme-studio: editable face height" parent (:SPEC_ID: stamped); seed fix shipped separately (1e10023c)
- 2026-07-02 Thu @ 21:52:38 -0400 — READY: spec-review pass (code read + all five Decisions settled by Craig, two review findings folded in); rubric Ready
- 2026-07-02 Thu @ 17:02:46 -0400 — stubbed from the nov-reading modeline-height bug discussion (Craig + session); DRAFT, needs a full read + decision pass before it is READY
* Metadata
-- Status: ready
+- Status: doing
- Source: 2026-07-02 diagnosis of "nov reading pane's modeline is suddenly huge." Root cause: the modeline height padding (=cj/--modeline-padding=, a =display '(height 1.15)= on a leading space) scales relative to the buffer's =default= face; =mode-line='s own =:height= is unspecified, so it inherits the enlarged reading font nov-reading remaps in. The minimal fix (seed an absolute =:height= on the mode-line faces in =face_data.py=) ships separately and does not block this spec — note it had NOT yet shipped as of the 2026-07-02 review (no chrome heights in =face_data.py=; =WIP-theme.el= mode-line still height-free), so it is tracked as immediate follow-on work. This spec covers the *durable* half — making height a first-class editable attribute in the studio so it can be tuned and re-exported without hand-editing the generated theme.
- Related: [[file:../design/theme-studio-face-rules.org][theme-studio face-rules]] (the "every themeable attribute is a real editable control" principle — this is why the mode-line box became a real =:box=), [[file:theme-studio-palette-columns-spec.org][palette-columns spec]] (adjacent studio attribute-model work)
@@ -93,6 +94,11 @@ Studio gen/test/check green; a coverage/round-trip test for height kinds; update
* Review and iteration history
+** 2026-07-02 Thu @ 22:11:05 -0400 — Claude Code (.emacs.d) — responder
+- *What:* spec-response Phase 6. All findings and decisions were already complete (same-day fused review pass), so this pass built the implementation-task breakdown: five phase tasks + the IMPLEMENTED-flip task under the todo.org parent "theme-studio: editable face height (absolute vs relative)", =:SPEC_ID:= stamped, all =:solo:= (screenshot harness self-verifies the visuals; the one human check — the nov modeline — already sits under Manual testing and validation from the seed fix). Completeness pass: every phase, Decision, and both findings map to a task; Phase 1 gained the load-time kind-inference migration for existing saved themes. Lifecycle READY → DOING.
+- *Why:* Craig confirmed Ready and asked for the decomposition; the seed fix (1e10023c) had just landed, so Phase 4's scope was adjusted to the remaining chrome faces.
+- *Artifacts:* todo.org parent + six child tasks; commit 1e10023c (seed fix); this spec's Decisions and Review findings sections.
+
** 2026-07-02 Thu @ 21:52:38 -0400 — Claude Code (.emacs.d) — reviewer + responder
- *What:* Full spec-review pass on the same-day stub. Code read (=build-theme.el= export, =face_data.py= seeds, =app.js= face model + mock editor preview, =WIP.json= live data) produced two findings — the JSON integral-float kind collapse (blocking; verified against live =WIP.json= data) and the not-yet-shipped seed fix. Craig settled all five open Decisions in one pass (control shape, exposed-face set, entry unit, preview surfaces, artifact ownership). Findings folded in, Goal 3 and Phases 1-4 updated, rubric =Ready=, status flipped DRAFT → READY.
- *Why:* Craig picked the spec's read + decision pass as the session's work; the stub was authored earlier the same day and needed the gate run before spec-response can decompose phases.