tell-the-story
IN BUILD"Then I want to write a synthetic history using commit messages, chat histories where available, release notes, etc to tell the story. Something like 'date x - Wrote first description of the project, pushed 5 prs focused on foundations.' and 'date y - launched ad campaign on meta with xyz results.'" "I want to work towards reconstructing a high level history of where my brain was at over time. so that when I get to a place and abandon the project, or get to a place and build out the whole thing, there's a way to hang context there either from existing data sources or from my own writing. We're building a case study of the experiment in real time."
STAGES
- proposal07-17 ↻ 07-21
- requirements07-20 ↻ 07-21
- design07-20predates the Figma as-is + proposed pair
- tasks07-21
- build—
- archived—
CAPABILITY
- experiment-history5 requirements
OUTCOMES — AND HOW EACH IS MEASURED
- ✓1.1Approved entries render chronologically (ascending, month-level dates) — `selectApprovedEntries` sort + `formatMonthYear`, testedautomated test
- ✓1.2No approved entries hides the section entirely — `History` returns null; `showNarrative` drops the band when statements + history are both emptyautomated test
- ✓1.3Only approved entries publish; unapproved/draft never render — `Approved === true` filter, testedautomated test
- ✓1.4Generator proposes rollup candidates, writes nothing to Notion — `scripts/draft-history.ts`, no Notion import (asserted by test)automated test
- ✓1.5Generator never mines chat/session transcripts — sources are git commits + PRs (+ Figma seam) onlyautomated test
- ○1.6A result-claiming entry without an inline number doesn't ship — authoring-time rule (§4.4), not codehuman review
- ○1.7A dead experiment's terminal entry agrees with its `Outcome` kill reason — authoring-time rule (§4.4), not codehuman review
- ✓1.8A month of activity produces a draft entry with no human action — append writer + monthly Action (Action is manual-only until approved, see §3.9)automated test
- ✓1.9Previously edited/approved entries are untouched by the job — insert-only writer + month watermark, testedautomated test
- ✓1.10A quiet month (or hub-wide-only changes) adds nothing — classifier + quiet-month rule, tested against BDE's real hub-wide commitsautomated test
- ○1.11Figma named versions and numbered iteration pages count as evidence — **deferred with §3.6** (seam wired; BDE has no Figma so it's moot for the exemplar; build against a Figma-rich experiment later)deferred
WHAT HAPPENED
- PROPOSAL
proposal landed
2026-07-17 · 1 pull request- #297docs(openspec): labs hub improvements from investor review
- DESIGN
specs and design landed
2026-07-20 · 1 pull request- #304docs(openspec): tell-the-story — spec + design (approved 02.1 Figma)
- ↺ BACK TO PROPOSAL + SPECS
tasks landed
2026-07-21 · 3 pull requests- #314docs(openspec): tell-the-story tasks — resolve Notion storage shape
- #317feat(experiment-history): read adapter + History band on detail page
- #319docs(openspec): fold BDE exemplar evidence into tell-the-story tasks
- BUILD
feat(experiment-history): accumulation slice — generator, writer, monthly Action
2026-07-22 · 2 pull requests- #321feat(experiment-history): accumulation slice — generator, writer, monthly Action
- #322feat(experiment-history): receipt links on History entries + tasks.md status
31 days quiet — nothing touched this change
- BUILD
docs(tell-the-story): BDE exemplar history draft + date-range decision
2026-08-22 · 2 pull requests- #398docs(tell-the-story): BDE exemplar history draft + date-range decision
- #400docs(tell-the-story): BDE reconciliation plan + experiment-narrative skill
- BUILD
style(history): move History band onto MVDS type and spacing scales
2026-08-24 · 1 pull request- #402style(history): move History band onto MVDS type and spacing scales
History read from a manifest built at 2026-09-30 (09e7bcc).
10 pull requests, found by commits touching the change folder