<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dotemacs/docs/design/theme-studio-perceptual-color-metrics-spec.org, branch main</title>
<subtitle>My Emacs configuration
</subtitle>
<id>https://git.cjennings.net/dotemacs/atom?h=main</id>
<link rel='self' href='https://git.cjennings.net/dotemacs/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/'/>
<updated>2026-06-15T15:24:40+00:00</updated>
<entry>
<title>docs: move specs to docs/specs/ with lifecycle-status filenames</title>
<updated>2026-06-15T15:24:40+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-06-15T15:24:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=3805128015688f057eefb7cc82a2a0f0ac67bba2'/>
<id>urn:sha1:3805128015688f057eefb7cc82a2a0f0ac67bba2</id>
<content type='text'>
Separate the 27 formal specs from working notes. Specs move to docs/specs/, notes stay in docs/design/. Each spec carries its lifecycle in the filename (-spec, -spec-doing, -spec-implemented, -spec-superseded) plus an authoritative ID and STATUS property drawer. The status came from checking each spec against the code, not the doc's own field: 6 implemented, 8 in progress, 12 not started, 1 superseded.

Inbound links become org-id links so future status renames don't break them; code-comment paths repoint to docs/specs/. Working notes, inventories, reviews, and brainstorms stay in docs/design/.
</content>
</entry>
<entry>
<title>docs(theme-studio): add perceptual color metrics spec</title>
<updated>2026-06-08T20:52:51+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-06-08T20:52:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=7984b201c2719fe402506dbc72c836ea48524be3'/>
<id>urn:sha1:7984b201c2719fe402506dbc72c836ea48524be3</id>
<content type='text'>
The spec adds OKLCH editing, perceptual-lightness and APCA readouts, and a pairwise ΔE distinguishability check to the theme-studio, so it can build deliberately low-contrast themes by metric instead of by eye. The testing strategy extracts the color math into a Node-unit-tested colormath.js core, with the browser hash tests reduced to UI wiring and coverage measured on that core. todo.org carries the five implementation phases and the manual-validation checklist.
</content>
</entry>
</feed>
