Architecture Decision Records¶
Each ADR records one decision — the context, the choice, and its consequences —
so the why survives after the plan that produced it is gone. Conclusions, not
plans: these are permanent. Superseding a decision means adding a new ADR that
marks the old one Superseded, never editing the record of what was decided.
These were reverse-written on 2026-07-01 from the project's original design record; the decisions themselves were settled during initial design (2026-06) and are reflected in the shipped v0.3.0 code.
| ADR | Decision |
|---|---|
| 0001 | Name the crate timeglyph |
| 0002 | Canonical spine is PosixNs(i128) — POSIX, not UTC |
| 0003 | Partition leap-aware time scales (GPS/TAI/NTP) out of PosixNs |
| 0004 | Reuse jiff/hifitime; write zero calendar math |
| 0005 | Interpretation is scored and multi-candidate — never one "detected format" |
| 0006 | One crate, lib + thin CLI (Humble Object) — no -core split |
| 0007 | Clean-room validation: specs + time_decode oracle; never decompile DCode |
| 0008 | Lunisolar conversion is convention-relative — --tz required |
| 0009 | timeglyph-lens zone & time display conventions (amber chip, no ⚠, Local (…), etc.) |
| 0010 | Alt-calendar visibility default per surface — lens GUI opt-out (all on), CLI cal opt-in (none) |