@animalabs/agent-framework 0.7.3 → 0.8.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/src/agent.d.ts.map +1 -1
- package/dist/src/agent.js +28 -1
- package/dist/src/agent.js.map +1 -1
- package/dist/src/code-execution/index.d.ts +1 -1
- package/dist/src/code-execution/index.d.ts.map +1 -1
- package/dist/src/code-execution/index.js.map +1 -1
- package/dist/src/code-execution/py-runner.d.ts +23 -1
- package/dist/src/code-execution/py-runner.d.ts.map +1 -1
- package/dist/src/code-execution/py-runner.js +40 -4
- package/dist/src/code-execution/py-runner.js.map +1 -1
- package/dist/src/code-execution/runtime-py.d.ts +15 -2
- package/dist/src/code-execution/runtime-py.d.ts.map +1 -1
- package/dist/src/code-execution/runtime-py.js +156 -7
- package/dist/src/code-execution/runtime-py.js.map +1 -1
- package/dist/src/code-execution/tool-definition.d.ts.map +1 -1
- package/dist/src/code-execution/tool-definition.js +27 -2
- package/dist/src/code-execution/tool-definition.js.map +1 -1
- package/dist/src/framework.d.ts +92 -0
- package/dist/src/framework.d.ts.map +1 -1
- package/dist/src/framework.js +932 -60
- package/dist/src/framework.js.map +1 -1
- package/dist/src/mcpl/channel-registry.d.ts +28 -2
- package/dist/src/mcpl/channel-registry.d.ts.map +1 -1
- package/dist/src/mcpl/channel-registry.js +53 -7
- package/dist/src/mcpl/channel-registry.js.map +1 -1
- package/dist/src/mcpl/transport.d.ts +1 -1
- package/dist/src/mcpl/transport.d.ts.map +1 -1
- package/dist/src/mcpl/transport.js +25 -7
- package/dist/src/mcpl/transport.js.map +1 -1
- package/dist/src/mcpl/types.d.ts +10 -0
- package/dist/src/mcpl/types.d.ts.map +1 -1
- package/dist/src/mcpl/types.js.map +1 -1
- package/dist/src/module-registry.d.ts +12 -0
- package/dist/src/module-registry.d.ts.map +1 -1
- package/dist/src/module-registry.js +26 -0
- package/dist/src/module-registry.js.map +1 -1
- package/dist/src/modules/workspace/index.d.ts +20 -0
- package/dist/src/modules/workspace/index.d.ts.map +1 -1
- package/dist/src/modules/workspace/index.js +48 -15
- package/dist/src/modules/workspace/index.js.map +1 -1
- package/dist/src/modules/workspace/sync.d.ts +4 -0
- package/dist/src/modules/workspace/sync.d.ts.map +1 -1
- package/dist/src/modules/workspace/sync.js +1 -1
- package/dist/src/modules/workspace/sync.js.map +1 -1
- package/dist/src/types/agent.d.ts +12 -0
- package/dist/src/types/agent.d.ts.map +1 -1
- package/dist/src/types/framework.d.ts +10 -0
- package/dist/src/types/framework.d.ts.map +1 -1
- package/dist/src/types/module.d.ts +22 -0
- package/dist/src/types/module.d.ts.map +1 -1
- package/dist/test/agent-runtime-settings.test.js +37 -0
- package/dist/test/agent-runtime-settings.test.js.map +1 -1
- package/dist/test/assistant-persist-refusal.test.d.ts +2 -0
- package/dist/test/assistant-persist-refusal.test.d.ts.map +1 -0
- package/dist/test/assistant-persist-refusal.test.js +63 -0
- package/dist/test/assistant-persist-refusal.test.js.map +1 -0
- package/dist/test/busy-agent-scheduler.test.js +1 -0
- package/dist/test/busy-agent-scheduler.test.js.map +1 -1
- package/dist/test/code-execution.test.js +327 -1
- package/dist/test/code-execution.test.js.map +1 -1
- package/dist/test/deferred-wake-integrity.test.d.ts +29 -0
- package/dist/test/deferred-wake-integrity.test.d.ts.map +1 -0
- package/dist/test/deferred-wake-integrity.test.js +320 -0
- package/dist/test/deferred-wake-integrity.test.js.map +1 -0
- package/dist/test/machine-close-provenance.test.d.ts +2 -0
- package/dist/test/machine-close-provenance.test.d.ts.map +1 -0
- package/dist/test/machine-close-provenance.test.js +110 -0
- package/dist/test/machine-close-provenance.test.js.map +1 -0
- package/dist/test/mcpl-access-provider.test.d.ts +2 -0
- package/dist/test/mcpl-access-provider.test.d.ts.map +1 -0
- package/dist/test/mcpl-access-provider.test.js +20 -0
- package/dist/test/mcpl-access-provider.test.js.map +1 -0
- package/dist/test/module-context-integration.test.d.ts +18 -0
- package/dist/test/module-context-integration.test.d.ts.map +1 -0
- package/dist/test/module-context-integration.test.js +181 -0
- package/dist/test/module-context-integration.test.js.map +1 -0
- package/dist/test/present-while-acting.test.js +72 -0
- package/dist/test/present-while-acting.test.js.map +1 -1
- package/dist/test/utils-surface.test.d.ts +2 -0
- package/dist/test/utils-surface.test.d.ts.map +1 -0
- package/dist/test/utils-surface.test.js +145 -0
- package/dist/test/utils-surface.test.js.map +1 -0
- package/dist/test/workspace-read-image.test.js +71 -0
- package/dist/test/workspace-read-image.test.js.map +1 -1
- package/dist/test/workspace-restore-order.test.d.ts +16 -0
- package/dist/test/workspace-restore-order.test.d.ts.map +1 -0
- package/dist/test/workspace-restore-order.test.js +140 -0
- package/dist/test/workspace-restore-order.test.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/agent.ts +31 -1
- package/src/code-execution/index.ts +1 -0
- package/src/code-execution/py-runner.ts +56 -4
- package/src/code-execution/runtime-py.ts +156 -7
- package/src/code-execution/tool-definition.ts +27 -2
- package/src/framework.ts +1055 -63
- package/src/mcpl/channel-registry.ts +98 -4
- package/src/mcpl/transport.ts +26 -7
- package/src/mcpl/types.ts +11 -0
- package/src/module-registry.ts +34 -0
- package/src/modules/workspace/index.ts +49 -15
- package/src/modules/workspace/sync.ts +1 -1
- package/src/types/agent.ts +12 -0
- package/src/types/framework.ts +10 -0
- package/src/types/module.ts +24 -0
|
@@ -28,6 +28,10 @@ export declare class ModuleRegistry {
|
|
|
28
28
|
private pushEventFn;
|
|
29
29
|
private onTraceFn;
|
|
30
30
|
private callToolFn;
|
|
31
|
+
/** Framework ops-alert channel, surfaced to modules via
|
|
32
|
+
* ModuleContext.notifyOps. Readonly-public so ModuleContextImpl can
|
|
33
|
+
* delegate without another positional constructor parameter. */
|
|
34
|
+
readonly notifyOpsFn?: (kind: string, agentName: string, message: string, data?: Record<string, unknown>) => void;
|
|
31
35
|
constructor(store: JsStore, queue: ProcessQueue, options: {
|
|
32
36
|
getAgents: () => Agent[];
|
|
33
37
|
addMessage: (participant: string, content: ContentBlock[], metadata?: MessageMetadata) => MessageId;
|
|
@@ -38,6 +42,7 @@ export declare class ModuleRegistry {
|
|
|
38
42
|
pushEvent: (event: ProcessEvent) => void;
|
|
39
43
|
onTrace: (listener: TraceEventListener) => () => void;
|
|
40
44
|
callTool: (call: ToolCall) => Promise<ToolResult>;
|
|
45
|
+
notifyOps?: (kind: string, agentName: string, message: string, data?: Record<string, unknown>) => void;
|
|
41
46
|
});
|
|
42
47
|
/**
|
|
43
48
|
* Register and start a module.
|
|
@@ -72,6 +77,13 @@ export declare class ModuleRegistry {
|
|
|
72
77
|
* Get all available tools from all modules.
|
|
73
78
|
*/
|
|
74
79
|
getAllTools(): ToolDefinition[];
|
|
80
|
+
/**
|
|
81
|
+
* All utilities from all modules, namespaced exactly like tools
|
|
82
|
+
* (`module--name`). See Module.getUtilities — these are deliberately kept
|
|
83
|
+
* out of the model-facing tool list and surfaced through the framework's
|
|
84
|
+
* `utils` meta-tool; dispatch goes through the same handleToolCall.
|
|
85
|
+
*/
|
|
86
|
+
getAllUtilities(): ToolDefinition[];
|
|
75
87
|
/**
|
|
76
88
|
* Handle a tool call by routing to the appropriate module.
|
|
77
89
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module-registry.d.ts","sourceRoot":"","sources":["../../src/module-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EACV,SAAS,EACT,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,gBAAgB,EACjB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EACV,MAAM,EAEN,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,QAAQ,EACR,UAAU,EAGV,aAAa,EACb,oBAAoB,EACpB,YAAY,EACZ,kBAAkB,EACnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAIxC;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAExD;AAqBD;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,cAAc,CAA6C;IACnE,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,YAAY,CAA0F;IAC9G,OAAO,CAAC,aAAa,CAAmD;IACxE,OAAO,CAAC,eAAe,CAA0B;IACjD,OAAO,CAAC,YAAY,CAA0C;IAC9D,OAAO,CAAC,eAAe,CAA+C;IAEtE,OAAO,CAAC,WAAW,CAAgC;IACnD,OAAO,CAAC,SAAS,CAA+C;IAChE,OAAO,CAAC,UAAU,CAA0C;
|
|
1
|
+
{"version":3,"file":"module-registry.d.ts","sourceRoot":"","sources":["../../src/module-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,6 +34,10 @@ export class ModuleRegistry {
|
|
|
34
34
|
pushEventFn;
|
|
35
35
|
onTraceFn;
|
|
36
36
|
callToolFn;
|
|
37
|
+
/** Framework ops-alert channel, surfaced to modules via
|
|
38
|
+
* ModuleContext.notifyOps. Readonly-public so ModuleContextImpl can
|
|
39
|
+
* delegate without another positional constructor parameter. */
|
|
40
|
+
notifyOpsFn;
|
|
37
41
|
constructor(store, queue, options) {
|
|
38
42
|
this.store = store;
|
|
39
43
|
this.queue = queue;
|
|
@@ -46,6 +50,7 @@ export class ModuleRegistry {
|
|
|
46
50
|
this.pushEventFn = options.pushEvent;
|
|
47
51
|
this.onTraceFn = options.onTrace;
|
|
48
52
|
this.callToolFn = options.callTool;
|
|
53
|
+
this.notifyOpsFn = options.notifyOps;
|
|
49
54
|
}
|
|
50
55
|
/**
|
|
51
56
|
* Register and start a module.
|
|
@@ -144,6 +149,24 @@ export class ModuleRegistry {
|
|
|
144
149
|
}
|
|
145
150
|
return tools;
|
|
146
151
|
}
|
|
152
|
+
/**
|
|
153
|
+
* All utilities from all modules, namespaced exactly like tools
|
|
154
|
+
* (`module--name`). See Module.getUtilities — these are deliberately kept
|
|
155
|
+
* out of the model-facing tool list and surfaced through the framework's
|
|
156
|
+
* `utils` meta-tool; dispatch goes through the same handleToolCall.
|
|
157
|
+
*/
|
|
158
|
+
getAllUtilities() {
|
|
159
|
+
const utilities = [];
|
|
160
|
+
for (const module of this.modules.values()) {
|
|
161
|
+
for (const util of module.getUtilities?.() ?? []) {
|
|
162
|
+
utilities.push({
|
|
163
|
+
...util,
|
|
164
|
+
name: `${module.name}--${util.name}`,
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
return utilities;
|
|
169
|
+
}
|
|
147
170
|
/**
|
|
148
171
|
* Handle a tool call by routing to the appropriate module.
|
|
149
172
|
*/
|
|
@@ -393,6 +416,9 @@ class ModuleContextImpl {
|
|
|
393
416
|
callTool(call) {
|
|
394
417
|
return this.callToolFn(call);
|
|
395
418
|
}
|
|
419
|
+
notifyOps(kind, agentName, message, data) {
|
|
420
|
+
this.registry.notifyOpsFn?.(kind, agentName, message, data);
|
|
421
|
+
}
|
|
396
422
|
addMessage(participant, content, metadata) {
|
|
397
423
|
const id = this.addMessageFn(participant, content, metadata);
|
|
398
424
|
// Track external ID if provided
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module-registry.js","sourceRoot":"","sources":["../../src/module-registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"module-registry.js","sourceRoot":"","sources":["../../src/module-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,11 @@ export declare class WorkspaceModule implements Module {
|
|
|
16
16
|
private config;
|
|
17
17
|
private mounts;
|
|
18
18
|
private watchers;
|
|
19
|
+
/** Persisted state decoded in start(), held until mounts exist to apply it
|
|
20
|
+
* to — in the Host ordering start() runs before initStore() creates the
|
|
21
|
+
* mounts, so restoration must be second-callback-safe like watcher
|
|
22
|
+
* startup already is (issue #72). Cleared after application. */
|
|
23
|
+
private savedState;
|
|
19
24
|
constructor(config: WorkspaceConfig);
|
|
20
25
|
/**
|
|
21
26
|
* Inject the Chronicle store. Must be called after framework creation.
|
|
@@ -28,6 +33,15 @@ export declare class WorkspaceModule implements Module {
|
|
|
28
33
|
*/
|
|
29
34
|
initStore(store: JsStore): void;
|
|
30
35
|
start(ctx: ModuleContext): Promise<void>;
|
|
36
|
+
/**
|
|
37
|
+
* Apply persisted per-mount state once both halves of the lifecycle have
|
|
38
|
+
* happened. Like watcher startup, either callback may fire second, so both
|
|
39
|
+
* start() and initStore() call this; it runs to effect exactly once — the
|
|
40
|
+
* saved payload is cleared after application so stale persisted values can
|
|
41
|
+
* never overwrite newer runtime state (e.g. a materialization that already
|
|
42
|
+
* happened this session).
|
|
43
|
+
*/
|
|
44
|
+
private applySavedState;
|
|
31
45
|
/**
|
|
32
46
|
* Start chokidar watchers and emit workspace:mounted events.
|
|
33
47
|
* Idempotent: safe to call from both start() and initStore(), fires once
|
|
@@ -36,6 +50,12 @@ export declare class WorkspaceModule implements Module {
|
|
|
36
50
|
private ensureRunning;
|
|
37
51
|
private initialScan;
|
|
38
52
|
stop(): Promise<void>;
|
|
53
|
+
/** Mount names + modes, for peer callers (framework spill/journal paths)
|
|
54
|
+
* that need a writable mount without reaching into private state. */
|
|
55
|
+
getMounts(): Array<{
|
|
56
|
+
name: string;
|
|
57
|
+
mode: 'read-write' | 'read-only';
|
|
58
|
+
}>;
|
|
39
59
|
getTools(): ToolDefinition[];
|
|
40
60
|
handleToolCall(call: ToolCall): Promise<ToolResult>;
|
|
41
61
|
onProcess(event: ProcessEvent, _state: ProcessState): Promise<EventResponse>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/modules/workspace/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,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,EACV,eAAe,EAmBhB,MAAM,YAAY,CAAC;AAKpB,YAAY,EACV,eAAe,EACf,WAAW,EACX,UAAU,EACV,oBAAoB,EACpB,SAAS,EACT,cAAc,EACd,UAAU,EACV,SAAS,EACT,WAAW,EACX,OAAO,EACP,SAAS,EACT,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,SAAS,GACV,MAAM,YAAY,CAAC;AAidpB,qBAAa,eAAgB,YAAW,MAAM;IAC5C,QAAQ,CAAC,IAAI,eAAe;IAE5B,OAAO,CAAC,GAAG,CAA8B;IACzC,OAAO,CAAC,KAAK,CAAwB;IACrC,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,MAAM,CAAiC;IAC/C,OAAO,CAAC,QAAQ,CAAmC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/modules/workspace/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,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,EACV,eAAe,EAmBhB,MAAM,YAAY,CAAC;AAKpB,YAAY,EACV,eAAe,EACf,WAAW,EACX,UAAU,EACV,oBAAoB,EACpB,SAAS,EACT,cAAc,EACd,UAAU,EACV,SAAS,EACT,WAAW,EACX,OAAO,EACP,SAAS,EACT,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,SAAS,GACV,MAAM,YAAY,CAAC;AAidpB,qBAAa,eAAgB,YAAW,MAAM;IAC5C,QAAQ,CAAC,IAAI,eAAe;IAE5B,OAAO,CAAC,GAAG,CAA8B;IACzC,OAAO,CAAC,KAAK,CAAwB;IACrC,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,MAAM,CAAiC;IAC/C,OAAO,CAAC,QAAQ,CAAmC;IACnD;;;qEAGiE;IACjE,OAAO,CAAC,UAAU,CAAqC;gBAE3C,MAAM,EAAE,eAAe;IA2BnC;;;;;;;;OAQG;IACH,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAmCzB,KAAK,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAa9C;;;;;;;OAOG;IACH,OAAO,CAAC,eAAe;IAgBvB;;;;OAIG;IACH,OAAO,CAAC,aAAa;YA0DP,WAAW;IAmBnB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAwB3B;0EACsE;IACtE,SAAS,IAAI,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,YAAY,GAAG,WAAW,CAAA;KAAE,CAAC;IAWtE,QAAQ,IAAI,cAAc,EAAE;IA4ItB,cAAc,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;IAuBnD,SAAS,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC;IAsElF;;;;;OAKG;IACH,mBAAmB,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAS7D;;;;;OAKG;IACG,WAAW,CACf,iBAAiB,EAAE,MAAM,EACzB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,UAAU,CAAC;IAwCtB;;;;OAIG;IACG,UAAU,CACd,iBAAiB,EAAE,MAAM,GACxB,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAiBhD;;OAEG;IACH,OAAO,CAAC,SAAS;IAoBjB,OAAO,CAAC,QAAQ;IAKhB,OAAO,CAAC,kBAAkB;IAoB1B,OAAO,CAAC,oBAAoB;YAkBd,uBAAuB;IAuHrC;;;;;;;;;;;OAWG;YACW,eAAe;IA4C7B;;OAEG;YACW,YAAY;YAmCZ,UAAU;YAkDV,eAAe;YAwEf,WAAW;YAsCX,UAAU;YAiEV,YAAY;YAyBZ,QAAQ;YAmER,UAAU;YAqCV,UAAU;YAoFV,YAAY;YA8BZ,iBAAiB;IAgE/B;;;;OAIG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YAoB9C,UAAU;IAmDxB;;;;;;;OAOG;YACW,eAAe;IA0B7B;;OAEG;IACH,OAAO,CAAC,YAAY;CAuCrB"}
|
|
@@ -9,7 +9,7 @@ import { open, readFile, stat, writeFile, unlink, mkdir, lstat, realpath } from
|
|
|
9
9
|
import { join, resolve, relative, dirname, sep } from 'node:path';
|
|
10
10
|
import { WORKSPACE_FS_EVENT_TYPES, opToEventType } from './types.js';
|
|
11
11
|
import { MountWatcher } from './watcher.js';
|
|
12
|
-
import { syncFromFs, materializeToFs, hashContent, DEFAULT_MAX_FILE_SIZE } from './sync.js';
|
|
12
|
+
import { syncFromFs, materializeToFs, hashContent, isBinary, DEFAULT_MAX_FILE_SIZE } from './sync.js';
|
|
13
13
|
class WorkspaceImageReadError extends Error {
|
|
14
14
|
code;
|
|
15
15
|
constructor(code, message) {
|
|
@@ -413,6 +413,11 @@ export class WorkspaceModule {
|
|
|
413
413
|
config;
|
|
414
414
|
mounts = new Map();
|
|
415
415
|
watchers = new Map();
|
|
416
|
+
/** Persisted state decoded in start(), held until mounts exist to apply it
|
|
417
|
+
* to — in the Host ordering start() runs before initStore() creates the
|
|
418
|
+
* mounts, so restoration must be second-callback-safe like watcher
|
|
419
|
+
* startup already is (issue #72). Cleared after application. */
|
|
420
|
+
savedState = null;
|
|
416
421
|
constructor(config) {
|
|
417
422
|
// Detect overlapping mount paths: if mount A contains mount B,
|
|
418
423
|
// auto-add an ignore rule on A for B's path to prevent syncing
|
|
@@ -476,28 +481,42 @@ export class WorkspaceModule {
|
|
|
476
481
|
};
|
|
477
482
|
this.mounts.set(mount.name, mountState);
|
|
478
483
|
}
|
|
484
|
+
this.applySavedState();
|
|
479
485
|
this.ensureRunning();
|
|
480
486
|
}
|
|
481
487
|
async start(ctx) {
|
|
482
488
|
this.ctx = ctx;
|
|
483
|
-
//
|
|
489
|
+
// Decode persisted state if restarting; application waits until mounts
|
|
490
|
+
// exist (see applySavedState) — in the Host ordering they don't yet.
|
|
484
491
|
if (ctx.isRestart) {
|
|
485
|
-
|
|
486
|
-
if (saved) {
|
|
487
|
-
for (const [name, meta] of Object.entries(saved.mounts)) {
|
|
488
|
-
const mount = this.mounts.get(name);
|
|
489
|
-
if (mount) {
|
|
490
|
-
mount.lastMaterializedSeq = meta.lastMaterializedSeq;
|
|
491
|
-
mount.lastMaterializedBranchId = meta.lastMaterializedBranchId ?? null;
|
|
492
|
-
// watcherReadyAt intentionally not restored — each session must
|
|
493
|
-
// observe its own watcher attach, otherwise a stale timestamp
|
|
494
|
-
// would hide a new-session attach failure.
|
|
495
|
-
}
|
|
496
|
-
}
|
|
497
|
-
}
|
|
492
|
+
this.savedState = ctx.getState() ?? null;
|
|
498
493
|
}
|
|
494
|
+
this.applySavedState();
|
|
499
495
|
this.ensureRunning();
|
|
500
496
|
}
|
|
497
|
+
/**
|
|
498
|
+
* Apply persisted per-mount state once both halves of the lifecycle have
|
|
499
|
+
* happened. Like watcher startup, either callback may fire second, so both
|
|
500
|
+
* start() and initStore() call this; it runs to effect exactly once — the
|
|
501
|
+
* saved payload is cleared after application so stale persisted values can
|
|
502
|
+
* never overwrite newer runtime state (e.g. a materialization that already
|
|
503
|
+
* happened this session).
|
|
504
|
+
*/
|
|
505
|
+
applySavedState() {
|
|
506
|
+
if (!this.savedState || this.mounts.size === 0)
|
|
507
|
+
return;
|
|
508
|
+
for (const [name, meta] of Object.entries(this.savedState.mounts)) {
|
|
509
|
+
const mount = this.mounts.get(name);
|
|
510
|
+
if (mount) {
|
|
511
|
+
mount.lastMaterializedSeq = meta.lastMaterializedSeq;
|
|
512
|
+
mount.lastMaterializedBranchId = meta.lastMaterializedBranchId ?? null;
|
|
513
|
+
// watcherReadyAt intentionally not restored — each session must
|
|
514
|
+
// observe its own watcher attach, otherwise a stale timestamp
|
|
515
|
+
// would hide a new-session attach failure.
|
|
516
|
+
}
|
|
517
|
+
}
|
|
518
|
+
this.savedState = null;
|
|
519
|
+
}
|
|
501
520
|
/**
|
|
502
521
|
* Start chokidar watchers and emit workspace:mounted events.
|
|
503
522
|
* Idempotent: safe to call from both start() and initStore(), fires once
|
|
@@ -595,6 +614,14 @@ export class WorkspaceModule {
|
|
|
595
614
|
this.watchers.clear();
|
|
596
615
|
this.ctx = null;
|
|
597
616
|
}
|
|
617
|
+
/** Mount names + modes, for peer callers (framework spill/journal paths)
|
|
618
|
+
* that need a writable mount without reaching into private state. */
|
|
619
|
+
getMounts() {
|
|
620
|
+
return [...this.mounts.values()].map((m) => ({
|
|
621
|
+
name: m.config.name,
|
|
622
|
+
mode: m.config.mode === 'read-only' ? 'read-only' : 'read-write',
|
|
623
|
+
}));
|
|
624
|
+
}
|
|
598
625
|
// ==========================================================================
|
|
599
626
|
// Tool Definitions
|
|
600
627
|
// ==========================================================================
|
|
@@ -1138,6 +1165,12 @@ export class WorkspaceModule {
|
|
|
1138
1165
|
if (!fileStat.isFile() || fileStat.size > maxSize)
|
|
1139
1166
|
return;
|
|
1140
1167
|
const buffer = await readFile(absolutePath);
|
|
1168
|
+
// Binaries are never synced into the tree (mirrors syncFromFs): the old
|
|
1169
|
+
// utf-8 round-trip here silently replaced non-UTF-8 bytes with U+FFFD,
|
|
1170
|
+
// permanently mangling images in the blob store. Binary reads are served
|
|
1171
|
+
// straight from disk (readImageFromFilesystem / read_image fallback).
|
|
1172
|
+
if (isBinary(buffer))
|
|
1173
|
+
return;
|
|
1141
1174
|
const content = buffer.toString('utf-8');
|
|
1142
1175
|
const blobHash = store.storeBlob(Buffer.from(content, 'utf-8'), 'text/plain');
|
|
1143
1176
|
store.treeSet(mount.treeStateId, relativePath, {
|