Skip to main content

Outcome Map

What does success look like — in binary terms?

Success Measures

#OutcomePass WhenFail When
O1Forms navigation unifiedSingle /forms entry in sidebar renders index page linking all form contentForms still appear in 3+ separate nav locations
O2Standard process discoverableEngineer finds THE chain (Zod -> Server Action -> FormShell -> Name Attrs -> TanStack) on one pageProcess knowledge scattered across multiple pages or tribal
O3CRM patterns use lib atomsEvery CRM pattern page imports from @stackmates/ui — zero raw HTML form elementsAny CRM pattern page has <input>, <select>, or <form> without lib wrapper
O4Shipping gate exists10-point form checklist page exists and is linked from forms indexEngineer ships a form without knowing the checklist exists
O5Meeting agenda form composesMeetingAgenda organism built from existing lib atoms only — no _components/MeetingAgenda requires >3 new atoms not in lib

Outcome Dependencies

O1 (unified nav) ──────> O2 (standard process) ──────> O4 (shipping gate)

v
O3 (CRM rewrite) <── proves the standard works

v
O5 (meeting form) <── stress test for composition depth

Connection to SIO

  • Situation: Engineer arrives, can't find THE standard → O1, O2 fix discoverability
  • Intention: One unified section with standard process → O2, O4 define what "standard" means
  • Obstacle: Nav split, raw HTML patterns, missing pages → O1 (nav), O3 (raw HTML), O5 (composition depth)