Context
Sub-issue of #10671. Captures the empirical anchors that triggered the architectural pivot. The Epic body summarizes; this ticket preserves full timeline + logs + reproducer for future incident reviews.
The Problem
2026-05-03 14:41-16:02 CEST window: 9 osascript-driven Cmd+N spawns of @neo-opus-4-7 fired without producing a fresh AGENT_MEMORY because @tobiu manually ESC-rejected each spawn. Multi-day accumulation: 19+ orphan boot-titled sessions in Claude Desktop "Recents" panel across 5+ prompt-iteration generations. Root cause is parallel-session identity-uniqueness violation during long boot windows.
The Architectural Reality
Logs:
.neo-ai-data/wake-daemon/heartbeat-opus_4_7.log — 9 Successfully resumed entries between 14:41-16:02 CEST; "Last memory is N min old" reason growing 31m → 242m
.neo-ai-data/wake-daemon/heartbeat-gemini_3_1_pro.log — same pattern for @neo-gemini-3-1-pro 14:52-16:02 CEST
.neo-ai-data/wake-daemon/heartbeat-gpt.log — @neo-gpt fired 16x with "No active WAKE_SUBSCRIPTION" reason (related but distinct failure mode — lacked subscription entirely)
Process pathway:
- Heartbeat fires;
checkSunsetted.mjs:124-127 determines recovery needed
resumeHarness.mjs:120-192 Cmd+N + osascript paste of boot-grounding prompt
- New Claude Desktop tab opens, agent starts boot ramp (read AGENTS_STARTUP, AGENTS, MEMORY, tools)
- Boot ramp duration exceeds 5-min heartbeat interval
- Next heartbeat fires — sees no fresh
AGENT_MEMORY (boot still in progress) → triggers another spawn
- Operator manually ESC-rejects each spawn to prevent identity-uniqueness violation
- Substrate has no signal channel for ESC-rejection → loop continues
- After ~80 min, operator trips wake safety gate manually (
wake-safety-gate.json state: tripped at 2026-05-03 22:53:09Z)
Empirical confirmation of MC-server staleness (this session): set_session_id boot call returned replacedSessionId: f839713d-... — yesterday's Row 2 session. SessionService.currentSessionId survives across MCP-client reconnects when the server stays running.
The Fix
Documentation work — repo-resident forensic record. Suggested location: learn/agentos/incidents/2026-05-03-runaway-spawn.md (or equivalent path agreed during PR review).
Acceptance Criteria
Out of Scope
- Substrate fixes themselves — covered by sibling #10671 sub-issues
Related
Origin Session ID: cce1fea5-32ff-410c-b820-2e9a27b3cd51
Context
Sub-issue of #10671. Captures the empirical anchors that triggered the architectural pivot. The Epic body summarizes; this ticket preserves full timeline + logs + reproducer for future incident reviews.
The Problem
2026-05-03 14:41-16:02 CEST window: 9 osascript-driven Cmd+N spawns of @neo-opus-4-7 fired without producing a fresh
AGENT_MEMORYbecause @tobiu manually ESC-rejected each spawn. Multi-day accumulation: 19+ orphan boot-titled sessions in Claude Desktop "Recents" panel across 5+ prompt-iteration generations. Root cause is parallel-session identity-uniqueness violation during long boot windows.The Architectural Reality
Logs:
.neo-ai-data/wake-daemon/heartbeat-opus_4_7.log— 9Successfully resumedentries between 14:41-16:02 CEST; "Last memory is N min old" reason growing 31m → 242m.neo-ai-data/wake-daemon/heartbeat-gemini_3_1_pro.log— same pattern for@neo-gemini-3-1-pro14:52-16:02 CEST.neo-ai-data/wake-daemon/heartbeat-gpt.log—@neo-gptfired 16x with "No active WAKE_SUBSCRIPTION" reason (related but distinct failure mode — lacked subscription entirely)Process pathway:
checkSunsetted.mjs:124-127determines recovery neededresumeHarness.mjs:120-192Cmd+N + osascript paste of boot-grounding promptAGENT_MEMORY(boot still in progress) → triggers another spawnwake-safety-gate.jsonstate:trippedat2026-05-03 22:53:09Z)Empirical confirmation of MC-server staleness (this session):
set_session_idboot call returnedreplacedSessionId: f839713d-...— yesterday's Row 2 session.SessionService.currentSessionIdsurvives across MCP-client reconnects when the server stays running.The Fix
Documentation work — repo-resident forensic record. Suggested location:
learn/agentos/incidents/2026-05-03-runaway-spawn.md(or equivalent path agreed during PR review).Acceptance Criteria
Out of Scope
Related
Origin Session ID: cce1fea5-32ff-410c-b820-2e9a27b3cd51