You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 2ddfe58
Browse filesBrowse the repository at this point in the historyBrowse files
refactor(replay): move the response and observation vocabulary out of the daemon
First half of PR A for #2663: the replay unit stops importing two daemon
modules, with no file moved and no behaviour changed.
- `errorResponse`/`noActiveSessionError`/`DaemonFailureResponse` move to
`@agent-device/kernel/contracts` beside the `DaemonResponse` shape they build
(#2663's preferred disposition: they carry no daemon semantics). `src/daemon/
response.ts` keeps a daemon-local alias so the 58 non-replay handlers are
untouched; the unit imports the owning specifier. `DaemonResponse`/
`DaemonResponseData` now come from kernel/contracts too, cutting all 22
`daemon-request.ts` response-type edges.
- The ref-publication authority vocabulary (opaque evidence, capture,
projection, result, authority) moves to `@agent-device/contracts/replay`, the
cross-layer contract home both `internal-observation.ts` and the replay unit
already sit above. `src/daemon/replay/**` no longer imports
`src/daemon/internal-observation.ts`: `ReplaySession.observationStore` carries
a `bindAuthority(signal)` binder the handler draws from the bound session
store, so the unit gets the capability without naming the store pair or the
session name. `sessionName` threaded through four capture helpers purely to
re-bind that authority is now dead and removed.
Two findings against the issue, both verified:
- `req.internal` IS read in the unit (3 sites: `session-replay-action-runtime.ts:154`,
`session-replay-maestro-runtime.ts:132,330`, `test-command.ts:237`), contrary
to "No file in the unit reads `req.internal`". Those, plus the 10 remaining
`DaemonRequest`/`DaemonInvokeFn` edges, need the neutral dispatch envelope
#2652 established — the next step of PR A.
- The stated destination `packages/ad-replay/src/daemon-port/` conflicts with
`LOGICAL_MODULE_POLICIES`: `ad-replay` forbids `packages/maestro/`, and the
six Maestro-side replay files import `@agent-device/maestro`, while
`session-replay-maestro-failure.ts` also imports `@agent-device/ad-replay/
divergence`, so no existing engine package can host the port as written.
Part of #2663
0 commit comments