talents: replace 4 per-span talents + decisionalizer with 3 storytelling talents
Retire meetings/decisions/followups/messaging per-span talents plus the
orphaned decisionalizer cogitate. Introduce conversation/work/event
storytelling talents that each emit one structured JSONL row per
(span, talent) into journal/facets/{facet}/spans/{YYYYMMDD}.jsonl via a
shared talent/spans.py post-hook. think/spans.py::format_spans renders
each row as an FTS-indexable markdown chunk.
Dispatch changes in think/thinking.py skip all three talents on
synthetic (cogitate/anticipated) or segmentless activity records, and
skip the work talent for browsing/reading activities below level_avg
0.4. Coding is ungated.
Forward-only flip: historical on-disk markdown under
facets/*/activities/{date}/{span_id}/*.md is preserved and still
indexed. Downstream consumers that read the retired filenames
(speakers app, activities_review, morning_briefing) continue to work on
pre-flip-day data and degrade gracefully on new data; a follow-up will
migrate them to read the new spans.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>