#+TITLE: Display-Format Single Source of Truth #+AUTHOR: Craig Jennings #+DATE: 2026-07-19 #+TODO: TODO | DONE #+TODO: DRAFT READY DOING | IMPLEMENTED SUPERSEDED CANCELLED * DRAFT Display-Format Single Source of Truth :PROPERTIES: :ID: ae247f1a-e48f-4d5e-8556-dd1f0aa34a69 :END: - [2026-07-19 Sun] DRAFT — stub. Split out of the desktop-settings panel spec (Craig, 2026-07-19): format pickers do not belong in that panel. Filed to hold the problem until it gets its own design pass. Not started. * Status :PROPERTIES: :ID: a76a41df-85c2-4137-9ba5-eff04db529a5 :END: - [2026-07-19 Sun] DRAFT — stub only. Problem framed below; goals, decisions, and phases to be developed when Craig picks this up. * Metadata | Field | Value | |--------+-----------------------------------------| | Status | draft | |--------+-----------------------------------------| | Owner | Craig Jennings | |--------+-----------------------------------------| | Repo | dotfiles | |--------+-----------------------------------------| | Kin | desktop-settings panel (parent), clock | | | module, weather chip (consumers) | |--------+-----------------------------------------| * Problem Display-format settings for time, date, and weather are stored independently by each program that renders them. The clock module has its own format ring, the weather chip its own, and any future consumer would carry a third. There is no canonical place a user sets "this is how I want the time shown" that every surface reads. The design problem is a single source of truth: where the canonical time/date/weather format lives, and how every consumer reads it without drift. Solve that first; the pickers (the UI that edits the format) are downstream of where the value is stored. This was pulled out of the desktop-settings panel spec ([[file:2026-07-02-desktop-settings-panel-spec.org][desktop-settings panel]]) on 2026-07-19 — format editing does not belong in that panel, and the real work is the storage/consumption model, not a picker widget. * Goals (To be developed. At minimum: a canonical store for time/date/weather format; a read path every consumer uses; a migration for the existing per-consumer formats.) * Decisions (None yet — Craig has not started this.) * Implementation phases (To be developed once the goals and the storage model are settled.)