{"path":"anamnesis_recovery_2026_04_30/SUBMIT_INSTRUCTIONS.md","content":"# Anamnesis Recovery — Submit Instructions (2026-04-30)\n\n## Status\n\n8 anamnesis episodes from CC session `343b05d2` (Mar 31, 2026, deliberus) were extracted and prepared for submission to Graphiti, but the actual submission FAILED due to an MCP SSE transport bug in the running CC session.\n\n## Root cause of submission failure (corrected diagnosis Apr 30 evening)\n\n**Graphiti MCP SSE handshake failed at startup for the originating long-lived CC session, persistent for the entire session lifetime.** This affects all Graphiti MCP calls — *including from subagents spawned by that session*, which inherit the parent's broken MCP state.\n\nVerified directly from the parent CC session (not just the subagent that originally hit the error): `mcp__graphiti__get_queue_status` and `mcp__graphiti__search_nodes` both returned `MCP error -32602: Invalid request parameters`, while `mcp__exa__web_search_exa` returned valid results in the same response — **proving the failure is Graphiti-SSE-specific to this session, not subagent-scoped or full-MCP-down**.\n\nDarwin Graphiti SSE daemon (`darwin.home:8500`, PID 892877, healthy, 6 days uptime) rejected the calls with daemon-side log:\n\n```\nWARNING - Failed to validate request: Received request before initialization was complete\n```\n\nOther CC sessions presumably initialize Graphiti cleanly (daemon log on Apr 30 17:01 shows successful handshakes from concurrent sessions while this session continued failing). The SSE init never completed for Graphiti when this CC session bootstrapped; once stuck, **no in-session recovery is possible** — only a fresh CC session re-runs the handshake.\n\n**Subagent-MCP-access clarification**: This was NOT a \"subagents can't use MCP\" limitation (Exa works fine in subagents, both per Anthropic SDK behavior and verified empirically here). The constraint is narrower: subagents inherit the parent session's per-MCP-server connection state, so any specific MCP server that's broken at the parent inherits as broken in subagents.\n\n## What's ready for submission\n\n`extracted_episodes.json` in this directory contains all 8 episodes verbatim from the original session JSONL (`343b05d2-0161-4dee-8fa1-42971003de9f.jsonl` lines around 181-200). Each entry has:\n- `name`: original name from session\n- `episode_body`: full content (1049–1683 chars each)\n- `source`: `text`\n- `source_description`: original description\n- `valid_at`: original Mar 27–28, 2026 timestamps\n\n## How to submit (next session)\n\nFrom a fresh CC session in `~/Projects/deliberus`, run 8 `mcp__graphiti__add_memory` calls. Use the per-task naming convention:\n\n```\nname: \"Anamnesis: <CODE> — <short title>\"\nsource_description: \"Anamnesis ingestion deferred Mar 31, 2026 (OpenAI credit exhaustion); recovered + submitted Apr 30, 2026 via cognitive-debt closure pass on session 343b05d2\"\n```\n\nOverride only `name` and `source_description`; keep original `episode_body`, `source` (`text`), and `valid_at` from `extracted_episodes.json`.\n\n| Code | Anamnesis name |\n|------|----------------|\n| D5 | Anamnesis: D5 — First pipeline run milestone |\n| E1 | Anamnesis: E1 — Emanuel's discourse layer |\n| E2 | Anamnesis: E2 — Lean sorry model |\n| E3 | Anamnesis: E3 — @[simp] flywheel |\n| E4 | Anamnesis: E4 — Schmachtenberger's Consilience failure |\n| F1 | Anamnesis: F1 — Data-Freshness directive |\n| F2 | Anamnesis: F2 — Research-Persistence directive |\n| F3 | Anamnesis: F3 — Zero-to-deployed milestone |\n\nThe `group_id` will be `deliberus` automatically since the shims wrapper sets it from cwd's git project.\n\n## Sessions 6-7 knowledge\n\nAudit doc mentioned \"Sessions 6-7 knowledge — needs credits\" (schemes, CQs, graph viz, auth, Temporal). Not extractable as named episodes — would require synthesis from raw session transcripts in subsequent sessions. Out of scope for this recovery pass.\n\n## Verification\n\nAfter submission, verify with `search_nodes query=\"Anamnesis\"` filtered to deliberus group, OR `get_episodes` listing — should see 8 new entries with `Anamnesis:` name prefix.\n"}