Build Log · July 2, 2026
Known Card: tense, curation, tiers, and the start of history
Fixed obituary-voice seed data, split the Known Card into six research-backed core fields vs. secondary care details, closed a real editing/data-integrity bug, and designed (but did not build) day-level history so families can look back at what worked.
- Known
- Content
- Data model
- UX
- new DB columns/tables (cardOverrideIds, card_snapshots)
- 2
- core Known Card fields now research-backed
- 6
- new guides written (30-second card, day history spec)
- 2
- Anvils/Strikes captured
- 2
new DB columns/tables (cardOverrideIds, card_snapshots)
core Known Card fields now research-backed
new guides written (30-second card, day history spec)
Anvils/Strikes captured
Timeline
Start
Tense collision in seed data
Zeb flagged "Rick was a machinist... still lights up" — obituary voice in a product about someone still alive
+45m
30-second card research gap found
Guide 2 written from existing research corpus; found KnownCard.tsx already had 10 fields, corrected an early wrong assumption
+90m
Core/secondary tier split shipped
Six research-backed fields visually separated from four secondary care-detail fields
+2h
Editing bug found and fixed
Free-text card edits silently broke entry-level guidance links; added override tracking + reset, with a real schema fix for reload correctness
+2h30m
Print investigation — parked
3-page print bug not resolved after several attempts; logged with what's ruled out for next session
End
Day history designed, not built
Card snapshot write-path shipped; day-rating + calendar view spec'd in Guide 3 for next session
What shipped
Fixed obituary-voice tense in demo-rick seed data and lib/prototype/seed.ts — subjects stay present tense while alive
Documented the tense rule as a design commitment in docs/known/ethics-and-boundaries.md
Wrote Guide 2 (30-second caregiver card) from the existing research corpus — found and corrected the six-field structure already partially built
Fixed the portrait-page Known Card preview to use curated cardLabel enrichments instead of raw family answers
Extended the preview to show all six core fields (was 3) plus the one-sentence portrait and a scoped print button
Split KnownCard.tsx's 10 sections into a core tier (6 research-backed fields) and a secondary tier (safety/personalCare/routine/meals), visually separated by a divider
Fixed a real data-integrity bug: free-text card edits were breaking the per-entry "Edit guidance" links and contributor chips, which stayed visible pointing at wording no longer shown on the card
Added portraits.cardOverrideIds (schema) so 'hand-edited vs. computed' state survives a page reload, not just an in-session guess
Added a 'Reset to auto-generated' action per overridden section
Attempted one-page landscape print for the full card — grid-to-multi-column fix applied (real Chromium bug avoided) but the 3-page blank-page issue persists in both orientations; parked with a documented ruled-out list
Added portraits.cardOverrideIds and a new card_snapshots table (one row per portrait per calendar day) with upsert-on-save write path wired through the PATCH route and KnownCard.tsx
Wrote Guide 3 (day history spec) — card snapshot history, a proposed day_ratings table for a manual no-AI good/rough/mixed toggle, and an explicitly deferred, ethics-gated trend/forecast section
Captured 2 Anvils/Strikes on separating 'what happened' (data) / 'how was it' (human judgment) / 'what does it mean' (AI inference) as different governance tiers
“The AI will get involved in a future stage of trend, etc...”