Repository navigation
Closed
Labels
area:backendHost-side implementationHost-side implementationfeature:memoryPersonaBot Memory Repository and Memory ServicePersonaBot Memory Repository and Memory Servicefeature:messagingMessaging module and external providersMessaging module and external providersready-for-agentFully specified, ready for an AFK agentFully specified, ready for an AFK agentscope:tracerHuman-testable implementation sliceHuman-testable implementation slice
Milestone
Description
Parent
What to build
As a Human editing a PersonaBot's Memory Repository with VS Code, Git, or another external tool, I want the Bot to receive an actionable Memory change Source Event through its Bot Inbox on the next ordinary turn. Saving a file alone must not wake the Bot.
#351 already moved Inbox rendering after prepareTurn. Replace the memory-local take-once annotation path with a real Source Event and Inbox Admission from the Memory Service's observed worktree delta. This slice verifies the running-Host path; the follow-on checkpoint slice closes the Host-restart gap.
Acceptance criteria
- External additions, edits, removals, commits, and branch movement produce a bounded, paths-only memory-change Source Event and Inbox Admission on the next ordinary turn.
- The Event appears in the Bot Inbox projection and is selected into the turn as actionable Inbox context with its identity and change categories; it never wakes an idle Bot by itself.
- A second edit to a path already dirty at the prior observation is detected, including staged and untracked content where applicable.
- A Bot-owned change stays silent; a quiet turn adds no bytes; a PERSONA.md change states that the current Session keeps its frozen persona.
- An Admission is observed only when its actionable summary actually enters the Orchestrator turn, handled on successful completion, and left for existing repair behavior on failure.
- Remove the take-once staging path and rewrite its tests as Source Event, Admission, and rendered-turn assertions.
- Preserve DM, group, report, digest, and resume turn behavior; verify live with an isolated Host and real model.
- Do not add UI save-time admission. Do not claim this slice alone closes the pre-observation Host-restart gap.
Blocked by
Metadata
Metadata
Assignees
Labels
area:backendHost-side implementationHost-side implementationfeature:memoryPersonaBot Memory Repository and Memory ServicePersonaBot Memory Repository and Memory Servicefeature:messagingMessaging module and external providersMessaging module and external providersready-for-agentFully specified, ready for an AFK agentFully specified, ready for an AFK agentscope:tracerHuman-testable implementation sliceHuman-testable implementation slice
Activity
[-]Slice: memory-change admission replaces take-once[/-][+]Slice: deliver external Memory changes through Inbox[/+]DoodleBears commentedon Sep 29, 2026
Agent work claim
DoodleBears commentedon Sep 29, 2026
Agent work outcome
codex/local/01a0e86b-16ab-7a01-baf9-e555eec3ea6288c91e8Deliver durable Memory changes through Bot Inbox
Refresh Memory Inbox live QA evidence
Deliver durable Memory changes through Bot Inbox
Refresh Memory Inbox live QA evidence
Deliver durable Memory changes through Bot Inbox
Refresh Memory Inbox live QA evidence
Harden Memory Inbox observation and restart retry
Capture clean Memory restart Inbox QA
Handle literal and duplicate Memory Git paths
Resolve Windows pnpm launcher from installed shims
Deliver external Memory changes through durable Bot Inbox (#473)