feat(gateway): add interrupt preemption telemetry and requester notice
This commit is contained in:
@@ -69,7 +69,7 @@ sequenceDiagram
|
||||
G-->>C: result.cancelled=true/false
|
||||
```
|
||||
|
||||
`interrupt` queue mode also requests active-run cancellation when a newer request is enqueued for the same session lane. Cancellation still completes at agent/tool-loop safe points.
|
||||
`interrupt` queue mode also requests active-run cancellation when a newer request is enqueued for the same session lane. Cancellation still completes at agent/tool-loop safe points. When this preemption happens, the requester receives a transient `content` notice and the audit log records `queue.preempt`.
|
||||
|
||||
### Base URL
|
||||
|
||||
|
||||
@@ -332,8 +332,9 @@ These are substantial UX/ecosystem projects or highly platform-specific; defer u
|
||||
|
||||
## Suggested Next Execution Order
|
||||
|
||||
1) Queue/run-control polish (interrupt preemption telemetry + UX)
|
||||
2) Daily memory continuity tuning (if continuity quality is still lacking)
|
||||
3) Auth-profile expansion beyond API-key pools (if needed)
|
||||
1) Daily memory continuity tuning (if continuity quality is still lacking)
|
||||
2) Auth-profile expansion beyond API-key pools (if needed)
|
||||
3) Additional run-control UX refinements only if interrupt behavior is still insufficient in production
|
||||
|
||||
Note: API-key pool auth profile cooldown/backoff (`auth_profile_cooldown_ms`) shipped on 2026-02-19.
|
||||
Note: Queue interrupt preemption telemetry/notice (`queue.preempt` + requester content hint) shipped on 2026-02-19.
|
||||
|
||||
@@ -5793,6 +5793,23 @@
|
||||
"docs/plans/state.json"
|
||||
],
|
||||
"test_status": "pnpm test:run src/models/rotating.test.ts src/daemon/clientFactory.test.ts src/config/schema.test.ts + pnpm typecheck passing"
|
||||
},
|
||||
"queue-interrupt-preemption-telemetry": {
|
||||
"status": "completed",
|
||||
"date": "2026-02-19",
|
||||
"updated": "2026-02-19",
|
||||
"summary": "Hardened interrupt queue mode visibility by emitting `queue.preempt` audit events when a newer request preempts an active run, and by sending a requester-facing content notice indicating that the previous in-flight run was cancelled before processing the latest message.",
|
||||
"files_modified": [
|
||||
"src/audit/types.ts",
|
||||
"src/audit/logger.ts",
|
||||
"src/gateway/handlers/agent.ts",
|
||||
"src/gateway/handlers/agent.test.ts",
|
||||
"README.md",
|
||||
"docs/api/PROTOCOL.md",
|
||||
"docs/plans/2026-02-15-openclaw-gap-roadmap.md",
|
||||
"docs/plans/state.json"
|
||||
],
|
||||
"test_status": "pnpm test:run src/gateway/handlers/agent.test.ts src/models/rotating.test.ts src/daemon/clientFactory.test.ts src/config/schema.test.ts + pnpm typecheck passing"
|
||||
}
|
||||
},
|
||||
"overall_progress": {
|
||||
|
||||
Reference in New Issue
Block a user