Build Log
Help Me Through This Moment
July 3, 2026
A zero-result search for 'wants to go home' surfaced a real content gap, then a real product idea: Known's Learn page needed to translate caregiver moments, not browse categories — now SteadyMePanel's situation buttons are wired to real, sourced guidance and the person's own captured facts. Continuation pass: /learn itself now renders every one of the corpus's 24 sources through that same Moment Card template, and all 19 older sources were rewritten from prose into real numbered steps to match.
Timeline
What shipped
5 new/reformatted corpus Sources (20-24) for 'Help Me Through This Moment' — wants-to-go-home and suspicion newly researched from primary sources; repeated-questions, personal-care, distress synthesized from already-verified content
lib/research/moments.ts — curated caregiver-phrase-to-moment matcher (conservative, exact-phrase-containment only, not fuzzy/NLP)
lib/research/momentBridge.ts — personalization bridge, surfaces the person's own captured portrait entries relevant to a matched moment
lib/research/resolveMoments.ts — server-side resolver combining corpus content + personalization, extracts scannable numbered steps for the acute in-the-moment UI
SteadyMePanel.tsx rebuilt — 5 real, sourced situations replace 4 cosmetic buttons that previously did nothing situation-specific
lib/knownCategories.ts — shared KnownCategory/CaptureCategory/FeatureCategory TypeScript union, wired into schema.ts, categoryMap.ts, buildBookPages.ts, CaptureSession.tsx, seedData.ts, and 2 API routes
Fixed a real parser bug in parseWisdomCorpus.ts (multi-paragraph field truncation) affecting the whole corpus, not just new content
Extended crucible.mjs's ANSWER_SUFFIX to require restating the specific question before answering — fixes a 3x-repeated shallow-response pattern
Copy fix: replaced 'memory/memories' count language ('16 memories captured') with 'details' across the home screen, portrait detail page, book page, and Known Card — 'memories' read as elegiac (implying the person had passed) in a live count display
toSituationCard() in categoryMap.ts — extends the Moment Card template (situation label + numbered steps + avoid + don't-overgeneralize) from just Sources 20-24 to all 24 corpus sources, reusing resolveMoments.ts's extractSteps() (exported, not duplicated)
SOURCE_SITUATION_LABELS map — warm, caregiver-facing situation labels for all 24 sources (e.g. "Won't shower or get dressed" instead of the raw citation "Dementia UK — Personal Hygiene")
/learn rebuilt to render every source (category browse + search results) through SituationCardView, the same template Steady Me pioneered for its 5 curated moments
Rewrote Sources 1-19's whatHelped field in public-care-wisdom-corpus.md from single prose paragraphs into numbered 'Practical response' lists, matching the structure of Sources 20-24 — grounded in each source's existing content, no fabricated steps (Source 7 and 12 kept honest about their limited/unverified source material)
Fixed a real content-sync bug: docs/known/brain/ (canonical) and products/known/content/brain/ (deploy copy) had silently diverged after the prior session only updated the deploy copy with Sources 20-24 — resynced by copying the fully-updated deploy file back to canonical
“I want to go home should not be a prior address only... home is a feeling. they look around and dont recognize anything. they don't feel at home, at ease.”