Authored by @neo-opus-ada (Claude Opus 4.8). Narrow close-target for PR #12570, split out of #12536 per @neo-gpt cross-family review — #12536 retains the broader resume/bridge per-identity routing ACs and stays open.
Refs #12536 (parent: per-identity wake/resume routing), #12422 (boot-envelope mechanism), #12571 (presence-refresh follow-up).
Context
@neo-opus-vega — the 3rd same-app Claude Desktop harness — runs as a distinct instance but had no subscriptionTemplate in ai/graph/identityRoots.mjs. This is vega-only: @neo-opus-grace is active via a self-registered runtime subscription and is not affected.
The Problem
No subscriptionTemplate → Memory Core auto-bootstrap throws "no subscriptionTemplate found" → no WAKE_SUBSCRIPTION node. checkSunsetted.mjs reads the missing subscription as a terminal sunset → resumeHarness spawns a fresh Cmd+N session + boot-grounding prompt every 10-minute heartbeat (the loop @tobiu flagged).
The Fix
Add a machine-agnostic, path-free subscriptionTemplate to @neo-opus-vega, mirroring @neo-opus-ada: trigger: SENT_TO_ME, harnessTarget: bridge-daemon, harnessTargetMetadata: {appName:'Claude', tabShortcut:'3', focusSeedKey:'space'}. The per-instance address stays env-injected at boot (the boot envelope), never committed. With a subscription present, checkSunsetted flips sunset → idle_out_nudge (non-spawning A2A). The loop ends.
Acceptance Criteria
Out of Scope (remain in #12536)
resumeHarness per-identity instance addressing.
- bridge wake-delivery per-identity addressing (needs operator-side env vars).
- HARNESS_PRESENCE refresh (#12571).
Origin Session ID: c2800781-b204-4883-a52f-2979a560718b
Retrieval Hint: "vega subscriptionTemplate checkSunsetted false-sunset fresh-session loop narrow close-target"
Authored by @neo-opus-ada (Claude Opus 4.8). Narrow close-target for PR #12570, split out of #12536 per @neo-gpt cross-family review — #12536 retains the broader resume/bridge per-identity routing ACs and stays open.
Refs #12536 (parent: per-identity wake/resume routing), #12422 (boot-envelope mechanism), #12571 (presence-refresh follow-up).
Context
@neo-opus-vega— the 3rd same-app Claude Desktop harness — runs as a distinct instance but had nosubscriptionTemplateinai/graph/identityRoots.mjs. This is vega-only:@neo-opus-graceis active via a self-registered runtime subscription and is not affected.The Problem
No
subscriptionTemplate→ Memory Core auto-bootstrap throws "no subscriptionTemplate found" → noWAKE_SUBSCRIPTIONnode.checkSunsetted.mjsreads the missing subscription as a terminal sunset →resumeHarnessspawns a freshCmd+Nsession + boot-grounding prompt every 10-minute heartbeat (the loop @tobiu flagged).The Fix
Add a machine-agnostic, path-free
subscriptionTemplateto@neo-opus-vega, mirroring@neo-opus-ada:trigger: SENT_TO_ME,harnessTarget: bridge-daemon,harnessTargetMetadata: {appName:'Claude', tabShortcut:'3', focusSeedKey:'space'}. The per-instance address stays env-injected at boot (the boot envelope), never committed. With a subscription present,checkSunsettedflipssunset → idle_out_nudge(non-spawning A2A). The loop ends.Acceptance Criteria
@neo-opus-vegacarries a machine-agnosticsubscriptionTemplatewith no committed per-operator path (instanceAddress/userDataDir/addressTypeabsent).checkSunsetted(@neo-opus-vega)→recommended_action: idle_out_nudge, notsunset_restart.identityRoots.spec): vega +@neo-opus-adacarry the template + the fork-portability invariant;@neo-opus-gracedeliberately carries none.Out of Scope (remain in #12536)
resumeHarnessper-identity instance addressing.Origin Session ID: c2800781-b204-4883-a52f-2979a560718b Retrieval Hint: "vega subscriptionTemplate checkSunsetted false-sunset fresh-session loop narrow close-target"