ALL MEMOS Download .docx

<h1 style="color:#3F3D9C">TITAN OVERHAUL — Self-Audit & Ranked 15-Action Plan</h1>

Date: 2026-05-13 · Author: DARWIN · Scope: read-only audit of memory, skills, hooks, scheduled tasks, agents, projects, cost, context budget, newsletters, and dashboard. No mutations made.

---

<h2 style="color:#E26A56">1. Executive Summary</h2>

<h2 style="color:#2EA89B">2. Audit Results</h2>

Memory health. HOT = 79 md files (20 top-level + 41 feedback memos). WARM = 249 md files across 8 sub-domains. COLD = 3 archival files. STAGING directory does not exist — broken reference in CLAUDE.md's "tiered memory" claim. Feedback folder is dense (41 entries) and likely contains stale duplicates (feedback_never_stop_continue_email_only vs feedback_never_stop_stricter_no_waiting_for_confirm is one obvious pair). No automated staleness check exists today; /dream skill is the manual lever.

Skill inventory. 56 total skills (22 in ~/.claude, 34 in F:/TITAN). 20 duplicated, 12 F:-only (unreachable), 2 ~/.claude-only (incubate, lens). Last-fired metrics not tracked — no telemetry per-skill. lens and incubate have no F:/TITAN counterpart and appear undocumented in the auto-memory skill index.

Hook audit. 18 hooks across 7 lifecycle events. All script paths verified to exist on disk. PreCompact (4 hooks) and SessionStart (3 hooks) are the heaviest stages and the most likely source of session-start latency. None marked async.

Scheduled tasks. 26 SKILL.md task directories in F:/TITAN/scheduled-tasks/; 24 registered in Windows Task Scheduler. Gap = 2 SKILL.md without corresponding Windows tasks (likely titan-memory-annotator-daily, titan-newsletter-research-daily, titan-pending-rebuild-daily, titan-plans-auditor-weekly, titan-proactive-scout-daily, titan-todo-reconciler — at least one of these is unregistered). Last-run-result telemetry not exposed via schtasks here without elevation.

Agent routing. Six agents defined cleanly. SCOUT (sonnet, 15 turns), VAULT (haiku, 10 turns), and the other four follow the spec. No description overlap. Routing rule "Pull fresh intel from web/Perplexity → ORACLE" overlaps SCOUT's "Default research tool: Perplexity Sonar" — ORACLE and SCOUT have a fuzzy boundary and should be re-scoped or merged.

Project sprawl. HOT.md lists 33 active + 1 on-hold + 3 shipped = 37 projects. Of the 33 active, ~18 are scheduled-task wrappers (could collapse into a single "scheduled-tasks" registry entry) and ~10 are silentinfinity app studios. Real human-driven active projects: ~5 (snapdomain, transmission, advisors, journal, audits).

Cost discipline. agent-activity.json is empty ("recent_agents": []) — telemetry pipeline is silent. Cannot verify cache-hit ratio from current data. Three suspected leaks based on disk evidence: (a) pplx-cost-log.jsonl exists but isn't aggregated; (b) gemini-cost-log.jsonl likewise un-aggregated; (c) no per-skill cost cap enforced — only the global $50/day rule.

CLAUDE.md context budget. 609 words / ~915 tokens. Reasonable. Only ~5% repeats Claude defaults; the rest is operator-specific. Could trim the verbose Writing under ~/.claude/ paragraph (Anthropic bug #39523 explainer) to one line.

Newsletter infrastructure. TRANSMISSION TASKS.md: 11 shipped today, 6 open (all P1–P3 polish). Solid state.

Dashboard gap. titan-tasks-latest.json = 5 todos (3 stale from prior session). PENDING.md = 42 unchecked. Project TASKS.md aggregate = 13 unchecked. Three sources, three numbers. PENDING.md is treated as canonical by CLAUDE.md line 68 but appears to pull from additional sources not in TASKS.md.

<h2 style="color:#D4A437">3. Ranked Overhaul Plan (Top 15)</h2>

| # | Priority | Action | Effort | Impact | Owner |

|---|---|---|---|---|---|

| 1 | P0 | Reconcile task-tracking: pick ONE canonical source (PENDING.md) and rebuild titan-tasks-latest.json + dashboard from it on every TodoWrite | 3h | Eliminates 3-way drift; restores trust in todo state | FORGE |

| 2 | P0 | De-duplicate skills: move 12 F:-only skills into ~/.claude/skills/ or delete; symlink one directory to the other | 2h | Reachable surface area; removes "phantom skill" bugs | FORGE |

| 3 | P0 | Wire agent-activity.json writer — every sub-agent invocation appends a record | 2h | Restores cost telemetry; unblocks /pulse accuracy | FORGE |

| 4 | P0 | Reconcile scheduled-task gap: register the 2+ missing Windows tasks (memory-annotator, plans-auditor, pending-rebuild, etc.) | 1h | Restores autonomous routines | FORGE |

| 5 | P0 | Aggregate pplx-cost-log.jsonl + gemini-cost-log.jsonl into daily token-audit report | 2h | Visibility on biggest cost lines | ORACLE |

| 6 | P1 | Merge ORACLE + SCOUT or sharpen boundary (ORACLE = Perplexity-only, SCOUT = grep/glob/codebase) | 1h | Clear delegation; less re-asking | DARWIN |

| 7 | P1 | Prune feedback memos: remove the 6 superseded "never_stop_*" duplicates; collapse into one rule | 1h | Faster /dream cycles; less noise | VAULT |

| 8 | P1 | Collapse 18 scheduled-task entries in HOT.md into one "scheduled-tasks (24 active)" line | 0.5h | Cuts HOT.md to ~15 real projects | VAULT |

| 9 | P1 | Restore or remove staging/ memory tier — currently referenced but missing | 0.5h | Truthful tiered-memory claim | VAULT |

| 10 | P1 | Add per-skill telemetry (counter file: state/skill-usage.jsonl) | 2h | Data for next DARWIN pruning cycle | FORGE |

| 11 | P1 | Ship TRANSMISSION YouTube oEmbed + Playwright capture | 3h | Newsletter quality bump | FORGE |

| 12 | P2 | Trim CLAUDE.md Writing under ~/.claude/ paragraph to 1 line + link | 0.25h | Tiny token save, cleaner | DARWIN |

| 13 | P2 | Consolidate 4 PreCompact hooks into 1 orchestrator | 1.5h | Faster session boundaries | FORGE |

| 14 | P2 | Newsletter archive index page at newsletter-archive.silentinfinity.com | 2h | Subscriber retention | FORGE |

| 15 | P2 | Annotate auto-memory entries with last-accessed timestamp; auto-stale after 90d | 2h | Self-pruning memory | VAULT |

Total estimated effort: 23.75 hours.

<h2 style="color:#8E5BA0">4. Quick-Wins Sprint (&lt; 4 hours)</h2>

1. #9 Staging tier fix (0.5h) — either create the dir or remove the line from CLAUDE.md.

2. #12 CLAUDE.md trim (0.25h) — one-line replacement of the bug-#39523 paragraph.

3. #8 HOT.md collapse (0.5h) — one-line summary instead of 18 scheduled-task entries.

4. #7 Feedback prune (1h) — VAULT merges the "never_stop_*" cluster into one canonical rule.

5. #4 Register missing tasks (1h) — re-run python F:/TITAN/scripts/register_scheduled_tasks.py.

Sprint total: ~3.25h for 5 cleanups that immediately tighten the system.

<h2 style="color:#3F3D9C">5. Architectural Recommendations</h2>

1. One task source of truth. Today PENDING.md, titan-tasks-latest.json, and per-project TASKS.md all claim authority. Pick PENDING.md; make latest.json a generated artifact; treat TASKS.md as authoring surface only. Single rebuild script reconciles all three plus the dashboard.

2. Skill home consolidation. Maintain skills in one location (F:/TITAN/skills/) and symlink ~/.claude/skills/ → it. Eliminates the 20-duplicate / 12-orphan problem permanently.

3. Telemetry-driven evolution. Without agent-activity.json populated and per-skill counters, DARWIN cannot reliably propose pruning. Fix telemetry first; pruning second.

4. Agent boundary: ORACLE merges into SCOUT. Both default to Perplexity. Two agents with the same default tool create routing ambiguity. Retire ORACLE; expand SCOUT.

5. HOT.md ≠ project ledger. Today it conflates scheduled tasks (infra) with human projects (work). Split into HOT-projects.md (~5 entries) and HOT-infra.md (24 entries). CLAUDE.md only loads the projects view.

---

Generated by DARWIN · 2026-05-13 · read-only · zero file mutations beyond this memo.