feat(goal): drive same-session goal rounds

This commit is contained in:
Tianyi Cui
2026-07-19 20:30:43 +08:00
parent 76da93b847
commit 25555c9cfc
42 changed files with 2065 additions and 78 deletions

View File

@@ -120,9 +120,10 @@ export interface Agent {
/**
* Clear queued and steering work, including work waiting to start, and abort
* the active step. The supplied reason is preserved across pre-step and active
* cancellation windows, and `whenIdle()` resolves after cancellation reaches
* quiescence. Idle cancellation is a no-op and does not arm a later cancel.
* the active step. An effective call first emits `agent/cancel-requested` with
* the resolved reason. The supplied reason is preserved across pre-step and
* active cancellation windows, and `whenIdle()` resolves after cancellation
* reaches quiescence. Idle cancellation is a no-op and does not arm a later cancel.
*/
cancel(reason?: string): void
@@ -173,6 +174,16 @@ declare module 'cordis' {
* @mode emit
*/
'agent/queued'(this: Scoped<Agent>, agent: Agent, content: ContentBlock[], info: { source: MessageSource; steering: boolean }): void
/**
* Effective broad cancellation was requested, before queued/steering work
* is cleared or the active step is aborted. This observe-only notification
* cannot veto cancellation; listener failures are contained.
* @param agent - the agent whose current work is being cancelled.
* @param reason - resolved cancellation reason, including the default.
* Scope-filtered dispatch (`@deepseek-ai/dsh-scope`): agent-scoped listeners receive only that agent.
* @mode emit
*/
'agent/cancel-requested'(this: Scoped<Agent>, agent: Agent, reason: string): void
// ---- session lifecycle (emit) ----
/**