# Caldura Design Log

A running journal of design cycles — explorations and studies, and the summarized
rationale for where each one landed.

This is the **light tier**, deliberately less formal than an Architecture Decision
Record (`decisions/`). An ADR carries a full burden of proof for a *committed*
choice with system consequences. A Design Log entry captures an *exploration*:
what was tried, what the current read is, and why — without pretending the
question is closed before it is.

## How the tiers relate

- **Design study** — the exploration package under `studies/<topic>/`: comp
  artifacts, a viewer (`index.html`), and a per-study `JOURNAL.md` blow-by-blow.
  Messy on purpose; it preserves the search path including rejected directions.
- **Design Log entry** (this file) — the one-screen outcome summary for a study:
  what was explored, the current read, a short rationale, a status, and links.
  The per-study `JOURNAL.md` is the detail; the entry here is the digest.
- **ADR** (`decisions/`) — the committed decision with full rationale. A cycle
  **graduates** to an ADR once its choice locks and touches the system (tokens,
  generators, shipping assets). The Log entry then flips to `landed` and points
  at the ADR.

**Status vocabulary:** `open` (exploring) · `landed` (decided — see ADR) ·
`superseded` (replaced by a later cycle) · `parked` (paused).

## Adding a cycle

1. Put the exploration in `studies/<topic>/` (artifacts + `index.html` + `JOURNAL.md`).
2. Add a row to the index and an entry below, starting at status `open`.
3. Keep the entry to a digest — push detail into the study's `JOURNAL.md`.
4. When it locks, write the ADR, set status `landed`, and link it.

---

## Index

| Cycle | Dates | Status | Study | One-line outcome |
|---|---|---|---|---|
| [Parent circular logo](#parent-circular-logo) | 2026-05-21 → 07-04 | `landed` | [studies/parent-circular-logo-study](studies/parent-circular-logo-study/) | **Ring mark F live on caldura.com** (F as-is; per-mode `parentMark` light+dark; favicon stays crucible-C). All 4 decisions locked + build layers L1–L8 done; sites consumed in `df310f9` ([rollout](studies/parent-circular-logo-study/rollout/index.html) · [runtime proof](studies/parent-circular-logo-study/rollout/runtime-proof.html)) |
| [Establishing v4](#establishing-v4) | → 2026-05-11 | `landed` | [systems/v4/comp-sheets](systems/v4/comp-sheets/) | Adopted v4 variants selected from a top-level field (warm steel / warm distinctive / blue-institutional / AI default) vs the v3.1 baseline; C-dot parent rejected; baseline locked |

---

## Entries

### Parent circular logo

- **Status:** `landed` — all four decisions locked, build layers L1–L8 done; the
  ring mark is live on caldura.com (sites `df310f9`, 2026-07-04).
- **Dates:** 2026-05-21 (initial field) → 2026-06-04 (mark + token model locked)
  → 2026-07-04 (published + consumed; landed).
- **Study:** [`studies/parent-circular-logo-study/`](studies/parent-circular-logo-study/) — open `index.html` for the viewer; `JOURNAL.md` for the full round log.

**Question.** Keep the Caldura parent mark circular while removing its failure
modes — breast/anatomy, eye/pupil (especially awkward beside AI), bullseye/target,
and generic faceted-infrastructure reads — and fix a second problem the context
proof exposed: the current mark goes weak below lockup scale, collapsing into a
vague warm dot at nav/favicon sizes.

**Explored.** A broad opening field of circular options, then ten cycles narrowing
from soft/atmospheric blooms → hard-vector contour rings → true-C halo geometry →
complete 3- and 4-ring systems. That last reframe shifted the evaluation from
"defend against anatomy reads" to "judge as a parent mark," surfacing a four-way
shortlist (A/G/D/F), a context stress-test across real sizes, and an F-focused
refinement branch. The F mark was then carried into a business-card application.

**Current read.**

- **F · Outer Heavy, Inner Air** — strongest *technical* candidate. Survives the
  widest range of sizes (32/24/16/12px); outer ring carries silhouette, inner air
  gives depth without a plain dot-in-circle. Risk: drifts toward instrument/gauge;
  needs warmth tuning.
- **G · Banded Source** — strongest *brand-feel* candidate. Warmest, closest to
  current Caldura. Risk: flattens to a warm coin at the smallest sizes.
- **A · Outer Authority** — safest benchmark. Serious, parent-level, but less
  distinctive.
- **D · Stepped Four-Ring** — likely drop. Works large, fails small as target/system
  mechanics. Kept for reference.
- **Current** — emotionally useful baseline, mechanically weak below lockup scale.

**Rationale (summarized).** The decision criterion that did the most work was
small-size durability, not large-stage beauty — the original problem (anatomy +
weak favicon) lives at 16/12px and OG scale, so the context proof at real sizes,
not the 168px stage, is the surface that ranks candidates. F wins there; G is the
emotional hedge; A is the fallback; D is eliminated by the same small-size test
that promotes F.

**Rollout (2026-06-03).** The cycle entered its rollout phase — a decision
walkthrough that locks the skipped locks before propagating the mark up the
stack ([rollout viewer](studies/parent-circular-logo-study/rollout/index.html)).
**Decision 1 — Lock the mark: resolved → F as-is.** F is the parent mark, taken
verbatim from the shipped card geometry (6 circles). A tune to drop F's two
interior hairlines (a residual bullseye/gauge read) was rendered side-by-side
and **declined**: the concentric rings are wanted for depth / crucible-aperture
feel, and small-size durability is identical either way. The only argument for
the tune was an optical taste call, not a failure mode. Geometry is now frozen.

**Decision 2 — Tokenize: resolved → C1 (2026-06-04).** The mark gets an explicit
per-**mode** `parentMark` palette — six role tokens (`ring · discOuter · discInner ·
hairlineMid · hairlinePale · core`), distinct from the text `accent` tokens — with
values authored per mode, *not* derived by formula (the hand-tuned light hexes don't
cleanly derive from `accent`; this matches the AI variant's per-mode token pattern in
`adopted-variants.mjs`). Light mode = the six locked hexes; **dark mode** and the **favicon
scale-variant** are authored by Decisions 4 and 3, which ride on it. Print (CMYK /
Pantone) is a color-space target of light mode owned by the card spec — not a token.

*Vocabulary (standard across the rollout):* **mode** = ground tone (light/dark) ·
**scale variant** = size floor (full/favicon) · **application** = where it ships
(web/deck/card/print) · **color space** = encoding (sRGB vs CMYK/Pantone).

**Decisions 3 & 4 — resolved (2026-06-04).** *Favicon → keep the crucible-C* (A):
at 16/12px the C reads as a distinct letterform while the ring collapses to a generic
target, and the C is the decoupled *family* favicon — no reason to overturn it. The
ring stays logo / lockup / OG only, so the palette needs no favicon scale-variant.
*Dark mode → author both modes* (A): the proposed dark values read clean on `#1A1210`
(bright gold ring `#C79A40`, near-ground warm discs, bright core `#E3BD5C`), and a
runtime lockup already points at a dark parent mark. **All four rollout decisions are
now locked — geometry + tokens frozen; build layers L1–L8 are mechanical.**

**Open / next.**

- **Build layers — L1–L6 done.** Foundation ring (L1), generator + per-mode tokens
  (L2), regenerated SVGs + validator + cross-platform raster pass (L3/L4), comp-sheet
  + viewer dark coverage (L4), card loop closed (L5), docs (L6: ADR-0007, CHANGELOG,
  architecture, this entry). **Clean-before-land done (2026-06-07):** the
  `variant-parent-light` → `variant-parent` rename (folder + identifier; mode-encoding
  filenames kept) and the `bloom-mark-height-comparison` diagnostic relabeled AI-only.
  **L7 runtime publish done (2026-07-03,** heat `ba00307`**):** both publish scripts
  ran — runtime OG slots (`sites/public/brand/og/og-parent.*`) now carry the ring
  mark (favicon unchanged per Decision 3) and the full v4 mirror synced. Verified in
  the [runtime proof](studies/parent-circular-logo-study/rollout/runtime-proof.html) —
  nav / tab / OG in situ across all three sites.
  **L8 sites consumption done (2026-07-04,** sites `df310f9`**):** caldura.com
  consumes the ring mark (nav logo, layout, globals) per the H1 handoff in
  `sites/docs/heat-feedback.md` (item cleared). **All eight layers done — landed.**
- **Business card (follow-up).** Direction B locked at MOO Standard; awaiting CMYK
  proof + PDF/X export path before the card application closes out.

**Recorded in.** [ADR-0007](decisions/0007-parent-mark-f-and-per-mode-tokens.md) —
the four locked decisions and rationale (status `accepted`; implementation L1–L8
complete 2026-07-04). The [runtime proof](studies/parent-circular-logo-study/rollout/runtime-proof.html)
shows the published assets in situ across all three sites. A short ADR or spec for
the business-card standard follows once the card lands.

---

### Establishing v4

- **Status:** `landed` — the adopted v4 baseline the current system documents.
- **Dates:** → 2026-05-11 (v4 strategic brief / architecture).
- **Artifacts:** [`systems/v4/comp-sheets/`](systems/v4/comp-sheets/) — top-level
  variant comparisons, the rejected C-dot direction, and the locked-lockups
  reference. Surfaced as a cycle in [`studies/index.html`](studies/index.html).

**Question.** Which brand-system direction does Caldura v4 adopt, across the
parent, Capital, and AI entities?

**Explored.** A top-level variant field — warm steel, warm distinctive,
blue-institutional, and AI default — measured against the v3.1 baseline, plus a
parent C-dot direction explored on its own.

**Outcome.** Adopted **parent-light**, **blue-institutional** Capital, and
**amber** AI. The **C-dot parent direction was rejected**, and the accepted
lockups were locked as the reference baseline the current system builds on.

**Note.** This is a retrospective digest. The supporting comparison sheets and
rejected directions were factored out of the brand-artifact viewer into this
cycle so the viewer documents the *current* system and the cycle records *how we
got there*.
