"subject":"Couple subsite live (auth'd, offline, opt-out wiring) + Clarté persistence/offline",
"subject":"Couple subsite live (auth'd, offline, opt-out wiring) + Clarté persistence/offline",
"completedAt":"2026-09-21",
"completedAt":"2026-09-21",
"learnings":"POC apps silently lose all answers on reload unless persistence is shimmied into their state object at init AND every mutation point; two instruments restart item numbering per section, so bare-index storage keys overwrite 69/190 answers — prefix section-repeats. Static-site PII gating: nginx basic auth on the location block, htpasswd needs a user:hash line (openssl passwd -apr1 emits hash only)."
"learnings":"POC apps silently lose all answers on reload unless persistence is shimmied into their state object at init AND every mutation point; two instruments restart item numbering per section, so bare-index storage keys overwrite 69/190 answers — prefix section-repeats. Static-site PII gating: nginx basic auth on the location block, htpasswd needs a user:hash line (openssl passwd -apr1 emits hash only)."
"learnings":"Specificity collisions (0,1,1 beats 0,1,0) are the systemic white-on-white class: single-class component selectors + :where() convention fixes the family, not the button. A div with header-only CSS never renders its bar: match element to selector. Subagent-killing gateway 529s on big-read briefs: resume once, then take the enumerated fix-list work over inline — docs/copy is orchestrator-legal and immune to the churn."