Motif Synthesis Draft - AI-drafted description from the motif's own evidence #126
Labels
No labels
bug
duplicate
enhancement
future
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
rbrooks/TeaLeaves#126
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Feature idea (Fable ideation, rank #3) · Effort: M · Value: High
Pitch
One button on a motif: "Draft a synthesis" - the AI reads the member entries (+
entry_motifs.notesand connection types) and proposes a description/summary the researcher edits and approves; never auto-saved.Why it matters
Her actual job is turning hundreds of atomic observations into publishable prose. The gap between "37 entries in a motif" and "a paragraph explaining the motif" is exactly where a local LLM helps most - and
motifs.descriptionis often empty (v2 P4 even shipped a "Needs details" filter for title-only motifs).How it fits
The chat plumbing exists for all three providers -
ollamaChat/openaiChatinapi/src/services/ai.ts(currently only image description/tag prompts). AddsynthesizeMotif()feeding member entries (fromentry_motifs) pluscontradicts/exemplifiesedges into a prompt, via a newPOST /api/ai/synthesize/:motifIdbehind the existingaiRateLimitinroutes/ai.ts. Output lands in a draft field the UI shows for edit-then-save intomotifs.description(sanitized on write perlib/sanitize.ts), audit-logged. Honors "AI is optional / user approves everything."Why it was likely missed
All shipped AI features are per-item enrichment at capture time (describe this image, tag this text, embed this entry). Cross-entry synthesis is a different mental category; the app predates thinking of the LLM as a reasoning aid rather than a metadata generator.
Acceptance criteria
From the 2026-07-15 codebase audit - Fable feature-ideation pass. Companion report:
docs/.internal/report-2026-07-15.md(gitignored).