Trust UX — Design Specification (P8 Prototype)
How attribution renders, how event-ledger flags are surfaced, and how click-through to sources works in Quartz output.
1. Attribution Rendering (DD21)
In Markdown (vault)
- ⊕ "Paper oil manipulations merely buy time" [@Stuart Hardy] (→ [[slack-digest-2026-04-03]])
In Quartz (published site)
- The
[@Stuart Hardy]renders as a styled inline tag (no link — members are not linkable entities) - The
(→ [[slack-digest-2026-04-03]])renders as a clickable link to the source-summary page - The ⊕/⊖/⚖ icons render with colour: green/red/amber
- Hover behaviour: none at MVP (DD21 — “no hover popovers or provenance badges in MVP”)
Click-through chain
Theme page claim → source-summary page → raw source (if available)
- Source-summary pages (in
wiki/sources/) contain extracted key claims + metadata - Raw sources (in
raw/) may be linked from source-summaries but are NOT published to Quartz (raw Slack messages, PDFs, etc. stay private) - If a raw source is a Slack message: link to Slack directly (requires Slack auth)
- If a raw source is an R2 doc: link to R2 viewer or embed excerpt in source-summary
2. Event Ledger Surfacing (DD22)
On theme pages
The “Events reckoned with” section renders as a timeline at the bottom of each theme page:
📅 2026-03-12 — Hormuz closure Day 12: Iranian leader declares Strait closed — reckoned
📅 2026-03-14 — R051 trade structure deployed at 82% closure probability — reckoned
📅 2026-04-04 — Brent above $129 — ⚠ UNRECKONED
Soft flags (unreckoned events)
Rendered as a banner at the top of the theme page, below the one-line summary:
⚠ This page has not reckoned with: Brent above $129 (2026-04-04), US Navy escort deadline lapsed (end of March)
- Banner is amber/yellow, not red — it’s a freshness signal, not an error
- Banner links to the events ledger section for detail
- In the daily digest, unreckoned events surface as a separate section (see P6 prototype)
In Quartz
- The banner renders as a Quartz callout/admonition block (amber)
- The timeline renders as a styled list with date badges
3. Disagreement Rendering (DD21)
Arguments-and-rebuttals format
### Is the V-shaped recovery thesis valid?
**For (V-shape):**
- WTI-Brent spread narrowing suggests limited duration pricing [@Gaetan Warzee]
- Historical precedent: every Hormuz threat since 1984 resolved without permanent closure
**Against (structural):**
- Physical bypass capacity (3.1M bpd) cannot close 17.5M bpd deficit [@Stuart Hardy]
- "Paper oil manipulations merely buy time" — FFTT [@Stuart Hardy]
- Bullets, never paragraphs (DD21)
- Each side attributed to specific members
- No editorial verdict inline — the thesis health dashboard provides the aggregate view
4. Quantitative Context Rendering (DD33)
Signal snapshots
📊 Quantitative Context
| Signal | Value | As of | Status |
|--------|-------|-------|--------|
| Brent crude | $129.34 | 2026-04-04 | ⚠ STALE (6h budget) |
| Brent-WTI spread | $44 → ~$32 (narrowing) | 2026-04-04 | ⚠ STALE |
| BWET (tanker ETF) | +243% YTD | 2026-03-18 | ⚠ STALE |
| Turbulence (composite) | — | — | NOT CONNECTED |
| Credit Composite | — | — | NOT CONNECTED |
- Stale values show the staleness budget and last-verified timestamp
- NOT CONNECTED signals are listed but greyed out — they exist in the signal registry but aren’t yet wired to this theme
- In production, live values would be fetched at Quartz build time (DD19)
5. Quartz-Specific Decisions
| Decision | Choice | Rationale |
|---|---|---|
| Theme page URL pattern | /themes/iran-hormuz-supply-shock/ | Matches vault slug |
| Source page URL pattern | /sources/slack-digest-2026-04-03/ | Matches vault slug |
| Entity page URL pattern | /entities/stuart-hardy/ | Matches vault slug |
| Landing page | index.md → / | DD36 — index.md is the published landing page |
| Navigation | Auto-generated from index.md category tables | No manual nav config |
| Search | Quartz built-in full-text search | Sufficient for MVP |
| Auth | Cloudflare Access (email allowlist) | DD7 confirmed |
| Custom CSS | Minimal — amber callouts for unreckoned events, coloured ⊕/⊖/⚖ | Keep default Quartz theme |
6. What This Prototype Validates
After reviewing the P1–P7 prototypes through this trust UX lens:
- Attribution works. The
[@Name]+(→ [[source]])pattern is readable and provides the click-through chain. No fancy UI needed at MVP. - Event ledger works. The soft-flag banner is clear and non-intrusive. The timeline section is scannable.
- Disagreement rendering works. Arguments-and-rebuttals in bullets is much more readable than a wall of text. Member attribution on each side makes it social.
- Freshness budget enforcement is the hard part. Every numerical value needs a last-verified timestamp and a budget. The lint loop (DD27 loop 4) must check this. At MVP, manual staleness flags are acceptable; automated live-fetch at Quartz build time is the target.