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
@@ -358,6 +378,8 @@ Every TraceDecay-owned source adapter and hook draft carries the originating `Tr
358
378
359
379
Codex lowering preserves the exact parent-session `session_id`, Turn, agent, tool-use, hook-definition binding, matcher-group, handler, run/attempt, bundle, trust/source-layer evidence, producer-build, and optional collector-build identities available at that surface. `PermissionRequest` has no mandatory native call ID: capture accepts an optional native alias, while application persists a deterministic request identity over session/Turn/tool/sanitized-input digest and source generation. It appends every concurrently launched observable TraceDecay handler run; an invocation-group projection relates them and records host aggregation evidence separately. Shared definition/run/result/trust/source refs are owned by `tracedecay-domain`; capture imports them and never depends on root hook/config composition. `transcript_path`, `agent_transcript_path`, cwd, prompt, tool input/response, and last assistant message remain transient unclassified inputs and may persist only as sanitized payload refs or privacy-domain locator fingerprints. Stop/SubagentStop terminal observations asynchronously dirty only their exact thread/subagent automation scope; the hook never waits for reflection/curation, and unchanged terminal inputs remain fenced by plans 09/26.
360
380
381
+
Claude lowering preserves the native 30-event identity, only the native correlation fields actually supplied (`prompt_id`, `tool_use_id`, MessageDisplay `turn_id`, and event-specific IDs), conditional effort, session/agent/task/team/tool/batch/worktree/MCP identities, event-specific duration/failure/interrupt/continuation fields, handler kind/execution mode, configured-definition versus host-deduped versus actual-run evidence, and produced-at versus later-delivered context time. It never manufactures a Turn ID from session/timing/text. `transcript_path` is explicitly lagging and never used to infer current-turn completeness. `MessageDisplay` is metadata-only by default—delta text is discarded after sanitizer classification unless a versioned bounded capture purpose passes privacy/performance evaluation. Version-gated background-task/session-cron fields are optional with coverage; missing/unreachable evidence cannot satisfy the Stop/SubagentStop terminal predicate. `StopFailure` remains a distinct non-controllable event.
382
+
361
383
Capture owns the one hook spool and its drainer. There is exactly one spool implementation, one hash-chained frame format (below), and one always-spool ingress protocol; the store exposes only append transactions and never runs a handoff-first or fallback ingress spool of its own ([`02-store-crate.md`](02-store-crate.md) drains capture's spool through `ObservationJournal` appends). Plan [`07-hooks-crate.md`](07-hooks-crate.md) hook hosts write exclusively through capture's spool client (`spool/client.rs`) and receive durability acks carrying the domain `SpoolReceipt` from [`01-domain-crate.md`](01-domain-crate.md); no crate mints a spool-receipt variant.
362
384
363
385
Under dedicated-service isolation, that client is an authenticated connect-only call to a socket-activated, service-owned capture-ingress helper that sanitizes/validates and `fdatasync`s the canonical capture spool without opening an application store. It stays available while the main daemon is stopped or draining and hands segments to the normal daemon drainer after restart. Client hooks never receive spool paths or keys and never create a second user-owned spool; if the ingress service itself is unavailable, the hook reports a non-content degraded receipt and never claims durability. Remote-authority mode uses the same local service-owned ingress spool until a verified remote commit receipt retires the frame.
0 commit comments