@feltdb/core 0.13.0 → 0.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/dist/agent-runtime.d.ts +64 -2
  2. package/dist/agent-runtime.d.ts.map +1 -1
  3. package/dist/agent-runtime.js +121 -11
  4. package/dist/agent-state.d.ts +48 -0
  5. package/dist/agent-state.d.ts.map +1 -1
  6. package/dist/agent-state.js +174 -12
  7. package/dist/agent.d.ts +10 -1
  8. package/dist/agent.d.ts.map +1 -1
  9. package/dist/agent.js +10 -1
  10. package/dist/build-identity.json +4 -4
  11. package/dist/cli/commands.js +27 -6
  12. package/dist/collection.d.ts +3 -1
  13. package/dist/collection.d.ts.map +1 -1
  14. package/dist/collection.js +30 -8
  15. package/dist/create/build-identity.json +4 -4
  16. package/dist/create/cli.js +1 -1
  17. package/dist/create/create.js +4 -6
  18. package/dist/create/package-versions.js +1 -1
  19. package/dist/create/server-source/Cargo.lock +6 -6
  20. package/dist/create/server-source/Cargo.toml +1 -1
  21. package/dist/create/server-source/crates/feltdb/src/lib.rs +126 -35
  22. package/dist/create/server-source/crates/feltdb/src/state_contract.rs +162 -53
  23. package/dist/create/server-source/crates/feltdb/src/worker_mesh.rs +137 -1
  24. package/dist/create/server-source/crates/feltdb/src/workload.rs +1427 -91
  25. package/dist/create/server-source/crates/feltdb-client/Cargo.toml +1 -1
  26. package/dist/create/server-source/crates/feltdb-server/Cargo.toml +1 -1
  27. package/dist/create/server-source/crates/feltdb-server/README.md +6 -1
  28. package/dist/create/server-source/crates/feltdb-server/src/app_state.rs +9 -1
  29. package/dist/create/server-source/crates/feltdb-server/src/auth.rs +85 -25
  30. package/dist/create/server-source/crates/feltdb-server/src/backup.rs +4 -0
  31. package/dist/create/server-source/crates/feltdb-server/src/console_accounts.rs +1009 -0
  32. package/dist/create/server-source/crates/feltdb-server/src/control_authorization.rs +441 -0
  33. package/dist/create/server-source/crates/feltdb-server/src/identity.rs +68 -6
  34. package/dist/create/server-source/crates/feltdb-server/src/key_management.rs +355 -23
  35. package/dist/create/server-source/crates/feltdb-server/src/lib.rs +3 -0
  36. package/dist/create/server-source/crates/feltdb-server/src/main.rs +879 -84
  37. package/dist/create/server-source/crates/feltdb-server/src/redaction.rs +208 -0
  38. package/dist/create/server-source/crates/feltdb-server/src/tenancy.rs +198 -19
  39. package/dist/create/server-source/crates/feltdb-server/tests/transaction_precondition_contract.rs +403 -0
  40. package/dist/db.d.ts +64 -9
  41. package/dist/db.d.ts.map +1 -1
  42. package/dist/db.js +153 -27
  43. package/dist/deployment.d.ts +19 -0
  44. package/dist/deployment.d.ts.map +1 -1
  45. package/dist/deployment.js +38 -2
  46. package/dist/embedded-query.d.ts.map +1 -1
  47. package/dist/embedded-query.js +5 -4
  48. package/dist/embedded-transaction.d.ts +8 -4
  49. package/dist/embedded-transaction.d.ts.map +1 -1
  50. package/dist/embedded-transaction.js +55 -19
  51. package/dist/error-codes.d.ts +31 -2
  52. package/dist/error-codes.d.ts.map +1 -1
  53. package/dist/error-codes.js +41 -2
  54. package/dist/feltdb.d.ts +7 -0
  55. package/dist/feltdb.d.ts.map +1 -1
  56. package/dist/file-db.d.ts +27 -0
  57. package/dist/file-db.d.ts.map +1 -1
  58. package/dist/file-db.js +145 -7
  59. package/dist/http-client.d.ts +11 -3
  60. package/dist/http-client.d.ts.map +1 -1
  61. package/dist/http-client.js +27 -14
  62. package/dist/http-db.d.ts +27 -1
  63. package/dist/http-db.d.ts.map +1 -1
  64. package/dist/http-db.js +252 -54
  65. package/dist/index.js +1 -1
  66. package/dist/local-state-lock.d.ts +34 -0
  67. package/dist/local-state-lock.d.ts.map +1 -0
  68. package/dist/local-state-lock.js +225 -0
  69. package/dist/reactive-graph.d.ts +0 -3
  70. package/dist/reactive-graph.d.ts.map +1 -1
  71. package/dist/reactive-graph.js +11 -1
  72. package/dist/runtime-registry.d.ts +7 -2
  73. package/dist/runtime-registry.d.ts.map +1 -1
  74. package/dist/runtime-registry.js +2 -2
  75. package/dist/studio/components/index.js +1 -1
  76. package/dist/studio/{components-BSGmHfif.js → components-CJmzntBi.js} +2 -1
  77. package/dist/studio/index.js +1 -1
  78. package/dist/studio-app/assets/{feltdb_wasm-3hDngl1h.js → feltdb_wasm-BjM1ylL3.js} +1 -1
  79. package/dist/studio-app/assets/feltdb_wasm_bg-TseJn2Ax.wasm +0 -0
  80. package/dist/studio-app/assets/index-1wd0uKua.js +30 -0
  81. package/dist/studio-app/index.html +1 -1
  82. package/dist/transaction.d.ts +27 -11
  83. package/dist/transaction.d.ts.map +1 -1
  84. package/dist/transaction.js +20 -14
  85. package/dist/wasm/feltdb_wasm_bg.wasm +0 -0
  86. package/dist/wasm/package.json +1 -1
  87. package/dist/workload.d.ts +31 -3
  88. package/dist/workload.d.ts.map +1 -1
  89. package/dist/workload.js +28 -3
  90. package/package.json +1 -1
  91. package/dist/studio-app/assets/feltdb_wasm_bg-CFQT4gCy.wasm +0 -0
  92. package/dist/studio-app/assets/index-Dql1hS5m.js +0 -30
@@ -59,6 +59,42 @@ export interface AgentExecutionResult {
59
59
  /** Error message if failed */
60
60
  error?: string;
61
61
  }
62
+ /** Look up an execution by the task it works on, or by the agent that runs it. */
63
+ export type FindAgentExecutionQuery = {
64
+ taskId: string;
65
+ agentRef?: never;
66
+ } | {
67
+ agentRef: AgentRef | string;
68
+ taskId?: never;
69
+ };
70
+ /**
71
+ * Where a runtime that belongs to a database keeps its executions.
72
+ *
73
+ * `StateFirstDB` binds one over `_flow_agent_executions`; every lifecycle
74
+ * change then commits before the call returns, and `findExecution` reads that
75
+ * collection through a declared index. A runtime constructed on its own has
76
+ * no store and keeps executions in process memory only.
77
+ */
78
+ export interface AgentExecutionStore {
79
+ create(execution: AgentExecution): Promise<void>;
80
+ update(execution: AgentExecution): Promise<void>;
81
+ /** The most recently created matching execution, or null. Bounded and indexed. */
82
+ find(query: FindAgentExecutionQuery): Promise<AgentExecution | null>;
83
+ }
84
+ /** Options for a new execution. */
85
+ export interface CreateAgentExecutionOptions {
86
+ /** The agent-state task this execution works on; `findExecution({ taskId })` finds it. */
87
+ taskId?: string;
88
+ metadata?: Record<string, any>;
89
+ }
90
+ /** A lifecycle request the execution's current state does not allow. */
91
+ export declare class AgentExecutionTransitionError extends Error {
92
+ readonly executionId: string;
93
+ readonly from: AgentExecutionStatus;
94
+ readonly to: AgentExecutionStatus | 'resume';
95
+ readonly code = "INVALID_TRANSITION";
96
+ constructor(executionId: string, from: AgentExecutionStatus, to: AgentExecutionStatus | 'resume', message: string);
97
+ }
62
98
  /**
63
99
  * Agent ownership manager for distributed execution
64
100
  */
@@ -98,7 +134,11 @@ export declare class AgentRuntime {
98
134
  private executions;
99
135
  private ownership;
100
136
  private triggers;
137
+ private store?;
101
138
  constructor(registry: AgentRegistry, config: AgentRuntimeConfig);
139
+ /** Whether lifecycle changes are committed to a database. */
140
+ get durable(): boolean;
141
+ private persist;
102
142
  /**
103
143
  * Register an agent handler
104
144
  */
@@ -106,19 +146,36 @@ export declare class AgentRuntime {
106
146
  /**
107
147
  * Create a new agent execution
108
148
  */
109
- createExecution(db: StateFirstDB, agentRef: AgentRef, goal: string, inputs: string[]): Promise<AgentExecution>;
149
+ createExecution(db: StateFirstDB, agentRef: AgentRef, goal: string, inputs: string[], options?: CreateAgentExecutionOptions): Promise<AgentExecution>;
110
150
  /**
111
151
  * Start an agent execution
112
152
  */
113
153
  start(execution: AgentExecution, peerId: string): Promise<AgentExecutionResult>;
114
154
  /**
115
- * Resume an execution from durable state
155
+ * Resume an execution from durable state: claim it for `peerId` and move it
156
+ * to `Observing`. On a database's runtime the change is committed before
157
+ * this returns. A terminal execution (Completed, Failed, Cancelled) cannot
158
+ * be resumed.
116
159
  */
117
160
  resume(execution: AgentExecution, peerId: string): Promise<AgentExecutionResult>;
118
161
  /**
119
162
  * Transition execution to next state
120
163
  */
121
164
  transition(execution: AgentExecution, nextStatus: AgentExecutionStatus): Promise<void>;
165
+ /**
166
+ * Cancel an execution. `Cancelled` is terminal and reachable from every
167
+ * non-terminal state; cancelling a terminal execution is refused. Releases
168
+ * ownership. On a database's runtime the change is committed before this
169
+ * returns.
170
+ */
171
+ cancel(execution: AgentExecution, reason?: string): Promise<void>;
172
+ /**
173
+ * The most recently created execution for an agent-state task, or for an
174
+ * agent. On a database's runtime this is one indexed, bounded read of
175
+ * `_flow_agent_executions` (it survives restart); a runtime without a store
176
+ * looks in process memory.
177
+ */
178
+ findExecution(query: FindAgentExecutionQuery): Promise<AgentExecution | null>;
122
179
  /**
123
180
  * Complete an execution
124
181
  */
@@ -127,6 +184,11 @@ export declare class AgentRuntime {
127
184
  * Fail an execution
128
185
  */
129
186
  fail(execution: AgentExecution, error: string): Promise<void>;
187
+ /**
188
+ * A cancelled execution stays cancelled: a worker that finishes after the
189
+ * cancellation cannot report it completed or failed.
190
+ */
191
+ private refuseCancelled;
130
192
  /**
131
193
  * Get execution by ID
132
194
  */
@@ -1 +1 @@
1
- {"version":3,"file":"agent-runtime.d.ts","sourceRoot":"","sources":["../src/agent-runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-runtime.d.ts","sourceRoot":"","sources":["../src/agent-runtime.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,24 @@
4
4
  * Manages agent lifecycle, execution, ownership, and recovery.
5
5
  * Agents run on the distributed fabric as durable participants.
6
6
  */
7
- import { AgentExecutionStatus, generateExecutionId } from './agent.js';
7
+ import { AGENT_EXECUTION_TERMINAL_STATUSES, AgentExecutionStatus, generateExecutionId } from './agent.js';
8
+ /** A lifecycle request the execution's current state does not allow. */
9
+ export class AgentExecutionTransitionError extends Error {
10
+ executionId;
11
+ from;
12
+ to;
13
+ code = 'INVALID_TRANSITION';
14
+ constructor(executionId, from, to, message) {
15
+ super(message);
16
+ this.executionId = executionId;
17
+ this.from = from;
18
+ this.to = to;
19
+ this.name = 'AgentExecutionTransitionError';
20
+ }
21
+ }
22
+ function isTerminal(status) {
23
+ return AGENT_EXECUTION_TERMINAL_STATUSES.includes(status);
24
+ }
8
25
  /**
9
26
  * Agent ownership manager for distributed execution
10
27
  */
@@ -90,11 +107,24 @@ export class AgentRuntime {
90
107
  executions = new Map();
91
108
  ownership;
92
109
  triggers = new Map();
110
+ store;
93
111
  constructor(registry, config) {
94
112
  this.registry = registry;
95
113
  this.config = config;
96
114
  this.ownership = new AgentOwnershipManager();
97
115
  }
116
+ /** @internal Bind durable storage; called once by the owning database. */
117
+ bindStore(store) {
118
+ this.store = store;
119
+ }
120
+ /** Whether lifecycle changes are committed to a database. */
121
+ get durable() {
122
+ return Boolean(this.store);
123
+ }
124
+ async persist(execution) {
125
+ this.executions.set(execution.executionId, execution);
126
+ await this.store?.update(execution);
127
+ }
98
128
  /**
99
129
  * Register an agent handler
100
130
  */
@@ -104,8 +134,11 @@ export class AgentRuntime {
104
134
  /**
105
135
  * Create a new agent execution
106
136
  */
107
- async createExecution(db, agentRef, goal, inputs) {
137
+ async createExecution(db, agentRef, goal, inputs, options = {}) {
108
138
  const executionId = generateExecutionId(agentRef.name);
139
+ if (options.taskId !== undefined && (typeof options.taskId !== 'string' || !options.taskId)) {
140
+ throw new Error('taskId must be a non-empty string');
141
+ }
109
142
  const execution = {
110
143
  executionId,
111
144
  agentRef,
@@ -118,7 +151,10 @@ export class AgentRuntime {
118
151
  actionIds: [],
119
152
  attempt: 1,
120
153
  createdMs: Date.now(),
154
+ ...(options.taskId === undefined ? {} : { taskId: options.taskId }),
155
+ ...(options.metadata === undefined ? {} : { metadata: options.metadata }),
121
156
  };
157
+ await this.store?.create(execution);
122
158
  this.executions.set(executionId, execution);
123
159
  return execution;
124
160
  }
@@ -135,6 +171,7 @@ export class AgentRuntime {
135
171
  execution.status = AgentExecutionStatus.Planning;
136
172
  execution.ownedBy = peerId;
137
173
  execution.startedMs = Date.now();
174
+ await this.persist(execution);
138
175
  return {
139
176
  execution,
140
177
  status: AgentExecutionStatus.Planning,
@@ -145,6 +182,7 @@ export class AgentRuntime {
145
182
  execution.status = AgentExecutionStatus.Failed;
146
183
  execution.error = String(error);
147
184
  execution.completedMs = Date.now();
185
+ await this.persist(execution);
148
186
  return {
149
187
  execution,
150
188
  status: AgentExecutionStatus.Failed,
@@ -153,9 +191,15 @@ export class AgentRuntime {
153
191
  }
154
192
  }
155
193
  /**
156
- * Resume an execution from durable state
194
+ * Resume an execution from durable state: claim it for `peerId` and move it
195
+ * to `Observing`. On a database's runtime the change is committed before
196
+ * this returns. A terminal execution (Completed, Failed, Cancelled) cannot
197
+ * be resumed.
157
198
  */
158
199
  async resume(execution, peerId) {
200
+ if (isTerminal(execution.status)) {
201
+ throw new AgentExecutionTransitionError(execution.executionId, execution.status, 'resume', `Cannot resume execution ${execution.executionId}: it is ${execution.status}`);
202
+ }
159
203
  // Try to claim ownership (new peer)
160
204
  const claimed = this.ownership.claim(execution.executionId, peerId, 30000);
161
205
  if (!claimed && this.ownership.getOwner(execution.executionId) !== peerId) {
@@ -163,6 +207,7 @@ export class AgentRuntime {
163
207
  }
164
208
  execution.ownedBy = peerId;
165
209
  execution.status = AgentExecutionStatus.Observing;
210
+ await this.persist(execution);
166
211
  return {
167
212
  execution,
168
213
  status: AgentExecutionStatus.Observing,
@@ -173,27 +218,80 @@ export class AgentRuntime {
173
218
  */
174
219
  async transition(execution, nextStatus) {
175
220
  const validTransitions = {
176
- [AgentExecutionStatus.Created]: [AgentExecutionStatus.Planning],
177
- [AgentExecutionStatus.Planning]: [AgentExecutionStatus.Observing],
178
- [AgentExecutionStatus.Observing]: [AgentExecutionStatus.Deciding, AgentExecutionStatus.Waiting],
179
- [AgentExecutionStatus.Deciding]: [AgentExecutionStatus.Acting],
180
- [AgentExecutionStatus.Acting]: [AgentExecutionStatus.Observing, AgentExecutionStatus.Waiting, AgentExecutionStatus.Completed],
181
- [AgentExecutionStatus.Waiting]: [AgentExecutionStatus.Observing, AgentExecutionStatus.Blocked],
221
+ [AgentExecutionStatus.Created]: [AgentExecutionStatus.Planning, AgentExecutionStatus.Cancelled],
222
+ [AgentExecutionStatus.Planning]: [AgentExecutionStatus.Observing, AgentExecutionStatus.Cancelled],
223
+ [AgentExecutionStatus.Observing]: [AgentExecutionStatus.Deciding, AgentExecutionStatus.Waiting, AgentExecutionStatus.Cancelled],
224
+ [AgentExecutionStatus.Deciding]: [AgentExecutionStatus.Acting, AgentExecutionStatus.Cancelled],
225
+ [AgentExecutionStatus.Acting]: [AgentExecutionStatus.Observing, AgentExecutionStatus.Waiting, AgentExecutionStatus.Completed, AgentExecutionStatus.Cancelled],
226
+ [AgentExecutionStatus.Waiting]: [AgentExecutionStatus.Observing, AgentExecutionStatus.Blocked, AgentExecutionStatus.Cancelled],
182
227
  [AgentExecutionStatus.Completed]: [],
183
228
  [AgentExecutionStatus.Failed]: [],
184
229
  [AgentExecutionStatus.Cancelled]: [],
185
- [AgentExecutionStatus.Blocked]: [AgentExecutionStatus.Observing],
230
+ [AgentExecutionStatus.Blocked]: [AgentExecutionStatus.Observing, AgentExecutionStatus.Cancelled],
186
231
  };
187
232
  const allowed = validTransitions[execution.status] || [];
188
233
  if (!allowed.includes(nextStatus)) {
189
- throw new Error(`Invalid transition from ${execution.status} to ${nextStatus}`);
234
+ throw new AgentExecutionTransitionError(execution.executionId, execution.status, nextStatus, `Invalid transition from ${execution.status} to ${nextStatus}`);
235
+ }
236
+ if (nextStatus === AgentExecutionStatus.Cancelled) {
237
+ await this.cancel(execution);
238
+ return;
190
239
  }
191
240
  execution.status = nextStatus;
241
+ await this.persist(execution);
242
+ }
243
+ /**
244
+ * Cancel an execution. `Cancelled` is terminal and reachable from every
245
+ * non-terminal state; cancelling a terminal execution is refused. Releases
246
+ * ownership. On a database's runtime the change is committed before this
247
+ * returns.
248
+ */
249
+ async cancel(execution, reason) {
250
+ if (isTerminal(execution.status)) {
251
+ throw new AgentExecutionTransitionError(execution.executionId, execution.status, AgentExecutionStatus.Cancelled, `Cannot cancel execution ${execution.executionId}: it is already ${execution.status}`);
252
+ }
253
+ if (reason !== undefined && (typeof reason !== 'string' || !reason.trim())) {
254
+ throw new Error('a cancellation reason must be a non-empty string');
255
+ }
256
+ execution.status = AgentExecutionStatus.Cancelled;
257
+ if (reason !== undefined)
258
+ execution.cancelReason = reason;
259
+ execution.completedMs = Date.now();
260
+ if (execution.ownedBy) {
261
+ this.ownership.release(execution.executionId, execution.ownedBy);
262
+ }
263
+ await this.persist(execution);
264
+ }
265
+ /**
266
+ * The most recently created execution for an agent-state task, or for an
267
+ * agent. On a database's runtime this is one indexed, bounded read of
268
+ * `_flow_agent_executions` (it survives restart); a runtime without a store
269
+ * looks in process memory.
270
+ */
271
+ async findExecution(query) {
272
+ const byTask = query && 'taskId' in query && query.taskId !== undefined;
273
+ const byAgent = query && 'agentRef' in query && query.agentRef !== undefined;
274
+ if (byTask === byAgent)
275
+ throw new Error('findExecution takes exactly one of taskId or agentRef');
276
+ if (byTask && (typeof query.taskId !== 'string' || !query.taskId))
277
+ throw new Error('taskId must be a non-empty string');
278
+ if (this.store)
279
+ return this.store.find(query);
280
+ const agent = byAgent ? String(query.agentRef) : undefined;
281
+ let newest = null;
282
+ for (const execution of this.executions.values()) {
283
+ const matches = byTask ? execution.taskId === query.taskId : execution.agentRef.toString() === agent;
284
+ if (matches && (!newest || execution.createdMs > newest.createdMs
285
+ || (execution.createdMs === newest.createdMs && execution.executionId > newest.executionId)))
286
+ newest = execution;
287
+ }
288
+ return newest;
192
289
  }
193
290
  /**
194
291
  * Complete an execution
195
292
  */
196
293
  async complete(execution, resultRef) {
294
+ this.refuseCancelled(execution, AgentExecutionStatus.Completed);
197
295
  execution.status = AgentExecutionStatus.Completed;
198
296
  execution.resultRef = resultRef;
199
297
  execution.completedMs = Date.now();
@@ -201,11 +299,13 @@ export class AgentRuntime {
201
299
  if (execution.ownedBy) {
202
300
  this.ownership.release(execution.executionId, execution.ownedBy);
203
301
  }
302
+ await this.persist(execution);
204
303
  }
205
304
  /**
206
305
  * Fail an execution
207
306
  */
208
307
  async fail(execution, error) {
308
+ this.refuseCancelled(execution, AgentExecutionStatus.Failed);
209
309
  execution.status = AgentExecutionStatus.Failed;
210
310
  execution.error = error;
211
311
  execution.completedMs = Date.now();
@@ -213,6 +313,16 @@ export class AgentRuntime {
213
313
  if (execution.ownedBy) {
214
314
  this.ownership.release(execution.executionId, execution.ownedBy);
215
315
  }
316
+ await this.persist(execution);
317
+ }
318
+ /**
319
+ * A cancelled execution stays cancelled: a worker that finishes after the
320
+ * cancellation cannot report it completed or failed.
321
+ */
322
+ refuseCancelled(execution, to) {
323
+ if (execution.status === AgentExecutionStatus.Cancelled) {
324
+ throw new AgentExecutionTransitionError(execution.executionId, execution.status, to, `Cannot mark execution ${execution.executionId} ${to}: it was cancelled`);
325
+ }
216
326
  }
217
327
  /**
218
328
  * Get execution by ID
@@ -115,6 +115,38 @@ export interface AgentTask {
115
115
  /** The authority's record version for the task head. Opaque to callers. */
116
116
  revision: number;
117
117
  }
118
+ export interface ListAgentTasksInput {
119
+ /** Only tasks in this status. */
120
+ status?: AgentTaskStatus;
121
+ /** Only tasks whose `scope.project` is this project. */
122
+ project?: string;
123
+ /** Page size. Default 50, at most 1,000. */
124
+ limit?: number;
125
+ /** The `nextCursor` of the previous page of the same query, passed unchanged. */
126
+ cursor?: string;
127
+ }
128
+ export interface AgentTaskPage {
129
+ /** Most recently updated first; ties by task id. */
130
+ tasks: AgentTask[];
131
+ /** Present when more tasks match. */
132
+ nextCursor?: string;
133
+ }
134
+ export interface ListAgentHandoffsInput {
135
+ /** `true` is shorthand for `status: 'open'`. `false` is refused: name a status instead. */
136
+ open?: boolean;
137
+ status?: AgentHandoffStatus;
138
+ /** Page size. Default 50, at most 1,000. */
139
+ limit?: number;
140
+ cursor?: string;
141
+ }
142
+ export interface AgentHandoffPage {
143
+ /**
144
+ * Newest first; ties by handoff id. Records as committed, not resolved
145
+ * against their task: call `getHandoff(id)` for the resolved view.
146
+ */
147
+ handoffs: AgentHandoffRecord[];
148
+ nextCursor?: string;
149
+ }
118
150
  export interface AgentCheckpoint {
119
151
  checkpoint_id: string;
120
152
  task_id: string;
@@ -391,6 +423,15 @@ export declare class AgentStateStore {
391
423
  checkpoint: AgentCheckpoint;
392
424
  } | null>;
393
425
  getCheckpoint(taskId: string, checkpointVersion: number): Promise<AgentCheckpoint | null>;
426
+ /**
427
+ * One bounded page of tasks, most recently updated first (ties by task id),
428
+ * optionally narrowed to a status and/or a project.
429
+ *
430
+ * Every filter shape is answered by one declared compound index with an
431
+ * equality prefix; nothing reads the whole collection. Continue with
432
+ * `cursor: page.nextCursor` and the same filters.
433
+ */
434
+ listTasks(input?: ListAgentTasksInput): Promise<AgentTaskPage>;
394
435
  /**
395
436
  * Commit checkpoint N+1 atomically with the task head.
396
437
  *
@@ -449,6 +490,12 @@ export declare class AgentStateStore {
449
490
  * reference the checkpoint that is committed when it commits.
450
491
  */
451
492
  createHandoff(taskId: string, input: CreateHandoffInput): Promise<AgentHandoff>;
493
+ /**
494
+ * One bounded page of handoff records, newest first (ties by handoff id).
495
+ * `open: true` lists the handoffs nobody has claimed yet. Indexed; never a
496
+ * collection scan.
497
+ */
498
+ listHandoffs(input?: ListAgentHandoffsInput): Promise<AgentHandoffPage>;
452
499
  getHandoff(handoffId: string): Promise<AgentHandoff | null>;
453
500
  /**
454
501
  * Take exclusive, leased ownership of a handoff and its task.
@@ -480,6 +527,7 @@ export declare class AgentStateStore {
480
527
  * counted in `budget.omitted`.
481
528
  */
482
529
  assembleContext(taskId: string, options: AssembleContextOptions): Promise<AgentContextBundle>;
530
+ private page;
483
531
  private taskRow;
484
532
  private requireTask;
485
533
  private assertOwner;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-state.d.ts","sourceRoot":"","sources":["../src/agent-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-state.d.ts","sourceRoot":"","sources":["../src/agent-state.ts"],"names":[],"mappings":"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"}