@feltdb/core 0.12.2 → 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.
- package/dist/agent-runtime.d.ts +64 -2
- package/dist/agent-runtime.d.ts.map +1 -1
- package/dist/agent-runtime.js +121 -11
- package/dist/agent-state.d.ts +48 -0
- package/dist/agent-state.d.ts.map +1 -1
- package/dist/agent-state.js +174 -12
- package/dist/agent.d.ts +10 -1
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +10 -1
- package/dist/build-identity.json +4 -4
- package/dist/cli/commands.js +34 -7
- package/dist/cli/workspace-integration.js +8 -0
- package/dist/collection.d.ts +3 -1
- package/dist/collection.d.ts.map +1 -1
- package/dist/collection.js +30 -8
- package/dist/create/build-identity.json +4 -4
- package/dist/create/cli.js +47 -38
- package/dist/create/create.js +21 -8
- package/dist/create/package-versions.js +1 -1
- package/dist/create/server-source/Cargo.lock +6 -6
- package/dist/create/server-source/Cargo.toml +1 -1
- package/dist/create/server-source/crates/feltdb/src/lib.rs +126 -35
- package/dist/create/server-source/crates/feltdb/src/state_contract.rs +162 -53
- package/dist/create/server-source/crates/feltdb/src/worker_mesh.rs +341 -2
- package/dist/create/server-source/crates/feltdb/src/workload.rs +2094 -126
- package/dist/create/server-source/crates/feltdb/tests/production_readiness_contract.rs +18 -12
- package/dist/create/server-source/crates/feltdb/tests/workload_envelope_contract.rs +17 -5
- package/dist/create/server-source/crates/feltdb-client/Cargo.toml +1 -1
- package/dist/create/server-source/crates/feltdb-server/Cargo.toml +1 -1
- package/dist/create/server-source/crates/feltdb-server/README.md +6 -1
- package/dist/create/server-source/crates/feltdb-server/src/agent_execution.rs +511 -0
- package/dist/create/server-source/crates/feltdb-server/src/app_state.rs +9 -1
- package/dist/create/server-source/crates/feltdb-server/src/auth.rs +113 -25
- package/dist/create/server-source/crates/feltdb-server/src/backup.rs +4 -0
- package/dist/create/server-source/crates/feltdb-server/src/console_accounts.rs +1009 -0
- package/dist/create/server-source/crates/feltdb-server/src/control_authorization.rs +441 -0
- package/dist/create/server-source/crates/feltdb-server/src/identity.rs +68 -6
- package/dist/create/server-source/crates/feltdb-server/src/key_management.rs +355 -23
- package/dist/create/server-source/crates/feltdb-server/src/lib.rs +4 -0
- package/dist/create/server-source/crates/feltdb-server/src/main.rs +1740 -236
- package/dist/create/server-source/crates/feltdb-server/src/redaction.rs +208 -0
- package/dist/create/server-source/crates/feltdb-server/src/tenancy.rs +198 -19
- package/dist/create/server-source/crates/feltdb-server/tests/transaction_precondition_contract.rs +403 -0
- package/dist/create/setup-summary.js +40 -0
- package/dist/db.d.ts +91 -10
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +170 -31
- package/dist/deployment.d.ts +19 -0
- package/dist/deployment.d.ts.map +1 -1
- package/dist/deployment.js +38 -2
- package/dist/development-runtime-bridge.d.ts +20 -0
- package/dist/development-runtime-bridge.d.ts.map +1 -1
- package/dist/development-runtime-bridge.js +61 -12
- package/dist/embedded-query.d.ts.map +1 -1
- package/dist/embedded-query.js +5 -4
- package/dist/embedded-transaction.d.ts +8 -4
- package/dist/embedded-transaction.d.ts.map +1 -1
- package/dist/embedded-transaction.js +55 -19
- package/dist/error-codes.d.ts +31 -2
- package/dist/error-codes.d.ts.map +1 -1
- package/dist/error-codes.js +41 -2
- package/dist/feltdb.d.ts +7 -0
- package/dist/feltdb.d.ts.map +1 -1
- package/dist/file-db.d.ts +27 -0
- package/dist/file-db.d.ts.map +1 -1
- package/dist/file-db.js +145 -7
- package/dist/http-client.d.ts +11 -3
- package/dist/http-client.d.ts.map +1 -1
- package/dist/http-client.js +27 -14
- package/dist/http-db.d.ts +40 -1
- package/dist/http-db.d.ts.map +1 -1
- package/dist/http-db.js +285 -58
- package/dist/index.js +1 -1
- package/dist/local-state-lock.d.ts +34 -0
- package/dist/local-state-lock.d.ts.map +1 -0
- package/dist/local-state-lock.js +225 -0
- package/dist/reactive-graph.d.ts +0 -3
- package/dist/reactive-graph.d.ts.map +1 -1
- package/dist/reactive-graph.js +11 -1
- package/dist/runtime-registry.d.ts +7 -2
- package/dist/runtime-registry.d.ts.map +1 -1
- package/dist/runtime-registry.js +2 -2
- package/dist/studio/{KeyManagementPanel-D5FMvvU9.js → KeyManagementPanel-skUNnKRw.js} +36 -29
- package/dist/studio/app.d.ts +8 -1
- package/dist/studio/app.d.ts.map +1 -1
- package/dist/studio/components/KeyManagementPanel.d.ts.map +1 -1
- package/dist/studio/components/KeyManagementPanel.js +1 -1
- package/dist/studio/components/index.js +2 -2
- package/dist/studio/{components-B4eKIUN5.js → components-CJmzntBi.js} +8 -7
- package/dist/studio/control-plane/Data.d.ts.map +1 -1
- package/dist/studio/control-plane/Instance.d.ts +4 -1
- package/dist/studio/control-plane/Instance.d.ts.map +1 -1
- package/dist/studio/control-plane/Operations.d.ts +4 -1
- package/dist/studio/control-plane/Operations.d.ts.map +1 -1
- package/dist/studio/control-plane/index.js +2 -2
- package/dist/studio/control-plane/primitives.d.ts +16 -0
- package/dist/studio/control-plane/primitives.d.ts.map +1 -1
- package/dist/studio/{control-plane-fxMcJn74.js → control-plane-CaBA7Rgv.js} +448 -424
- package/dist/studio/index.d.ts +1 -0
- package/dist/studio/index.d.ts.map +1 -1
- package/dist/studio/index.js +384 -247
- package/dist/studio/navigation.d.ts +57 -0
- package/dist/studio/navigation.d.ts.map +1 -0
- package/dist/studio/studio.css +1 -1
- package/dist/studio/utils/control-plane-api.d.ts +2 -0
- package/dist/studio/utils/control-plane-api.d.ts.map +1 -1
- package/dist/studio/utils/control-plane-api.js +5 -1
- package/dist/studio-app/assets/{feltdb_wasm-BatwwogY.js → feltdb_wasm-BjM1ylL3.js} +1 -1
- package/dist/studio-app/assets/feltdb_wasm_bg-TseJn2Ax.wasm +0 -0
- package/dist/studio-app/assets/index-1wd0uKua.js +30 -0
- package/dist/studio-app/assets/{index-CiC8VY-a.css → index-vi21oEQa.css} +1 -1
- package/dist/studio-app/index.html +2 -2
- package/dist/transaction.d.ts +27 -11
- package/dist/transaction.d.ts.map +1 -1
- package/dist/transaction.js +20 -14
- package/dist/wasm/feltdb_wasm_bg.wasm +0 -0
- package/dist/wasm/package.json +1 -1
- package/dist/workload.d.ts +31 -3
- package/dist/workload.d.ts.map +1 -1
- package/dist/workload.js +28 -3
- package/dist/workspace/local-development-authority.d.ts +19 -0
- package/dist/workspace/local-development-authority.d.ts.map +1 -1
- package/dist/workspace/local-development-authority.js +335 -15
- package/package.json +1 -1
- package/dist/studio-app/assets/feltdb_wasm_bg-BX0newOr.wasm +0 -0
- package/dist/studio-app/assets/index-DoVvbIay.js +0 -30
package/dist/agent-runtime.d.ts
CHANGED
|
@@ -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":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EACV,QAAQ,EACR,eAAe,EACf,cAAc,EACf,MAAM,YAAY,CAAC;AACpB,OAAO,
|
|
1
|
+
{"version":3,"file":"agent-runtime.d.ts","sourceRoot":"","sources":["../src/agent-runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/agent-runtime.js
CHANGED
|
@@ -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
|
|
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
|
package/dist/agent-state.d.ts
CHANGED
|
@@ -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":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAEL,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAC5B,MAAM,kBAAkB,CAAC;AAE1B,eAAO,MAAM,4BAA4B,sBAAsB,CAAC;AAChE,eAAO,MAAM,kCAAkC,4BAA4B,CAAC;AAC5E,eAAO,MAAM,8BAA8B,wBAAwB,CAAC;AACpE,eAAO,MAAM,+BAA+B,yBAAyB,CAAC;AACtE,eAAO,MAAM,oBAAoB,2BAA2B,CAAC;AAU7D,mEAAmE;AACnE,eAAO,MAAM,mBAAmB,EAAE,aAAa,CAAC;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,WAAW,CAAA;CAAE,CAoFzF,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,WAAW,CAAC;AAK1F,MAAM,MAAM,mBAAmB,GAC3B,iBAAiB,GACjB,WAAW,GACX,kBAAkB,GAClB,oBAAoB,GACpB,oBAAoB,GACpB,iBAAiB,GACjB,eAAe,GACf,gBAAgB,GAChB,iBAAiB,GACjB,sBAAsB,CAAC;AAE3B,wDAAwD;AACxD,qBAAa,eAAgB,SAAQ,KAAK;IAEtC,QAAQ,CAAC,IAAI,EAAE,mBAAmB;IAElC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAF/B,IAAI,EAAE,mBAAmB,EAClC,OAAO,EAAE,MAAM,EACN,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;CAKhD;AAED,2FAA2F;AAC3F,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,kBAAkB,GAC1B;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1F;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7E,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAA;CAAE,GACrI;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,KAAK,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1H,oFAAoF;AACpF,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,cAAc,CAAC;IACtB,MAAM,EAAE,eAAe,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,EAAE,MAAM,CAAC;IAC3B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,2EAA2E;IAC3E,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,iCAAiC;IACjC,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,wDAAwD;IACxD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,oDAAoD;IACpD,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,qCAAqC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,sBAAsB;IACrC,2FAA2F;IAC3F,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,QAAQ,EAAE,kBAAkB,EAAE,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,eAAe,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,oDAAoD;IACpD,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,8DAA8D;IAC9D,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,8DAA8D;IAC9D,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,sBAAsB,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC,eAAe,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC,CAAC;IACnE,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,sBAAsB,CAAC;CACpC;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,+FAA+F;IAC/F,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,0DAA0D;IAC1D,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,QAAQ,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAChC,SAAS,CAAC,EAAE,sBAAsB,CAAC;CACpC;AAED,MAAM,MAAM,gBAAgB,GACxB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7C,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,YAAY,GAAG,aAAa,CAAC;AAExE,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,gBAAgB,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,MAAM,EAAE,iBAAiB,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yFAAyF;IACzF,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CAC9F;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAC7F,yDAAyD;IACzD,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;AAEjE,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,aAAa,EAAE,aAAa,EAAE,CAAC;IAC/B,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,KAAK,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAClE,KAAK,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACtD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,uFAAuF;AACvF,MAAM,WAAW,YAAa,SAAQ,kBAAkB;IACtD,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,cAAc,CAAC;IACtB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,qFAAqF;IACrF,0BAA0B,EAAE,MAAM,CAAC;IACnC,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,yEAAyE;IACzE,YAAY,CAAC,EAAE,aAAa,EAAE,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,oFAAoF;IACpF,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,YAAY,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,wEAAwE;IACxE,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8DAA8D;IAC9D,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,OAAO,oBAAoB,CAAC;IACpC,IAAI,EAAE;QACJ,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,cAAc,CAAC;QACtB,MAAM,EAAE,eAAe,CAAC;QACxB,KAAK,EAAE,MAAM,CAAC;QACd,aAAa,EAAE,MAAM,CAAC;QACtB,kBAAkB,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,UAAU,EAAE;QACV,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,eAAe,CAAC;QACxB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,EAAE,CAAC;QACvB,WAAW,EAAE,MAAM,EAAE,CAAC;QACtB,yEAAyE;QACzE,cAAc,EAAE,MAAM,EAAE,CAAC;QACzB,yEAAyE;QACzE,SAAS,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IACF,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,OAAO,CAAC,EAAE;QACR,UAAU,EAAE,MAAM,CAAC;QACnB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,MAAM,EAAE,kBAAkB,CAAC;QAC3B,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,EAAE,CAAC;QACtB,aAAa,EAAE,MAAM,EAAE,CAAC;QACxB,aAAa,EAAE,aAAa,EAAE,CAAC;KAChC,CAAC;IACF,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,WAAW,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC;IAC7G,MAAM,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,eAAe,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAChH,MAAM,EAAE;QACN,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,YAAY,CAAC;QACnB,OAAO,EAAE;YAAE,cAAc,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;KAC1F,CAAC;CACH;AAED,oFAAoF;AACpF,MAAM,WAAW,kBAAkB;IACjC,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG;QAC3B,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAC5C,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;QACvC,WAAW,IAAI,WAAW,EAAE,CAAC;KAC9B,CAAC;IACF,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;IACnG,OAAO,CAAC,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpF,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,sBAAsB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAC/I,YAAY,CAAC,EAAE,MAAM;QAAE,YAAY,EAAE,OAAO,CAAC;QAAC,eAAe,EAAE,OAAO,CAAA;KAAE,CAAC;CAC1E;AAED,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAuJD;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,EAAE,EAAE,kBAAkB,EAAE,OAAO,GAAE,qBAA0B,GAAG,OAAO,CAAC,eAAe,CAAC,CAqB1H;AAED,yEAAyE;AACzE,qBAAa,eAAe;IACd,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAAF,EAAE,EAAE,kBAAkB;IAI7C,UAAU,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,SAAS,CAAC;QAAC,UAAU,EAAE,eAAe,CAAA;KAAE,CAAC;IAoDxG,6EAA6E;IACvE,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,SAAS,CAAC;QAAC,UAAU,EAAE,eAAe,CAAA;KAAE,GAAG,IAAI,CAAC;IAWzF,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAO/F;;;;;;;OAOG;IACG,SAAS,CAAC,KAAK,GAAE,mBAAwB,GAAG,OAAO,CAAC,aAAa,CAAC;IAiBxE;;;;;;OAMG;IACG,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,SAAS,CAAC;QAAC,UAAU,EAAE,eAAe,CAAA;KAAE,CAAC;IAuFxH;;;;OAIG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,sBAAsB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAQtG,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC;IA6CpD,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAK9D;;;OAGG;IACG,MAAM,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,gBAAgB,CAAC;QAAC,MAAM,CAAC,EAAE,iBAAiB,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAiBxK;;;OAGG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,GAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAY3F,4FAA4F;IACtF,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC;QAAE,UAAU,EAAE,WAAW,CAAC;QAAC,MAAM,EAAE,WAAW,CAAA;KAAE,CAAC;IAyCnH,8CAA8C;IACxC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,WAAW,CAAC;IAyB7H;;;;OAIG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC;IA8DrF;;;;OAIG;IACG,YAAY,CAAC,KAAK,GAAE,sBAA2B,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAwB3E,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAUjE;;;;;;;;OAQG;IACG,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA6E3F;;;OAGG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,CAAC;IA8B3G;;;;;;;;;;OAUG;IACG,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,kBAAkB,CAAC;YAyHrF,IAAI;YA+BJ,OAAO;YAIP,WAAW;IAMzB,OAAO,CAAC,WAAW;YAML,eAAe;YAiCf,aAAa;CAK5B"}
|