From d34d27503677cd9eee5870d88b3be8434eb02b1c Mon Sep 17 00:00:00 2001 From: Paul Keen <125715+pftg@users.noreply.github.com> Date: Fri, 21 Aug 2026 22:14:52 +0200 Subject: [PATCH] Demo board 20.08: pilot vote + artifact head-to-head; ledger + OKF sync Board carries the three live /next/ URLs, the four-persona ballots with self-objections, the Editorial 4-1 artifact head-to-head, the fable recommendation with its graft package, and the decision protocol - Paul picks. Ledger rows updated for #561-#564 and the #560 gate repair; OKF gains the BASE_URL local-production-check rule. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_011SP5gaqXEgUie8pdFrmbeJ --- .okf/build/test-gates.md | 11 +++ .okf/log.md | 16 ++++ .../20.06-clean-slate-v2-plan.md | 10 ++- .../20.08-register-demo-board.md | 80 +++++++++++++++++++ 4 files changed, 113 insertions(+), 4 deletions(-) create mode 100644 docs/projects/2608-site-design-system/20-29-strategy/20.08-register-demo-board.md diff --git a/.okf/build/test-gates.md b/.okf/build/test-gates.md index 5fb53df9b..8f4c4b123 100644 --- a/.okf/build/test-gates.md +++ b/.okf/build/test-gates.md @@ -703,3 +703,14 @@ That mismatch cost two confident wrong rejections of a correct review finding on #538 - §5.2 looked up in the v0.1 copy, twice - and a §9/§11 slip, since v0.1 §9 was conformance while v0.2 §9 is log structure. When a spec section is cited, resolve WHICH copy before disputing it. + +## Verifying production builds locally + +A plain production build hard-codes absolute asset URLs at the live domain, so +a browser pointed at the local tree **silently loads the LIVE site's +stylesheet** - every computed-style check then measures the wrong CSS and +passes or fails meaninglessly. Build with `BASE_URL` set to the local origin +and confirm the page loads its own fingerprinted `.min..css` before +trusting any computed value (caught 2026-08-21 during the pilot column-fix +verification; the earlier "inconclusive" production check had exactly this +cause). diff --git a/.okf/log.md b/.okf/log.md index 6ebca890b..4bcb6dca0 100644 --- a/.okf/log.md +++ b/.okf/log.md @@ -51,6 +51,22 @@ make it green: restructure same-day entries under one heading, and add `timestamp` to the 23 concepts missing it (anchored to each file's last commit time, which is verifiable - never invented). +## 2026-08-21 - three register pilots shipped; the comparison is controlled; Editorial recommended + +All three register pilots merged on the /next/ rail (#561 rescue-room, #562 +editorial, #563 precision, #564 cross-pilot column fix): one landing anatomy, +three skins, copy parity verified at DOM level (identical text tokens, tags, +class sequences). Four-persona panel + fable critique recorded in 20.08: +pilot vote B 2 / C 1 / A 1; artifact head-to-head Editorial 4-1; recommendation += Artifact Editorial + graft package (Precision's ledger table for data, +Rescue Room's mobile rhythm patterns - which are ANATOMY patterns, portable; +its template-silhouette weakness is intrinsic). Paul decides on the live URLs. +Durable instrument lesson added to test-gates: local production checks must +set BASE_URL or the browser silently loads the LIVE site's CSS. The shared +mobile table-clip defect (all three pilots, column 2 off-edge without +affordance) is deliberately deferred to the winner's graft round - fixing it +three times buys nothing. + ## 2026-08-21 - register pilot B, and the two ways a second pilot breaks the first pilot's gates `/next/pilots/editorial/fractional-cto/` ships the "Artifact Editorial" register diff --git a/docs/projects/2608-site-design-system/20-29-strategy/20.06-clean-slate-v2-plan.md b/docs/projects/2608-site-design-system/20-29-strategy/20.06-clean-slate-v2-plan.md index 44ee74fda..330c47b65 100644 --- a/docs/projects/2608-site-design-system/20-29-strategy/20.06-clean-slate-v2-plan.md +++ b/docs/projects/2608-site-design-system/20-29-strategy/20.06-clean-slate-v2-plan.md @@ -152,10 +152,12 @@ same commit · browser-measured AA + seams on anything touching a rendered page. | Track A: judging board | VOTE RUN — **D1 wins 4–1** (20.07) — then SUPERSEDED by the register-pilots flow (§Flow revision): no early crown, compare pilots instead | — | | Register research + shortlist | DONE — `10-19-research/10.01`: anatomy settled, 3 register candidates (A Rescue Room / B Artifact Editorial / C Engineered Precision), claims gate listed | — | | Paul's Claude Design artifacts | A finished (`3dc819cf`, full landing page — the anatomy blueprint); B in progress (`8eb98dd6`) | pilots port from these; B refreshes when Paul finishes | -| Pilot A (Rescue Room) | NOT STARTED | port CD artifact `3dc819cf` to `/next/pilots/rescue-room/fractional-cto/`; claims gate FIRST (pricing/audit-promise/stay-stats need Paul) | -| Pilot B (Artifact Editorial) | NOT STARTED — existing `/next/services/fractional-cto/` has the skin but article anatomy | rebuild on the shared landing skeleton | -| Pilot C (Engineered Precision) | NOT STARTED | tokens from 10.01 research; same skeleton | -| Lightning demo | BLOCKED on pilots | side-by-side links + screenshots + 3-line verdicts per lens; discussion; Paul picks | +| Pilot A (Rescue Room) | **MERGED** #561 (`fd303af8c`) + column fix #564; canon-substituted copy | — | +| Pilot B (Artifact Editorial) | **MERGED** #562 (`451770a9e`) + column fix #564; fonts self-hosted, fake-bold fixed | — | +| Pilot C (Engineered Precision) | **MERGED** #563 (`45780ad6f`); DOM-verified copy parity across all three | — | +| Lightning demo | **BOARD LIVE** — `20.08`: pilot vote B 2/C 1/A 1; artifact head-to-head Editorial 4–1; fable rec = Editorial + graft package | **PAUL PICKS** on the live /next/ URLs | +| Visual-gate repair | #560 merged (`e1882483c`): tolerance 0.0001 (was 50x blind), shield documented, fossilization + viewport-only + perceptual-floor documented; machine exonerated (reds = #540-stale baselines) | follow-ups: re-record ~36 macOS + 22-key Linux dispatch; below-fold coverage | +| Homepage build (Editorial) | Blueprint ready (CD `8eb98dd6` Homepage.dc.html, team section removed) | GATED on Paul: audit-exhibit sourcing (real/SAMPLE/rebuild) + "code audit" offer naming | | PR-1: v2 rail | **MERGED** #555 (`703fee12c`) — rail live: `/next/` noindexed staging, qtest holes closed (root layouts + v2 registry-derived keys), ADR-0006, mermaid source-aware. Screenshot job red = the documented 16-key #540 handoff only, verified key-by-key. | — | | PR-2: styled pilot | **MERGED** #557 (`38f744805`) — full content ported (overview/faqs/tenure-derived stats), styled per D1, canon-exact Clutch proof line, browser-verified AA (button 5.13:1), −85.6% gzip CSS vs legacy page. Screenshot red = the same 16-key #540 handoff set, verified key-by-key. | compare links: `/next/services/fractional-cto/` vs `/services/fractional-cto/` | | PR-3: flip | BLOCKED on lightning-demo winner + Paul's live review | flip = `type: next` on the real page + delete stub; checklist in ADR-0006 §5 | diff --git a/docs/projects/2608-site-design-system/20-29-strategy/20.08-register-demo-board.md b/docs/projects/2608-site-design-system/20-29-strategy/20.08-register-demo-board.md new file mode 100644 index 000000000..f83fd36d5 --- /dev/null +++ b/docs/projects/2608-site-design-system/20-29-strategy/20.08-register-demo-board.md @@ -0,0 +1,80 @@ +# 20.08 — Register lightning-demo board (2026-08-21) + +**Decision owner: Paul.** This board carries the pilots, the panel's votes, and +the fable recommendation. Nothing here is decided until Paul says so. + +## The three pilots — one anatomy, three skins + +Identical copy on all three, verified at DOM level (553 text tokens, one md5; +identical tag and class sequences). The only variable is the register. + +| | Live (noindexed staging on production) | Local | +|---|---|---| +| A — Rescue Room (warm humanist) | https://jetthoughts.com/next/pilots/rescue-room/fractional-cto/ | `http://localhost:/next/pilots/rescue-room/fractional-cto/` | +| B — Artifact Editorial (serif editorial) | https://jetthoughts.com/next/pilots/editorial/fractional-cto/ | …`/next/pilots/editorial/fractional-cto/` | +| C — Engineered Precision (ruled technical) | https://jetthoughts.com/next/pilots/precision/fractional-cto/ | …`/next/pilots/precision/fractional-cto/` | + +Legacy comparison: https://jetthoughts.com/services/fractional-cto/ + +## Panel vote (4 personas, sonnet; distinct lenses; forced self-objection) + +| Voter | 1st | 2nd | Core argument | +|---|---|---|---| +| Sam — burned founder (trust in 5s) | **B** | C | "reads like a document I can trust, not a pitch I'm being sold" | +| CFO — buyer (price justification) | **C** | B | "the itemized ledger that keeps this firm from ever surprise-billing me" | +| Mobile UX (390px rhythm) | **A** | C | threaded timeline, one-line nav, CTA color constancy start-to-finish | +| Brand strategist (differentiation + scale) | **B** | C | B *performs* "we show our work"; A is the template silhouette to escape | + +First choices **B 2 · C 1 · A 1**. C sits in every voter's top two (the safe +choice); **A took zero trust/brand/buyer votes** — warm-rounded consistently +read as template. Strongest self-objections, recorded: B "editorial polish is +what a firm hides behind when substance is missing" (Sam) and "could read as a +media property, not engineers" (Brand); C "am I paying for software or a +person's judgment?" (CFO); A "softer/consumer-app, less rigorous" (Mobile). + +## Artifact-level head-to-head (Paul's review request, 2026-08-21 evening) + +Paul asked for a review+vote between the two Claude Design artifact sets: +the **Artifact Editorial set** (`8eb98dd6`: homepage + service page — the only +entry proven as a SYSTEM across two pages) vs **Rescue Room** (`3dc819cf`: +service page only). Restricting each recorded ballot to those two: +**Editorial 3 — Rescue Room 1** (Sam, CFO, Brand → Editorial; Mobile → Rescue +Room), plus the fable vote → **Editorial 4–1**. Rescue Room's durable +contributions are its ANATOMY (the shared skeleton) and its mobile rhythm +patterns — both survive regardless via the graft package. + +## Fable recommendation: **B — Artifact Editorial, with a graft package** + +The tie-breaking observation: the mobile voter's pro-A arguments are **anatomy +patterns, not register properties** — a threaded timeline, one-line nav, and +CTA color constancy graft into any skin. A's weakness (template silhouette) is +intrinsic; B's weaknesses are all fixable inside the register. And B is the +only register that structurally matches the content strategy Paul's own Claude +Design artifacts converged on — selling with documents (redacted audit +exhibits, Friday-report cards) demands an editorial system. + +Graft package (applies to B if chosen): +1. **C's ruled-ledger table treatment** for data surfaces (the CFO vote, kept). +2. **A's mobile rhythm patterns**: threaded timeline, one-line nav at 390, + CTA stays accent-filled through the footer (B currently breaks this). +3. B mobile fixes: reduce all-caps density at small sizes; thread the step + boxes. + +## Defects on the board (status) + +- **A+B muted-column**: FIXED — #564 merged (`0c23219e8`); both pilots' + comparison columns now compute their muted tokens (A 5.95:1, B 5.74:1). +- **Shared mobile table clip** (all three clip column 2 off-edge, no scroll + affordance): affects all three equally → does not distort the comparison; + fixed in the winner's graft round, not three times. +- First-fold-only screenshot coverage (below-fold unverified by the suite; + browser-verified instead) — tracked follow-up. + +## Decision protocol + +Paul reviews the live links (phone + desktop), reads the votes, then picks: +**A / B / C / none (rerun with new directions)**. The two losing pilots' +stubs+CSS are deleted; the winner's register gets the graft round, then the +service-page flip (`type: next` on the real page) per ADR-0006 §5, then the +homepage build from Paul's Claude Design artifact (claims question pending: +the audit exhibit needs a real source or an honest SAMPLE label).