@animalabs/agent-framework 0.26.1 → 0.27.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/README.md +57 -7
- package/dist/src/agent.d.ts +263 -22
- package/dist/src/agent.d.ts.map +1 -1
- package/dist/src/agent.js +531 -54
- package/dist/src/agent.js.map +1 -1
- package/dist/src/api/server.d.ts.map +1 -1
- package/dist/src/api/server.js +1 -2
- package/dist/src/api/server.js.map +1 -1
- package/dist/src/auto-continue.d.ts +33 -0
- package/dist/src/auto-continue.d.ts.map +1 -0
- package/dist/src/auto-continue.js +35 -0
- package/dist/src/auto-continue.js.map +1 -0
- package/dist/src/code-execution/isolate/scripts.d.ts +11 -0
- package/dist/src/code-execution/isolate/scripts.d.ts.map +1 -1
- package/dist/src/code-execution/isolate/scripts.js +5 -1
- package/dist/src/code-execution/isolate/scripts.js.map +1 -1
- package/dist/src/framework.d.ts +829 -156
- package/dist/src/framework.d.ts.map +1 -1
- package/dist/src/framework.js +3906 -1008
- package/dist/src/framework.js.map +1 -1
- package/dist/src/gate/event-gate.d.ts +309 -46
- package/dist/src/gate/event-gate.d.ts.map +1 -1
- package/dist/src/gate/event-gate.js +2117 -395
- package/dist/src/gate/event-gate.js.map +1 -1
- package/dist/src/gate/index.d.ts +2 -2
- package/dist/src/gate/index.d.ts.map +1 -1
- package/dist/src/gate/index.js +1 -1
- package/dist/src/gate/index.js.map +1 -1
- package/dist/src/gate/recipe-reconcile.d.ts +103 -0
- package/dist/src/gate/recipe-reconcile.d.ts.map +1 -0
- package/dist/src/gate/recipe-reconcile.js +325 -0
- package/dist/src/gate/recipe-reconcile.js.map +1 -0
- package/dist/src/gate/types.d.ts +68 -8
- package/dist/src/gate/types.d.ts.map +1 -1
- package/dist/src/index.d.ts +6 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +5 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/mcpl/channel-registry.d.ts +433 -113
- package/dist/src/mcpl/channel-registry.d.ts.map +1 -1
- package/dist/src/mcpl/channel-registry.js +1152 -434
- package/dist/src/mcpl/channel-registry.js.map +1 -1
- package/dist/src/mcpl/conversation-router.d.ts +16 -8
- package/dist/src/mcpl/conversation-router.d.ts.map +1 -1
- package/dist/src/mcpl/conversation-router.js +29 -15
- package/dist/src/mcpl/conversation-router.js.map +1 -1
- package/dist/src/mcpl/convert-block.d.ts.map +1 -1
- package/dist/src/mcpl/convert-block.js +14 -2
- package/dist/src/mcpl/convert-block.js.map +1 -1
- package/dist/src/mcpl/hook-orchestrator.d.ts +7 -1
- package/dist/src/mcpl/hook-orchestrator.d.ts.map +1 -1
- package/dist/src/mcpl/hook-orchestrator.js +32 -7
- package/dist/src/mcpl/hook-orchestrator.js.map +1 -1
- package/dist/src/mcpl/index.d.ts +5 -1
- package/dist/src/mcpl/index.d.ts.map +1 -1
- package/dist/src/mcpl/index.js +4 -0
- package/dist/src/mcpl/index.js.map +1 -1
- package/dist/src/mcpl/inference-router.d.ts +14 -2
- package/dist/src/mcpl/inference-router.d.ts.map +1 -1
- package/dist/src/mcpl/inference-router.js +73 -28
- package/dist/src/mcpl/inference-router.js.map +1 -1
- package/dist/src/mcpl/prose-grammar.d.ts +4 -0
- package/dist/src/mcpl/prose-grammar.d.ts.map +1 -1
- package/dist/src/mcpl/prose-grammar.js +6 -0
- package/dist/src/mcpl/prose-grammar.js.map +1 -1
- package/dist/src/mcpl/protocol-family.d.ts.map +1 -1
- package/dist/src/mcpl/protocol-family.js +3 -0
- package/dist/src/mcpl/protocol-family.js.map +1 -1
- package/dist/src/mcpl/push-coalescer.d.ts +20 -2
- package/dist/src/mcpl/push-coalescer.d.ts.map +1 -1
- package/dist/src/mcpl/push-coalescer.js +33 -11
- package/dist/src/mcpl/push-coalescer.js.map +1 -1
- package/dist/src/mcpl/reference-fetcher.d.ts +63 -42
- package/dist/src/mcpl/reference-fetcher.d.ts.map +1 -1
- package/dist/src/mcpl/reference-fetcher.js +177 -145
- package/dist/src/mcpl/reference-fetcher.js.map +1 -1
- package/dist/src/mcpl/references.d.ts +380 -46
- package/dist/src/mcpl/references.d.ts.map +1 -1
- package/dist/src/mcpl/references.js +737 -78
- package/dist/src/mcpl/references.js.map +1 -1
- package/dist/src/mcpl/server-connection.d.ts +82 -3
- package/dist/src/mcpl/server-connection.d.ts.map +1 -1
- package/dist/src/mcpl/server-connection.js +132 -7
- package/dist/src/mcpl/server-connection.js.map +1 -1
- package/dist/src/mcpl/tool-lifecycle.d.ts +11 -0
- package/dist/src/mcpl/tool-lifecycle.d.ts.map +1 -1
- package/dist/src/mcpl/tool-lifecycle.js +21 -0
- package/dist/src/mcpl/tool-lifecycle.js.map +1 -1
- package/dist/src/mcpl/tool-presence.d.ts +259 -0
- package/dist/src/mcpl/tool-presence.d.ts.map +1 -0
- package/dist/src/mcpl/tool-presence.js +628 -0
- package/dist/src/mcpl/tool-presence.js.map +1 -0
- package/dist/src/mcpl/tool-result-normalize.d.ts +9 -3
- package/dist/src/mcpl/tool-result-normalize.d.ts.map +1 -1
- package/dist/src/mcpl/tool-result-normalize.js +14 -6
- package/dist/src/mcpl/tool-result-normalize.js.map +1 -1
- package/dist/src/mcpl/tool-signature.d.ts +39 -0
- package/dist/src/mcpl/tool-signature.d.ts.map +1 -0
- package/dist/src/mcpl/tool-signature.js +292 -0
- package/dist/src/mcpl/tool-signature.js.map +1 -0
- package/dist/src/mcpl/toolset-host.d.ts +200 -0
- package/dist/src/mcpl/toolset-host.d.ts.map +1 -0
- package/dist/src/mcpl/toolset-host.js +621 -0
- package/dist/src/mcpl/toolset-host.js.map +1 -0
- package/dist/src/mcpl/toolsets-module.d.ts +80 -0
- package/dist/src/mcpl/toolsets-module.d.ts.map +1 -0
- package/dist/src/mcpl/toolsets-module.js +431 -0
- package/dist/src/mcpl/toolsets-module.js.map +1 -0
- package/dist/src/mcpl/transport.d.ts +2 -2
- package/dist/src/mcpl/transport.d.ts.map +1 -1
- package/dist/src/mcpl/transport.js +3 -2
- package/dist/src/mcpl/transport.js.map +1 -1
- package/dist/src/mcpl/types.d.ts +21 -1
- package/dist/src/mcpl/types.d.ts.map +1 -1
- package/dist/src/mcpl/types.js.map +1 -1
- package/dist/src/mcpl/visible-content.d.ts +7 -9
- package/dist/src/mcpl/visible-content.d.ts.map +1 -1
- package/dist/src/mcpl/visible-content.js +21 -9
- package/dist/src/mcpl/visible-content.js.map +1 -1
- package/dist/src/module-registry.d.ts +23 -8
- package/dist/src/module-registry.d.ts.map +1 -1
- package/dist/src/module-registry.js +68 -15
- package/dist/src/module-registry.js.map +1 -1
- package/dist/src/modules/discord/index.js +1 -1
- package/dist/src/modules/discord/index.js.map +1 -1
- package/dist/src/modules/history/index.d.ts +2 -1
- package/dist/src/modules/history/index.d.ts.map +1 -1
- package/dist/src/modules/history/index.js +51 -17
- package/dist/src/modules/history/index.js.map +1 -1
- package/dist/src/modules/history/semantic.d.ts +108 -6
- package/dist/src/modules/history/semantic.d.ts.map +1 -1
- package/dist/src/modules/history/semantic.js +273 -57
- package/dist/src/modules/history/semantic.js.map +1 -1
- package/dist/src/modules/workspace/direct-write.d.ts +181 -0
- package/dist/src/modules/workspace/direct-write.d.ts.map +1 -0
- package/dist/src/modules/workspace/direct-write.js +384 -0
- package/dist/src/modules/workspace/direct-write.js.map +1 -0
- package/dist/src/modules/workspace/edit-text.d.ts +26 -12
- package/dist/src/modules/workspace/edit-text.d.ts.map +1 -1
- package/dist/src/modules/workspace/edit-text.js +58 -28
- package/dist/src/modules/workspace/edit-text.js.map +1 -1
- package/dist/src/modules/workspace/effects.d.ts +10 -0
- package/dist/src/modules/workspace/effects.d.ts.map +1 -1
- package/dist/src/modules/workspace/effects.js +1 -1
- package/dist/src/modules/workspace/effects.js.map +1 -1
- package/dist/src/modules/workspace/index.d.ts +246 -27
- package/dist/src/modules/workspace/index.d.ts.map +1 -1
- package/dist/src/modules/workspace/index.js +1216 -236
- package/dist/src/modules/workspace/index.js.map +1 -1
- package/dist/src/modules/workspace/read-page.d.ts +41 -0
- package/dist/src/modules/workspace/read-page.d.ts.map +1 -0
- package/dist/src/modules/workspace/read-page.js +213 -0
- package/dist/src/modules/workspace/read-page.js.map +1 -0
- package/dist/src/modules/workspace/result-text.d.ts +67 -0
- package/dist/src/modules/workspace/result-text.d.ts.map +1 -0
- package/dist/src/modules/workspace/result-text.js +94 -0
- package/dist/src/modules/workspace/result-text.js.map +1 -0
- package/dist/src/modules/workspace/text.d.ts +29 -12
- package/dist/src/modules/workspace/text.d.ts.map +1 -1
- package/dist/src/modules/workspace/text.js +35 -33
- package/dist/src/modules/workspace/text.js.map +1 -1
- package/dist/src/modules/workspace/types.d.ts +41 -17
- package/dist/src/modules/workspace/types.d.ts.map +1 -1
- package/dist/src/modules/workspace/types.js.map +1 -1
- package/dist/src/sent-rows.d.ts +59 -0
- package/dist/src/sent-rows.d.ts.map +1 -0
- package/dist/src/sent-rows.js +145 -0
- package/dist/src/sent-rows.js.map +1 -0
- package/dist/src/silent-heartbeat.d.ts +17 -10
- package/dist/src/silent-heartbeat.d.ts.map +1 -1
- package/dist/src/silent-heartbeat.js.map +1 -1
- package/dist/src/stable-hash.d.ts +3 -0
- package/dist/src/stable-hash.d.ts.map +1 -0
- package/dist/src/stable-hash.js +15 -0
- package/dist/src/stable-hash.js.map +1 -0
- package/dist/src/stored-injections.d.ts +99 -0
- package/dist/src/stored-injections.d.ts.map +1 -0
- package/dist/src/stored-injections.js +106 -0
- package/dist/src/stored-injections.js.map +1 -0
- package/dist/src/text-as-stored.d.ts +4 -3
- package/dist/src/text-as-stored.d.ts.map +1 -1
- package/dist/src/text-as-stored.js +4 -3
- package/dist/src/text-as-stored.js.map +1 -1
- package/dist/src/thinking-drops.d.ts +81 -0
- package/dist/src/thinking-drops.d.ts.map +1 -0
- package/dist/src/thinking-drops.js +103 -0
- package/dist/src/thinking-drops.js.map +1 -0
- package/dist/src/tool-image-ledger.d.ts +9 -8
- package/dist/src/tool-image-ledger.d.ts.map +1 -1
- package/dist/src/tool-image-ledger.js +9 -8
- package/dist/src/tool-image-ledger.js.map +1 -1
- package/dist/src/tool-presentation.d.ts.map +1 -1
- package/dist/src/tool-presentation.js +3 -1
- package/dist/src/tool-presentation.js.map +1 -1
- package/dist/src/tool-result-guard.d.ts +4 -2
- package/dist/src/tool-result-guard.d.ts.map +1 -1
- package/dist/src/tool-result-guard.js +21 -6
- package/dist/src/tool-result-guard.js.map +1 -1
- package/dist/src/tool-result-history.d.ts +186 -21
- package/dist/src/tool-result-history.d.ts.map +1 -1
- package/dist/src/tool-result-history.js +428 -89
- package/dist/src/tool-result-history.js.map +1 -1
- package/dist/src/tune-out/coordinator.d.ts +17 -9
- package/dist/src/tune-out/coordinator.d.ts.map +1 -1
- package/dist/src/tune-out/coordinator.js +84 -37
- package/dist/src/tune-out/coordinator.js.map +1 -1
- package/dist/src/types/agent.d.ts +186 -7
- package/dist/src/types/agent.d.ts.map +1 -1
- package/dist/src/types/events.d.ts +19 -2
- package/dist/src/types/events.d.ts.map +1 -1
- package/dist/src/types/framework.d.ts +24 -3
- package/dist/src/types/framework.d.ts.map +1 -1
- package/dist/src/types/module.d.ts +90 -7
- package/dist/src/types/module.d.ts.map +1 -1
- package/dist/src/types/trace.d.ts +57 -2
- package/dist/src/types/trace.d.ts.map +1 -1
- package/package.json +4 -3
- package/src/agent.ts +593 -60
- package/src/api/server.ts +1 -2
- package/src/auto-continue.ts +42 -0
- package/src/code-execution/isolate/scripts.ts +11 -3
- package/src/framework.ts +4004 -1026
- package/src/gate/event-gate.ts +2315 -389
- package/src/gate/index.ts +2 -1
- package/src/gate/recipe-reconcile.ts +355 -0
- package/src/gate/types.ts +70 -8
- package/src/index.ts +7 -4
- package/src/mcpl/channel-registry.ts +1220 -467
- package/src/mcpl/conversation-router.ts +34 -16
- package/src/mcpl/convert-block.ts +14 -1
- package/src/mcpl/hook-orchestrator.ts +33 -6
- package/src/mcpl/index.ts +6 -1
- package/src/mcpl/inference-router.ts +79 -34
- package/src/mcpl/prose-grammar.ts +7 -0
- package/src/mcpl/protocol-family.ts +2 -0
- package/src/mcpl/push-coalescer.ts +51 -13
- package/src/mcpl/reference-fetcher.ts +201 -162
- package/src/mcpl/references.ts +852 -78
- package/src/mcpl/server-connection.ts +145 -7
- package/src/mcpl/tool-lifecycle.ts +21 -0
- package/src/mcpl/tool-presence.ts +650 -0
- package/src/mcpl/tool-result-normalize.ts +18 -6
- package/src/mcpl/tool-signature.ts +285 -0
- package/src/mcpl/toolset-host.ts +637 -0
- package/src/mcpl/toolsets-module.ts +451 -0
- package/src/mcpl/transport.ts +3 -2
- package/src/mcpl/types.ts +22 -1
- package/src/mcpl/visible-content.ts +22 -9
- package/src/module-registry.ts +77 -24
- package/src/modules/discord/index.ts +1 -1
- package/src/modules/history/index.ts +48 -18
- package/src/modules/history/semantic.ts +308 -54
- package/src/modules/workspace/direct-write.ts +425 -0
- package/src/modules/workspace/edit-text.ts +82 -35
- package/src/modules/workspace/effects.ts +1 -1
- package/src/modules/workspace/index.ts +1274 -241
- package/src/modules/workspace/read-page.ts +222 -0
- package/src/modules/workspace/result-text.ts +119 -0
- package/src/modules/workspace/text.ts +58 -32
- package/src/modules/workspace/types.ts +41 -17
- package/src/sent-rows.ts +162 -0
- package/src/silent-heartbeat.ts +17 -10
- package/src/stable-hash.ts +14 -0
- package/src/stored-injections.ts +131 -0
- package/src/text-as-stored.ts +4 -3
- package/src/thinking-drops.ts +141 -0
- package/src/tool-image-ledger.ts +9 -8
- package/src/tool-presentation.ts +3 -1
- package/src/tool-result-guard.ts +19 -6
- package/src/tool-result-history.ts +488 -88
- package/src/tune-out/coordinator.ts +80 -37
- package/src/types/agent.ts +189 -7
- package/src/types/events.ts +19 -2
- package/src/types/framework.ts +21 -3
- package/src/types/module.ts +86 -7
- package/src/types/trace.ts +58 -2
|
@@ -152,6 +152,23 @@ export declare class WorkspaceModule implements Module {
|
|
|
152
152
|
* ensureRunning to say once both halves of the lifecycle have run.
|
|
153
153
|
*/
|
|
154
154
|
private notDirect;
|
|
155
|
+
/**
|
|
156
|
+
* Each agent's latest direct write on each mount it wrote direct, P, with
|
|
157
|
+
* the notice of its departure from it, N (DirectHead), by mount, then by
|
|
158
|
+
* agent. Saved at stop() in a global record (headsJournal), not the
|
|
159
|
+
* module's branch state: they describe disk, which doesn't rewind with a
|
|
160
|
+
* branch, so a restart on another branch, such as one an offline rollback
|
|
161
|
+
* made, still finds them.
|
|
162
|
+
*/
|
|
163
|
+
private directHeads;
|
|
164
|
+
/** Where directHeads is saved and loaded (DIRECT_HEADS_RECORD_TYPE), once initStore() has read it. */
|
|
165
|
+
private headsJournal;
|
|
166
|
+
/** The record initStore() read, as saved text, so a stop that would save the same adds none; null where there's one to replace. */
|
|
167
|
+
private loadedHeads;
|
|
168
|
+
/** Saved entries this session doesn't take up (another root, a mount not configured direct, or none), kept for the next save. */
|
|
169
|
+
private carriedHeads;
|
|
170
|
+
/** Whether an agent's history holds a message, as the framework hands it over (useHistory). */
|
|
171
|
+
private historyLookup;
|
|
155
172
|
constructor(config: WorkspaceConfig);
|
|
156
173
|
/**
|
|
157
174
|
* Inject the Chronicle store. Must be called after framework creation.
|
|
@@ -163,6 +180,22 @@ export declare class WorkspaceModule implements Module {
|
|
|
163
180
|
* second. `ensureRunning()` gates on `ctx && mounts-populated`.
|
|
164
181
|
*/
|
|
165
182
|
initStore(store: JsStore): void;
|
|
183
|
+
/**
|
|
184
|
+
* The positions stop() last saved (directHeads), before any call can
|
|
185
|
+
* write: each saved entry is a mount's positions at one root, and a mount
|
|
186
|
+
* this session configures direct gets the entry at its own root. Every
|
|
187
|
+
* other entry, a mount configured at another root, not direct, or not at
|
|
188
|
+
* all, is kept for the next save (carriedHeads), since its writes are
|
|
189
|
+
* still on disk beneath that root; a mount removed for good, and each
|
|
190
|
+
* root a mount has moved from, leave that small entry behind. A record
|
|
191
|
+
* the store can't read is logged, and this session starts with none and
|
|
192
|
+
* saves none, so the record stands for a session that can read it. One
|
|
193
|
+
* read but not of the shape saved is logged too, and this session starts
|
|
194
|
+
* with none and its stop replaces it, so a damaged record doesn't keep
|
|
195
|
+
* every later session from saving. Either way, a move away from the
|
|
196
|
+
* writes before it goes untold, as after a crash.
|
|
197
|
+
*/
|
|
198
|
+
private loadDirectHeads;
|
|
166
199
|
/**
|
|
167
200
|
* Whether each mount configured direct runs direct: not while the store
|
|
168
201
|
* holds changes there that disk lacks, on the branch selected then, so
|
|
@@ -289,15 +322,40 @@ export declare class WorkspaceModule implements Module {
|
|
|
289
322
|
private sayNotDirect;
|
|
290
323
|
private initialScan;
|
|
291
324
|
stop(): Promise<void>;
|
|
292
|
-
/**
|
|
293
|
-
*
|
|
294
|
-
*
|
|
295
|
-
*
|
|
325
|
+
/**
|
|
326
|
+
* Save directHeads as one global record, the latest of which the next
|
|
327
|
+
* start loads (loadDirectHeads): each mount's positions with the root
|
|
328
|
+
* they were made under, and the entries this session didn't take up
|
|
329
|
+
* (carriedHeads), unchanged. Only when that differs from what the
|
|
330
|
+
* start loaded, so a session that changed nothing, or a store no direct
|
|
331
|
+
* write reached, adds no record, and always where the record read wasn't
|
|
332
|
+
* of the shape saved, which this replaces. Nothing where the store couldn't
|
|
333
|
+
* read the record, so it stands. A save that fails is logged, and the next
|
|
334
|
+
* start finds the positions of the last save that landed, as after a
|
|
335
|
+
* crash.
|
|
336
|
+
*/
|
|
337
|
+
private saveDirectHeads;
|
|
338
|
+
/** Mount names + modes, each mount's include where it sets one, and
|
|
339
|
+
* `backend: 'direct'` for one configured direct, whether it runs direct
|
|
340
|
+
* this session or, while the store holds work there disk lacks, as
|
|
341
|
+
* 'chronicle': either way it's a directory agents write directly when it
|
|
342
|
+
* runs direct, whose files an undo leaves. For the
|
|
343
|
+
* framework's tool-result spills, saved payloads and fetched references,
|
|
344
|
+
* which need a mount for files of their own: the first writable one
|
|
345
|
+
* without an include that isn't direct (firstWritableMountName), without
|
|
346
|
+
* reaching into private state. */
|
|
296
347
|
getMounts(): Array<{
|
|
297
348
|
name: string;
|
|
298
349
|
mode: 'read-write' | 'read-only';
|
|
299
350
|
include?: readonly string[];
|
|
351
|
+
backend?: 'direct';
|
|
300
352
|
}>;
|
|
353
|
+
/**
|
|
354
|
+
* Whether any of this host's mounts runs direct. The tools' descriptions
|
|
355
|
+
* and grep's notes mention direct mounts only on such a host, so both ask
|
|
356
|
+
* this one question.
|
|
357
|
+
*/
|
|
358
|
+
private anyRunsDirect;
|
|
301
359
|
getTools(): ToolDefinition[];
|
|
302
360
|
private generatedTextFiles;
|
|
303
361
|
/** Compare the same normalized physical path for registration and tool access. */
|
|
@@ -354,6 +412,12 @@ export declare class WorkspaceModule implements Module {
|
|
|
354
412
|
* withheld original this way, for the branch its stub is on
|
|
355
413
|
* (agent-framework #277).
|
|
356
414
|
*
|
|
415
|
+
* On a mount running direct, the bytes go to disk as a direct `write`'s
|
|
416
|
+
* do, whole or not at all, and nothing goes into the store: `branch` is
|
|
417
|
+
* checked before the write starts and again just before its rename, and
|
|
418
|
+
* `agentName` names the agent whose write it is for the head-move notice
|
|
419
|
+
* (a write naming none tells no agent).
|
|
420
|
+
*
|
|
357
421
|
* A write whose tree entry is set but that then fails returns success
|
|
358
422
|
* false with `data: { inChronicle: true }`: its copy on disk was refused,
|
|
359
423
|
* the store failed after recording the entry, which skips the push where
|
|
@@ -365,14 +429,19 @@ export declare class WorkspaceModule implements Module {
|
|
|
365
429
|
*/
|
|
366
430
|
writeBinary(mountPrefixedPath: string, data: Buffer, mimeType: string, options?: {
|
|
367
431
|
branch?: string;
|
|
432
|
+
agentName?: string;
|
|
368
433
|
}): Promise<ToolResult>;
|
|
369
434
|
private writeBinaryUnderWay;
|
|
370
435
|
/**
|
|
371
|
-
* Read a file's raw bytes from a mount
|
|
372
|
-
*
|
|
373
|
-
* readBinaryFromDisk reads it, at most the mount's
|
|
374
|
-
*
|
|
375
|
-
*
|
|
436
|
+
* Read a file's raw bytes from a mount: through the Chronicle tree, a path
|
|
437
|
+
* the workspace doesn't hold observed first (ensureSynced); or, on a direct
|
|
438
|
+
* mount, from disk as readBinaryFromDisk reads it, at most the mount's
|
|
439
|
+
* `maxFileSize`. A path the workspace holds is read as the workspace holds
|
|
440
|
+
* it, not settled as the `read` tool settles it: the tree takes in no
|
|
441
|
+
* binary disk copy, so a pass over a held binary file that disk changed
|
|
442
|
+
* would drop the workspace's copy. Public API for the framework's
|
|
443
|
+
* synthesized `read_image` tool, where the workspace module doesn't serve
|
|
444
|
+
* read_image itself, and other peer callers that need binary content.
|
|
376
445
|
*/
|
|
377
446
|
readBinary(mountPrefixedPath: string): Promise<{
|
|
378
447
|
data: Buffer;
|
|
@@ -475,8 +544,10 @@ export declare class WorkspaceModule implements Module {
|
|
|
475
544
|
* mount nested by its directories alone, since its real root holds this
|
|
476
545
|
* one, is judged by the parse's nesting, so a root repointed between a
|
|
477
546
|
* read's parse and its open can have it serve a path in that mount's
|
|
478
|
-
* directory
|
|
479
|
-
*
|
|
547
|
+
* directory, and one repointed between a direct write's parse and its
|
|
548
|
+
* staging can have the write land there. Each mount is placed as a start
|
|
549
|
+
* places it (placementOf), from where its real root and the directories
|
|
550
|
+
* above its configured path lie on
|
|
480
551
|
* disk. For a mount configured at this mount's own path or beneath it,
|
|
481
552
|
* that's where they lie now: beneath `rootReal` where they lie beneath this
|
|
482
553
|
* mount's path, and the directories above this mount's path as resolving
|
|
@@ -837,15 +908,19 @@ export declare class WorkspaceModule implements Module {
|
|
|
837
908
|
*/
|
|
838
909
|
private settleBeforeMutation;
|
|
839
910
|
/**
|
|
840
|
-
* Before a
|
|
841
|
-
* three-way rule, which ingests a new disk file but
|
|
842
|
-
* workspace deletion or a file absent from this branch.
|
|
843
|
-
* path
|
|
844
|
-
*
|
|
845
|
-
*
|
|
846
|
-
*
|
|
847
|
-
* the
|
|
848
|
-
*
|
|
911
|
+
* Before a deletion, and for readBinary: a path the workspace doesn't hold
|
|
912
|
+
* is observed under the three-way rule, which ingests a new disk file but
|
|
913
|
+
* never brings back a workspace deletion or a file absent from this branch.
|
|
914
|
+
* A path it holds is left alone. For a deletion, as for a write, taking
|
|
915
|
+
* disk's change in first would let the push remove that change unseen; for
|
|
916
|
+
* readBinary, a pass would drop a held binary file that disk changed, since
|
|
917
|
+
* the tree takes in no binary disk copy. The pass names the path, as a file
|
|
918
|
+
* tool names the one it acts on: a path the mount passes over by design is
|
|
919
|
+
* observed, as a sync naming it would observe it (#276), while a path in
|
|
920
|
+
* another mount's directory is refused before this, and passed over by any
|
|
921
|
+
* pass. Answers the pass's report on the path, and why the pass decided
|
|
922
|
+
* nothing where it did (undecidedOf), which leaves disk unchecked. The
|
|
923
|
+
* caller holds the mount's turn.
|
|
849
924
|
*/
|
|
850
925
|
private ensureSynced;
|
|
851
926
|
/**
|
|
@@ -857,10 +932,11 @@ export declare class WorkspaceModule implements Module {
|
|
|
857
932
|
/** Why the workspace holds no entry at a path, when disk explains it. */
|
|
858
933
|
private notInWorkspace;
|
|
859
934
|
/**
|
|
860
|
-
* A file's bytes for read,
|
|
861
|
-
* workspace's copy,
|
|
862
|
-
*
|
|
863
|
-
* (bytesOnDisk)
|
|
935
|
+
* A file's bytes for read, and the notes that say which copy they are. On a
|
|
936
|
+
* 'chronicle' mount it's the workspace's copy, after a pass over the path
|
|
937
|
+
* takes disk's change to it in first. On a direct mount it's disk's file as
|
|
938
|
+
* it is now (bytesOnDisk), with no notes, since nothing else is kept. An
|
|
939
|
+
* error says why there are none to read.
|
|
864
940
|
*/
|
|
865
941
|
private bytesOf;
|
|
866
942
|
/**
|
|
@@ -872,6 +948,12 @@ export declare class WorkspaceModule implements Module {
|
|
|
872
948
|
* read_image reads where it's an image.
|
|
873
949
|
*/
|
|
874
950
|
private bytesOnDisk;
|
|
951
|
+
/**
|
|
952
|
+
* A read's page, held to `maxChars`, the most of this call's result that
|
|
953
|
+
* can reach its caller whole. A call that carries none, made in process,
|
|
954
|
+
* takes the data itself: its page holds to its line limit alone, with every
|
|
955
|
+
* line whole, as it did before pages had a budget.
|
|
956
|
+
*/
|
|
875
957
|
private handleRead;
|
|
876
958
|
private handleReadImage;
|
|
877
959
|
private handleWrite;
|
|
@@ -938,6 +1020,127 @@ export declare class WorkspaceModule implements Module {
|
|
|
938
1020
|
* would (`conflicts`, found only where the mount doesn't push).
|
|
939
1021
|
*/
|
|
940
1022
|
private editsStoredButUnfinished;
|
|
1023
|
+
/**
|
|
1024
|
+
* A direct mount's write of a whole file: its bytes staged beside it and
|
|
1025
|
+
* renamed over it (direct-write.ts), under the mount's turn, so the
|
|
1026
|
+
* module's own calls take turns. Answers a note when the file had other
|
|
1027
|
+
* hard links, which keep its old text, or why nothing was written. One
|
|
1028
|
+
* that lands is the caller's latest write on the mount (recordDirectWrite).
|
|
1029
|
+
* With `branch`, nothing is written once the store's branch is another,
|
|
1030
|
+
* checked with no turn of the event loop before the rename (writeBinary's).
|
|
1031
|
+
*/
|
|
1032
|
+
private writeDirect;
|
|
1033
|
+
/**
|
|
1034
|
+
* applyEdits on a direct mount, under the mount's turn, whose edits land
|
|
1035
|
+
* on disk or don't happen. Each attempt reads every file from disk as it
|
|
1036
|
+
* is now (directEditText), plans every edit against those bytes as on any
|
|
1037
|
+
* mount (planTargetEdits), stages every file beside itself, checks every
|
|
1038
|
+
* one unchanged since its read, and then renames each over its file in
|
|
1039
|
+
* turn (direct-write.ts). A file another writer changed between its read
|
|
1040
|
+
* and its check has the call read and planned again against its new
|
|
1041
|
+
* text, three attempts in all (DIRECT_EDIT_ATTEMPTS), so edits that no
|
|
1042
|
+
* longer apply to it, a file that changed at every attempt, or a file the
|
|
1043
|
+
* next read refuses as any read would (now past the size limit, say) are
|
|
1044
|
+
* refused, with nothing written. A rename that fails after others leaves
|
|
1045
|
+
* those written and the rest as they were, and the answer names each
|
|
1046
|
+
* file's outcome; nothing puts the written ones back.
|
|
1047
|
+
*/
|
|
1048
|
+
private applyDirectEdits;
|
|
1049
|
+
/**
|
|
1050
|
+
* One attempt of applyDirectEdits: its answer, or 'changed' when another
|
|
1051
|
+
* writer changed a file since its read, with nothing written. `early` are
|
|
1052
|
+
* the problems found before any file was read, which a refusal names with
|
|
1053
|
+
* the rest. The caller holds the mount's turn.
|
|
1054
|
+
*/
|
|
1055
|
+
private attemptDirectEdits;
|
|
1056
|
+
/**
|
|
1057
|
+
* The answer to an edit_many call on a direct mount whose rename of its
|
|
1058
|
+
* `failed`th file failed after the ones before it were written: what was
|
|
1059
|
+
* written, the failure, and that nothing puts them back, then each file's
|
|
1060
|
+
* outcome, within `maxChars`, with the hard links a written one split
|
|
1061
|
+
* from, as a full answer names them (linksNote).
|
|
1062
|
+
*/
|
|
1063
|
+
private directEditsPartway;
|
|
1064
|
+
/**
|
|
1065
|
+
* A direct mount's file as an edit reads it: its bytes on disk as they are
|
|
1066
|
+
* now, through the mount's boundary as read reaches them
|
|
1067
|
+
* (openContainedFile), with the file's identity when the read began, which
|
|
1068
|
+
* the write checks it against just before its rename. A file changed while
|
|
1069
|
+
* it was read is `changed`, so the call reads it again. What the
|
|
1070
|
+
* workspace doesn't show as text, it doesn't edit either: a file over the
|
|
1071
|
+
* mount's size limit, and a binary one.
|
|
1072
|
+
*/
|
|
1073
|
+
private directEditText;
|
|
1074
|
+
/**
|
|
1075
|
+
* A direct mount's deletion: the file the read tools reach, by their
|
|
1076
|
+
* refusals (openContainedFile), unlinked through the mount's boundary as
|
|
1077
|
+
* a push's deletion unlinks one (unlinkContained). A followed link is the
|
|
1078
|
+
* entry removed, as there. One that lands is the caller's latest write on
|
|
1079
|
+
* the mount (recordDirectWrite).
|
|
1080
|
+
*/
|
|
1081
|
+
private deleteDirect;
|
|
1082
|
+
/**
|
|
1083
|
+
* After a direct write lands: the agent's latest write on the mount, P,
|
|
1084
|
+
* moves to it, where the agent's history holds P or the notice of its
|
|
1085
|
+
* departure from P, N (historyHoldsWrites), and N clears. Otherwise P
|
|
1086
|
+
* stays where it is: the head moved away from it under the call's turn,
|
|
1087
|
+
* and the next start's notice covers what it left (headMoveNotice). P is
|
|
1088
|
+
* the branch and the store's head as it is now, read with no turn of the
|
|
1089
|
+
* event loop since the write, so no record that lands after the write is
|
|
1090
|
+
* taken for one before it. A deletion, whose unlink is awaited, passes
|
|
1091
|
+
* where the head was just before its unlink (`since`): where the branch
|
|
1092
|
+
* changed meanwhile, the head moved under the call, and P is set there,
|
|
1093
|
+
* so the next start judges the deletion by the branch its turn was on,
|
|
1094
|
+
* unless the history doesn't hold P already, whose notice is owed. A write no agent
|
|
1095
|
+
* made tells no one. The store's reads here come after the write landed,
|
|
1096
|
+
* so one that throws is logged and P stays, as for a history that can't
|
|
1097
|
+
* be read, and the write still answers that it landed.
|
|
1098
|
+
*/
|
|
1099
|
+
private recordDirectWrite;
|
|
1100
|
+
/** The store's branch and head now, or null where the store can't say. */
|
|
1101
|
+
private positionNow;
|
|
1102
|
+
/**
|
|
1103
|
+
* Whether an agent's history holds its latest direct write on a mount
|
|
1104
|
+
* (holdsPosition), or the notice of its departure from it, judged by the
|
|
1105
|
+
* notice's own presence there, through the lookup the framework hands the
|
|
1106
|
+
* module (useHistory); null where that lookup threw, which is logged. A
|
|
1107
|
+
* history that can't be read decides nothing: a write takes it as not
|
|
1108
|
+
* held, so its position stays and the notice stays owed, and a start
|
|
1109
|
+
* gives no notice, which may not be true of a history it can't read, and
|
|
1110
|
+
* leaves the next start to decide (headMoveNotice).
|
|
1111
|
+
*/
|
|
1112
|
+
private historyHoldsWrites;
|
|
1113
|
+
/**
|
|
1114
|
+
* Whether the store's current branch holds what came before a direct
|
|
1115
|
+
* write: it's the write's branch, or continues it with every fork point on
|
|
1116
|
+
* the way after `after`, the store's head when the write landed. A fork at
|
|
1117
|
+
* exactly `after` doesn't: an undo forks at its turn's sequenceBefore,
|
|
1118
|
+
* which is the head at the write when nothing was recorded in the turn
|
|
1119
|
+
* before it. A missing branch or one without fork metadata holds nothing,
|
|
1120
|
+
* as for the materialize guard (isLinearContinuation).
|
|
1121
|
+
*/
|
|
1122
|
+
private holdsPosition;
|
|
1123
|
+
/**
|
|
1124
|
+
* The framework's check at every start of an agent's turn, opening,
|
|
1125
|
+
* continuing or resuming: the notice due for each mount the agent wrote
|
|
1126
|
+
* direct where its history holds neither its latest write there nor the
|
|
1127
|
+
* notice of its departure from it (historyHoldsWrites), with those
|
|
1128
|
+
* mounts' names; or null, as on a head that hasn't moved. The framework
|
|
1129
|
+
* stores the text in the agent's history before the turn's compile and
|
|
1130
|
+
* hands its message id back (headMoveNoticeStored).
|
|
1131
|
+
*/
|
|
1132
|
+
headMoveNotice(agentName: string): {
|
|
1133
|
+
text: string;
|
|
1134
|
+
mounts: string[];
|
|
1135
|
+
} | null;
|
|
1136
|
+
/** The id of the message headMoveNotice's text was stored as, N, for each mount it named. */
|
|
1137
|
+
headMoveNoticeStored(agentName: string, mounts: readonly string[], messageId: string): void;
|
|
1138
|
+
/**
|
|
1139
|
+
* How the module asks whether an agent's history holds a message, as the
|
|
1140
|
+
* framework judges its own notices (`cm.getMessage(id) !== null`): handed
|
|
1141
|
+
* over once, when the module is added. Without it, no notice is held.
|
|
1142
|
+
*/
|
|
1143
|
+
useHistory(lookup: (agentName: string, messageId: string) => boolean): void;
|
|
941
1144
|
private handleDelete;
|
|
942
1145
|
private handleLs;
|
|
943
1146
|
/**
|
|
@@ -973,6 +1176,22 @@ export declare class WorkspaceModule implements Module {
|
|
|
973
1176
|
private diskWalk;
|
|
974
1177
|
private handleGlob;
|
|
975
1178
|
private handleGrep;
|
|
1179
|
+
/**
|
|
1180
|
+
* Why a grep or a glob whose `path` (`given`, in the mount at
|
|
1181
|
+
* `relativePath`) and filter or pattern can't overlap did nothing. grep's
|
|
1182
|
+
* filter is matched from the mount's root, and in the mount its first
|
|
1183
|
+
* segment names, either tool's is read mount-prefixed (`prefixed`), from
|
|
1184
|
+
* that mount's root; either way no file at or beneath the path can pass
|
|
1185
|
+
* it. Where the path isn't a file, it names the one that reaches beneath
|
|
1186
|
+
* it, the one meant if it was written relative to the path, mount-prefixed
|
|
1187
|
+
* as the tools write paths: the path's own `{`, `}`, `*` and `?` stand as
|
|
1188
|
+
* `?`, which matches each of them, and since the search stays beneath the
|
|
1189
|
+
* path, a `?` that would match a sibling's name too takes nothing in from
|
|
1190
|
+
* outside it. One with an empty, `.` or `..` segment gets no suggestion,
|
|
1191
|
+
* since no path holds such a segment. Segments are read as written, so one
|
|
1192
|
+
* a brace group splits around isn't told apart.
|
|
1193
|
+
*/
|
|
1194
|
+
private disjointRefusal;
|
|
976
1195
|
/**
|
|
977
1196
|
* The texts a 'chronicle' mount's grep searches beneath `start`, or in the
|
|
978
1197
|
* single file `relativePath` names, those `keep` lets through, each handed
|
|
@@ -1079,9 +1298,9 @@ export declare class WorkspaceModule implements Module {
|
|
|
1079
1298
|
* on disk (a shell command's files, a deletion) is in the workspace when the
|
|
1080
1299
|
* agent next looks. On a mount over its walkCap, that holds for the first
|
|
1081
1300
|
* walkCap entries in the walk's order, which every batch's scan takes; files
|
|
1082
|
-
* past them come in through syncs
|
|
1083
|
-
*
|
|
1084
|
-
* outlasts the deadline stops holding the round: the miss is recorded on
|
|
1301
|
+
* past them come in through syncs, the listings that reach them, and a read
|
|
1302
|
+
* of the path, which takes disk's change in first as a listing does. A scan
|
|
1303
|
+
* that outlasts the deadline stops holding the round: the miss is recorded on
|
|
1085
1304
|
* the mount's status and pushed as a `workspace:agent-action-scan-incomplete`
|
|
1086
1305
|
* event, and the scan continues, deciding on the branch selected when it
|
|
1087
1306
|
* applies.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/modules/workspace/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EAAE,OAAO,EAAe,MAAM,sBAAsB,CAAC;AACjE,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAChG,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAChG,OAAO,KAAK,EAEV,eAAe,EAoBhB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/modules/workspace/index.ts"],"names":[],"mappings":"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"}
|