digest: split into focused modules, externalize prompts
digest.rs was 2328 lines containing 6 distinct subsystems. Split into:
- llm.rs: shared LLM utilities (call_sonnet, parse_json_response, semantic_keys)
- audit.rs: link quality audit with parallel Sonnet batching
- enrich.rs: journal enrichment + experience mining
- consolidate.rs: consolidation pipeline + apply
Externalized all inline prompts to prompts/*.md templates using
neuro::load_prompt with {{PLACEHOLDER}} syntax:
- daily-digest.md, weekly-digest.md, monthly-digest.md
- experience.md, journal-enrich.md, consolidation.md
digest.rs retains temporal digest generation (daily/weekly/monthly/auto)
and date helpers. ~940 lines, down from 2328.
Co-Authored-By: Kent Overstreet <kent.overstreet@linux.dev>
This commit is contained in:
parent
3f644609e1
commit
50da0b7b26
13 changed files with 1642 additions and 1582 deletions
29
prompts/consolidation.md
Normal file
29
prompts/consolidation.md
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
# Consolidation Action Extraction
|
||||
|
||||
You are converting consolidation analysis reports into structured actions.
|
||||
|
||||
Read the reports below and extract CONCRETE, EXECUTABLE actions.
|
||||
Output ONLY a JSON array. Each action is an object with these fields:
|
||||
|
||||
For adding cross-links:
|
||||
{"action": "link", "source": "file.md#section", "target": "file.md#section", "reason": "brief explanation"}
|
||||
|
||||
For categorizing nodes:
|
||||
{"action": "categorize", "key": "file.md#section", "category": "core|tech|obs|task", "reason": "brief"}
|
||||
|
||||
For things that need manual attention (splitting files, creating new files, editing content):
|
||||
{"action": "manual", "priority": "high|medium|low", "description": "what needs to be done"}
|
||||
|
||||
Rules:
|
||||
- Only output actions that are safe and reversible
|
||||
- Links are the primary action — focus on those
|
||||
- Use exact file names and section slugs from the reports
|
||||
- For categorize: core=identity/relationship, tech=bcachefs/code, obs=experience, task=work item
|
||||
- For manual items: include enough detail that someone can act on them
|
||||
- Output 20-40 actions, prioritized by impact
|
||||
- DO NOT include actions for things that are merely suggestions or speculation
|
||||
- Focus on HIGH CONFIDENCE items from the reports
|
||||
|
||||
{{REPORTS}}
|
||||
|
||||
Output ONLY the JSON array, no markdown fences, no explanation.
|
||||
Loading…
Add table
Add a link
Reference in a new issue