mirror of
https://github.com/deepseek-ai/deepseek-harness
synced 2026-08-15 21:04:50 +00:00
inspect() awaited an in-flight retirement drain unconditionally before entering serialize(), so a slow drain pinned a cancelled inspect until it finished, past the documented cancellation boundary. Race the retirement wait against the signal with observeQueuedAbort, matching serialize()'s queued-read behaviour. Adds a regression that cancels an inspect while a gated retirement is pending and asserts prompt rejection without a backend read.
session-persistence/ — persistence capability family
English | 中文
The durable session-persistence seam and its storage backends. The interface package owns the abstract SessionPersistence service and the shared write coordinator; the backends are concrete implementations that register on ctx.sessionPersistence. All product packages.
| Package | Role | ctx key |
|---|---|---|
session-persistence/ |
Persistence seam + shared write coordinator | ctx.sessionPersistence |
session-checkpoint-policy/ |
Semantic durability barriers for agent requests and tool execution | (wraps ctx.llm / ctx.tools, listens on agent events) |
session-persistence-jsonl/ |
JSONL-sidecar persistence backend | (registers ctx.sessionPersistence) |
session-persistence-sqlite/ |
SQLite persistence backend | (registers ctx.sessionPersistence) |
The interface lives at session-persistence/session-persistence/; backends are flat siblings. A new storage backend joins here and registers on ctx.sessionPersistence. See session persistence.