@felan-ai/daemon 0.5.3 → 0.7.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/daemon/host-workers.d.ts +34 -0
- package/dist/daemon/host-workers.d.ts.map +1 -0
- package/dist/daemon/host-workers.js +160 -0
- package/dist/daemon/host-workers.js.map +1 -0
- package/dist/daemon/maintenance.d.ts +21 -0
- package/dist/daemon/maintenance.d.ts.map +1 -0
- package/dist/daemon/maintenance.js +48 -0
- package/dist/daemon/maintenance.js.map +1 -0
- package/dist/daemon/profile-storage.d.ts +3 -1
- package/dist/daemon/profile-storage.d.ts.map +1 -1
- package/dist/daemon/profile-storage.js +10 -7
- package/dist/daemon/profile-storage.js.map +1 -1
- package/dist/daemon/provider-loader.d.ts +3 -0
- package/dist/daemon/provider-loader.d.ts.map +1 -1
- package/dist/daemon/provider-loader.js +14 -2
- package/dist/daemon/provider-loader.js.map +1 -1
- package/dist/daemon/registry.d.ts +6 -0
- package/dist/daemon/registry.d.ts.map +1 -1
- package/dist/daemon/registry.js +46 -21
- package/dist/daemon/registry.js.map +1 -1
- package/dist/daemon/server.d.ts +2 -1
- package/dist/daemon/server.d.ts.map +1 -1
- package/dist/daemon/server.js +2 -2
- package/dist/daemon/server.js.map +1 -1
- package/dist/daemon/service.d.ts.map +1 -1
- package/dist/daemon/service.js +8 -1
- package/dist/daemon/service.js.map +1 -1
- package/dist/daemon/session-lifecycle-contracts.d.ts +1 -0
- package/dist/daemon/session-lifecycle-contracts.d.ts.map +1 -1
- package/dist/daemon/session-lifecycle.js +1 -1
- package/dist/daemon/session-lifecycle.js.map +1 -1
- package/dist/daemon/session-services.d.ts +2 -1
- package/dist/daemon/session-services.d.ts.map +1 -1
- package/dist/daemon/session-services.js +58 -41
- package/dist/daemon/session-services.js.map +1 -1
- package/dist/daemon/worker.d.ts +9 -1
- package/dist/daemon/worker.d.ts.map +1 -1
- package/dist/daemon/worker.js +92 -13
- package/dist/daemon/worker.js.map +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { DaemonOwnership } from './ownership.js';
|
|
2
|
+
import type { RegistryProcesses } from './processes.js';
|
|
3
|
+
import type { SessionBinding, SessionLifecycle, SessionOpenRequest, SessionWorkerConfiguration } from './session-lifecycle-contracts.js';
|
|
4
|
+
interface HostWorkersOptions {
|
|
5
|
+
readonly owner: DaemonOwnership;
|
|
6
|
+
readonly processes: RegistryProcesses;
|
|
7
|
+
lifecycle(): SessionLifecycle;
|
|
8
|
+
assertNewWork(): void;
|
|
9
|
+
claim(id: string, path: string): void;
|
|
10
|
+
release(path: string): void;
|
|
11
|
+
openSession(request: SessionOpenRequest): Promise<SessionBinding>;
|
|
12
|
+
fail(error: unknown): void;
|
|
13
|
+
}
|
|
14
|
+
export declare class HostWorkers {
|
|
15
|
+
private readonly options;
|
|
16
|
+
private readonly entries;
|
|
17
|
+
private readonly identities;
|
|
18
|
+
private readonly opening;
|
|
19
|
+
private lifetime;
|
|
20
|
+
get signal(): AbortSignal;
|
|
21
|
+
constructor(options: HostWorkersOptions);
|
|
22
|
+
owns(id: string): boolean;
|
|
23
|
+
roots(): string[];
|
|
24
|
+
open(worker: SessionWorkerConfiguration): Promise<SessionBinding>;
|
|
25
|
+
private performOpen;
|
|
26
|
+
interrupt(): void;
|
|
27
|
+
run<T>(id: string, operation: () => Promise<T>): Promise<T>;
|
|
28
|
+
settle(): Promise<void>;
|
|
29
|
+
close(id: string): Promise<void>;
|
|
30
|
+
shutdown(): Promise<void>;
|
|
31
|
+
private disposeBinding;
|
|
32
|
+
}
|
|
33
|
+
export {};
|
|
34
|
+
//# sourceMappingURL=host-workers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"host-workers.d.ts","sourceRoot":"","sources":["../../src/daemon/host-workers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAYzI,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;IACtC,SAAS,IAAI,gBAAgB,CAAC;IAC9B,aAAa,IAAI,IAAI,CAAC;IACtB,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAClE,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;CAC5B;AAED,qBAAa,WAAW;IAOV,OAAO,CAAC,QAAQ,CAAC,OAAO;IANpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsC;IAC9D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqB;IAChD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsC;IAC9D,OAAO,CAAC,QAAQ,CAAyB;IACzC,IAAI,MAAM,IAAI,WAAW,CAAiC;gBAE7B,OAAO,EAAE,kBAAkB;IAExD,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IACzB,KAAK,IAAI,MAAM,EAAE;IAEjB,IAAI,CAAC,MAAM,EAAE,0BAA0B,GAAG,OAAO,CAAC,cAAc,CAAC;YAQnD,WAAW;IAiDzB,SAAS,IAAI,IAAI;IAWX,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAW3D,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAU7B,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB1B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;YASjB,cAAc;CAU7B"}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import { dirname, join } from 'node:path';
|
|
2
|
+
import { assertStagedWorker } from './worker.js';
|
|
3
|
+
import { canonicalProspectivePath, pathInside } from './target.js';
|
|
4
|
+
export class HostWorkers {
|
|
5
|
+
options;
|
|
6
|
+
entries = new Map();
|
|
7
|
+
identities = new Set();
|
|
8
|
+
opening = new Set();
|
|
9
|
+
lifetime = new AbortController();
|
|
10
|
+
get signal() { return this.lifetime.signal; }
|
|
11
|
+
constructor(options) {
|
|
12
|
+
this.options = options;
|
|
13
|
+
}
|
|
14
|
+
owns(id) { return this.identities.has(id); }
|
|
15
|
+
roots() { return [...this.entries.keys()]; }
|
|
16
|
+
open(worker) {
|
|
17
|
+
this.options.assertNewWork();
|
|
18
|
+
const operation = this.performOpen(worker, this.signal);
|
|
19
|
+
this.opening.add(operation);
|
|
20
|
+
void operation.then(() => this.opening.delete(operation), () => this.opening.delete(operation));
|
|
21
|
+
return operation;
|
|
22
|
+
}
|
|
23
|
+
async performOpen(worker, signal) {
|
|
24
|
+
const manager = worker.sessionManager;
|
|
25
|
+
const file = manager.getSessionFile();
|
|
26
|
+
if (!file)
|
|
27
|
+
throw Object.assign(new Error('Worker transcript must have a fresh identity.'), { code: 'invalid_request' });
|
|
28
|
+
const transcript = this.options.owner.assertOwnsPath(file);
|
|
29
|
+
if (!pathInside(canonicalProspectivePath(join(this.options.owner.target.agentDir, 'sessions')), transcript)) {
|
|
30
|
+
throw Object.assign(new Error('Worker transcript is outside the host session directory.'), { code: 'forbidden' });
|
|
31
|
+
}
|
|
32
|
+
const resources = await this.options.lifecycle().resolveResources({ cwd: manager.getCwd(), sessionDir: dirname(transcript) });
|
|
33
|
+
signal.throwIfAborted();
|
|
34
|
+
const { id, path } = assertStagedWorker(this.options.owner, resources, worker, id => this.identities.has(id));
|
|
35
|
+
if (manager.getCwd() !== resources.cwd)
|
|
36
|
+
throw new Error('Worker workspace does not match its transcript.');
|
|
37
|
+
for (const root of resources.writableRoots)
|
|
38
|
+
this.options.owner.assertOwnsPath(root);
|
|
39
|
+
this.options.claim(id, path);
|
|
40
|
+
this.identities.add(id);
|
|
41
|
+
let binding;
|
|
42
|
+
const policy = { mode: 'host-default', generation: 0 };
|
|
43
|
+
try {
|
|
44
|
+
binding = await this.options.openSession({ resources, target: { kind: 'resume', sessionFile: path }, rootSessionId: id,
|
|
45
|
+
policy, extensionPaths: [], allowedTools: worker.allowedTools, worker: { ...worker, host: true },
|
|
46
|
+
ownership: { assertOwned: (resolved, target) => {
|
|
47
|
+
signal.throwIfAborted();
|
|
48
|
+
for (const root of resolved.writableRoots)
|
|
49
|
+
this.options.owner.assertOwnsPath(root);
|
|
50
|
+
if (target.sourceSessionId !== id || this.options.owner.assertOwnsPath(target.sourceSessionFile) !== path
|
|
51
|
+
|| target.destinationDirectory !== resources.sessionDir)
|
|
52
|
+
throw new Error('Worker transcript identity changed.');
|
|
53
|
+
} },
|
|
54
|
+
services: { getExecutionPolicy: () => policy, currentRun: () => undefined,
|
|
55
|
+
extensions: { configuration: async () => [], bind: async () => { throw new Error('Host worker extension discovery is disabled.'); } } }, });
|
|
56
|
+
signal.throwIfAborted();
|
|
57
|
+
if (binding.sessionId !== id || binding.rootSessionId !== id || binding.parentSessionId !== undefined
|
|
58
|
+
|| manager.getSessionFile() !== path || manager.getCwd() !== resources.cwd)
|
|
59
|
+
throw new Error('Lifecycle returned inconsistent worker identity.');
|
|
60
|
+
await binding.activate?.();
|
|
61
|
+
signal.throwIfAborted();
|
|
62
|
+
this.entries.set(id, { binding, path });
|
|
63
|
+
return binding;
|
|
64
|
+
}
|
|
65
|
+
catch (error) {
|
|
66
|
+
try {
|
|
67
|
+
if (binding)
|
|
68
|
+
await this.disposeBinding(binding);
|
|
69
|
+
else {
|
|
70
|
+
await this.options.processes.settle(id);
|
|
71
|
+
this.options.processes.revoke(id);
|
|
72
|
+
}
|
|
73
|
+
this.options.release(path);
|
|
74
|
+
}
|
|
75
|
+
catch (cleanup) {
|
|
76
|
+
const failure = new AggregateError([error, cleanup], 'Host worker setup cleanup failed.');
|
|
77
|
+
this.options.fail(failure);
|
|
78
|
+
throw failure;
|
|
79
|
+
}
|
|
80
|
+
throw error;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
interrupt() {
|
|
84
|
+
this.lifetime.abort();
|
|
85
|
+
this.lifetime = new AbortController();
|
|
86
|
+
for (const entry of this.entries.values()) {
|
|
87
|
+
if (entry.cancelling || entry.closing)
|
|
88
|
+
continue;
|
|
89
|
+
const cancellation = Promise.resolve().then(() => entry.binding.runtime.session.abort());
|
|
90
|
+
entry.cancelling = cancellation;
|
|
91
|
+
void cancellation.then(() => { delete entry.cancelling; }, error => this.options.fail(error));
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
async run(id, operation) {
|
|
95
|
+
this.options.assertNewWork();
|
|
96
|
+
const entry = this.entries.get(id);
|
|
97
|
+
if (!entry || entry.closing)
|
|
98
|
+
throw new Error('Host worker is closed.');
|
|
99
|
+
if (entry.running || !entry.binding.runtime.session.isIdle)
|
|
100
|
+
throw Object.assign(new Error('Worker is already running.'), { code: 'busy' });
|
|
101
|
+
const work = operation();
|
|
102
|
+
entry.running = work.then(() => { }, () => { });
|
|
103
|
+
try {
|
|
104
|
+
return await work;
|
|
105
|
+
}
|
|
106
|
+
finally {
|
|
107
|
+
delete entry.running;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
async settle() {
|
|
111
|
+
await Promise.allSettled([...this.opening]);
|
|
112
|
+
for (const entry of this.entries.values()) {
|
|
113
|
+
await entry.cancelling?.catch(() => { });
|
|
114
|
+
await entry.running;
|
|
115
|
+
if (!entry.binding.runtime.session.isIdle)
|
|
116
|
+
await entry.binding.runtime.session.waitForIdle();
|
|
117
|
+
await entry.closing;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
close(id) {
|
|
121
|
+
const entry = this.entries.get(id);
|
|
122
|
+
if (!entry)
|
|
123
|
+
return Promise.resolve();
|
|
124
|
+
if (entry.closing)
|
|
125
|
+
return entry.closing;
|
|
126
|
+
this.options.processes.seal(id);
|
|
127
|
+
const closing = this.options.processes.withCleanup(id, async () => {
|
|
128
|
+
await entry.cancelling?.catch(() => { });
|
|
129
|
+
await entry.binding.runtime.session.abort();
|
|
130
|
+
await entry.running;
|
|
131
|
+
await this.disposeBinding(entry.binding);
|
|
132
|
+
this.options.release(entry.path);
|
|
133
|
+
this.entries.delete(id);
|
|
134
|
+
});
|
|
135
|
+
entry.closing = closing;
|
|
136
|
+
void closing.catch(error => { delete entry.closing; this.options.fail(error); });
|
|
137
|
+
return closing;
|
|
138
|
+
}
|
|
139
|
+
async shutdown() {
|
|
140
|
+
this.interrupt();
|
|
141
|
+
await Promise.allSettled([...this.opening]);
|
|
142
|
+
const results = await Promise.allSettled([...this.entries.keys()].map(id => this.close(id)));
|
|
143
|
+
const failures = results.flatMap(result => result.status === 'rejected' ? [result.reason] : []);
|
|
144
|
+
if (failures.length === 1)
|
|
145
|
+
throw failures[0];
|
|
146
|
+
if (failures.length)
|
|
147
|
+
throw new AggregateError(failures, 'Host worker shutdown failed.');
|
|
148
|
+
}
|
|
149
|
+
async disposeBinding(binding) {
|
|
150
|
+
await this.options.processes.withCleanup(binding.sessionId, async () => {
|
|
151
|
+
await binding.runtime.session.abort();
|
|
152
|
+
await binding.runtime.session.waitForIdle();
|
|
153
|
+
await this.options.processes.settle(binding.rootSessionId);
|
|
154
|
+
await binding.runtime.dispose();
|
|
155
|
+
});
|
|
156
|
+
this.options.processes.revoke(binding.sessionId);
|
|
157
|
+
this.options.processes.revokeRuntime(binding.agentRuntime);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
//# sourceMappingURL=host-workers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"host-workers.js","sourceRoot":"","sources":["../../src/daemon/host-workers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { ModelRuntime } from '@felan-ai/agent-core';
|
|
2
|
+
import type { HostConfiguration } from './host-services.js';
|
|
3
|
+
import type { SessionRegistry } from './registry.js';
|
|
4
|
+
export declare function createHostMaintenance(): Readonly<{
|
|
5
|
+
service: Readonly<{
|
|
6
|
+
readonly agentDir: string;
|
|
7
|
+
readonly modelRuntime: ModelRuntime;
|
|
8
|
+
readonly signal: AbortSignal;
|
|
9
|
+
allowedModels: (signal: AbortSignal | undefined) => Promise<readonly import("@felan-ai/agent-core").ModelReference[] | undefined>;
|
|
10
|
+
sessions: (selector: import("@felan-ai/agent-core").HostSessionsSelector) => import("@felan-ai/agent-core").SessionsHistory;
|
|
11
|
+
openWorker: (request: import("@felan-ai/agent-core").HostWorkerOptions) => Promise<import("@felan-ai/agent-core").HostWorker>;
|
|
12
|
+
}>;
|
|
13
|
+
bind(options: {
|
|
14
|
+
registry: SessionRegistry;
|
|
15
|
+
agentDir: string;
|
|
16
|
+
modelRuntime: ModelRuntime;
|
|
17
|
+
configuration: HostConfiguration;
|
|
18
|
+
}): void;
|
|
19
|
+
close(): void;
|
|
20
|
+
}>;
|
|
21
|
+
//# sourceMappingURL=maintenance.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"maintenance.d.ts","sourceRoot":"","sources":["../../src/daemon/maintenance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAmB,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAG1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAGrD,wBAAgB,qBAAqB;;;;;;;;;kBAoBnB;QAAE,QAAQ,EAAE,eAAe,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,YAAY,CAAC;QAAC,aAAa,EAAE,iBAAiB,CAAA;KAAE;;GAoB9H"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { resolveModelScopeWithDiagnostics } from '@earendil-works/pi-coding-agent';
|
|
2
|
+
import { createHostWorkerLauncher } from './worker.js';
|
|
3
|
+
import { createHostSessionsHistory } from './session-services.js';
|
|
4
|
+
export function createHostMaintenance() {
|
|
5
|
+
let bound;
|
|
6
|
+
const lifetime = new AbortController();
|
|
7
|
+
function current() {
|
|
8
|
+
lifetime.signal.throwIfAborted();
|
|
9
|
+
if (!bound)
|
|
10
|
+
throw new Error('Host maintenance is unavailable.');
|
|
11
|
+
bound.registry.assertHostWork();
|
|
12
|
+
return bound.service;
|
|
13
|
+
}
|
|
14
|
+
const service = Object.freeze({
|
|
15
|
+
get agentDir() { return current().agentDir; },
|
|
16
|
+
get modelRuntime() { return current().modelRuntime; },
|
|
17
|
+
get signal() { return lifetime.signal; },
|
|
18
|
+
allowedModels: async (signal) => current().allowedModels(signal),
|
|
19
|
+
sessions: selector => current().sessions(selector),
|
|
20
|
+
openWorker: request => current().openWorker({ ...request,
|
|
21
|
+
signal: request.signal ? AbortSignal.any([lifetime.signal, request.signal]) : lifetime.signal }),
|
|
22
|
+
});
|
|
23
|
+
return Object.freeze({
|
|
24
|
+
service,
|
|
25
|
+
bind(options) {
|
|
26
|
+
if (bound || lifetime.signal.aborted)
|
|
27
|
+
throw new Error('Host maintenance cannot be rebound.');
|
|
28
|
+
const { registry, agentDir, modelRuntime, configuration } = options;
|
|
29
|
+
const allowedModels = async (inputSignal) => {
|
|
30
|
+
current();
|
|
31
|
+
const signal = inputSignal ? AbortSignal.any([lifetime.signal, inputSignal]) : lifetime.signal;
|
|
32
|
+
signal.throwIfAborted();
|
|
33
|
+
const patterns = (await configuration.get('global')).values.scopedModels;
|
|
34
|
+
signal.throwIfAborted();
|
|
35
|
+
if (!patterns?.length)
|
|
36
|
+
return undefined;
|
|
37
|
+
const scope = await resolveModelScopeWithDiagnostics(patterns, modelRuntime, { signal });
|
|
38
|
+
signal.throwIfAborted();
|
|
39
|
+
return scope.scopedModels.map(({ model }) => ({ provider: model.provider, id: model.id }));
|
|
40
|
+
};
|
|
41
|
+
bound = { registry, service: { agentDir, modelRuntime, signal: lifetime.signal, allowedModels,
|
|
42
|
+
sessions: selector => createHostSessionsHistory(registry, selector, () => { current(); }),
|
|
43
|
+
openWorker: createHostWorkerLauncher(registry, modelRuntime, allowedModels) } };
|
|
44
|
+
},
|
|
45
|
+
close() { lifetime.abort(); },
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=maintenance.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"maintenance.js","sourceRoot":"","sources":["../../src/daemon/maintenance.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,9 @@ export declare function assertTargetUnchanged(before: ResolvedProfileTarget, aft
|
|
|
10
10
|
export declare function assertSessionManagerMatches(manager: SessionManager, sessionId?: string): void;
|
|
11
11
|
export declare function openSessionManager(request: SessionOpenRequest, resolved: ResolvedProfileTarget): Promise<SessionManager>;
|
|
12
12
|
export declare function createWorkerBinding(request: SessionOpenRequest, manager: SessionManager, options: Pick<SessionLifecycleOptions, 'wrapRuntime' | 'composition'>): Promise<SessionBinding>;
|
|
13
|
-
export declare function restrictActiveTools(session: AgentSession, allowedTools: readonly string[]
|
|
13
|
+
export declare function restrictActiveTools(session: AgentSession, allowedTools: readonly string[], options?: {
|
|
14
|
+
readonly reopened?: boolean;
|
|
15
|
+
}): void;
|
|
14
16
|
export declare function assertAbsolutePath(path: string): void;
|
|
15
17
|
export declare function canonicalPath(path: string): Promise<string>;
|
|
16
18
|
//# sourceMappingURL=profile-storage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile-storage.d.ts","sourceRoot":"","sources":["../../src/daemon/profile-storage.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAmE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAG1I,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAIlH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC;IACzC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAwB/F;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,qBAAqB,EAAE,KAAK,EAAE,qBAAqB,GAAG,IAAI,CAQvG;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAI7F;AAED,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,qBAAqB,GAAG,OAAO,CAAC,cAAc,CAAC,CA2B9H;AAED,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,uBAAuB,EAAE,aAAa,GAAG,aAAa,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC,CA4B9L;
|
|
1
|
+
{"version":3,"file":"profile-storage.d.ts","sourceRoot":"","sources":["../../src/daemon/profile-storage.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAmE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAG1I,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAIlH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC;IACzC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAwB/F;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,qBAAqB,EAAE,KAAK,EAAE,qBAAqB,GAAG,IAAI,CAQvG;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAI7F;AAED,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,qBAAqB,GAAG,OAAO,CAAC,cAAc,CAAC,CA2B9H;AAED,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,uBAAuB,EAAE,aAAa,GAAG,aAAa,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC,CA4B9L;AAGD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,GAAE;IAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,IAAI,CAM/I;AAWD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAIrD;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAQjE"}
|
|
@@ -88,12 +88,12 @@ export async function openSessionManager(request, resolved) {
|
|
|
88
88
|
}
|
|
89
89
|
export async function createWorkerBinding(request, manager, options) {
|
|
90
90
|
const worker = request.worker;
|
|
91
|
-
if (!request.parentSessionId ||
|
|
92
|
-
throw new Error('Worker requires a
|
|
91
|
+
if (!request.rootSessionId || (worker.host ? request.parentSessionId !== undefined || request.rootSessionId !== manager.getSessionId() : !request.parentSessionId))
|
|
92
|
+
throw new Error('Worker requires a valid parent or host scope.');
|
|
93
93
|
const runtimeRequest = createRuntimeStorageRequest(request.resources.cwd, request.resources.agentDir, request.rootSessionId);
|
|
94
94
|
const runtime = options.wrapRuntime?.(worker.runtime, runtimeRequest) ?? worker.runtime;
|
|
95
95
|
const wrapStreamFunction = options.composition.wrapWorkerStream?.({
|
|
96
|
-
id: manager.getSessionId(), root: request.rootSessionId, parent: request.parentSessionId,
|
|
96
|
+
id: manager.getSessionId(), root: request.rootSessionId, ...(request.parentSessionId ? { parent: request.parentSessionId } : {}),
|
|
97
97
|
});
|
|
98
98
|
const factory = createAgentCoreSessionRuntimeFactory(async () => ({ runtime, modelRuntime: worker.modelRuntime,
|
|
99
99
|
settingsManager: worker.settingsManager, model: worker.model,
|
|
@@ -108,7 +108,7 @@ export async function createWorkerBinding(request, manager, options) {
|
|
|
108
108
|
const tools = TrustedToolCatalog.fromSession(created.session, options.composition.toolPolicy);
|
|
109
109
|
return {
|
|
110
110
|
runtime: created, agentRuntime: runtime, sessionId: manager.getSessionId(), rootSessionId: request.rootSessionId,
|
|
111
|
-
parentSessionId: request.parentSessionId, resources: request.resources, diagnostics: created.diagnostics,
|
|
111
|
+
...(request.parentSessionId ? { parentSessionId: request.parentSessionId } : {}), resources: request.resources, diagnostics: created.diagnostics,
|
|
112
112
|
tools, toolProvenance: tools.provenance,
|
|
113
113
|
activate: async () => {
|
|
114
114
|
await created.session.bindExtensions({ mode: 'print' });
|
|
@@ -116,10 +116,13 @@ export async function createWorkerBinding(request, manager, options) {
|
|
|
116
116
|
},
|
|
117
117
|
};
|
|
118
118
|
}
|
|
119
|
-
|
|
120
|
-
|
|
119
|
+
// A reopened worker transcript no longer has the worker's custom tools, so it keeps only the stored tools that still exist.
|
|
120
|
+
export function restrictActiveTools(session, allowedTools, options = {}) {
|
|
121
|
+
const available = new Set(session.getAllTools().map(tool => tool.name));
|
|
122
|
+
const expected = options.reopened ? allowedTools.filter(name => available.has(name)) : allowedTools;
|
|
123
|
+
session.setActiveToolsByName([...expected]);
|
|
121
124
|
const actual = session.getActiveToolNames();
|
|
122
|
-
if (actual.length !==
|
|
125
|
+
if (actual.length !== expected.length || actual.some(name => !expected.includes(name)))
|
|
123
126
|
throw new Error('Worker tool restrictions could not be installed.');
|
|
124
127
|
}
|
|
125
128
|
// A transcript linked from elsewhere (for example a symlinked dotfile store) keeps its listed path.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile-storage.js","sourceRoot":"","sources":["../../src/daemon/profile-storage.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"profile-storage.js","sourceRoot":"","sources":["../../src/daemon/profile-storage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import { type FelanServiceRegistry } from '@felan-ai/agent-core';
|
|
2
2
|
import { resolveHostComposition, type HostComposition, type HostConfig } from './host-config.js';
|
|
3
|
+
import { createHostMaintenance } from './maintenance.js';
|
|
3
4
|
import { type ProviderSessionContext, type ProviderSessionScope } from './provider.js';
|
|
4
5
|
export interface LoadedProviders {
|
|
5
6
|
readonly services: FelanServiceRegistry;
|
|
6
7
|
readonly composition: HostComposition;
|
|
8
|
+
readonly maintenance: ReturnType<typeof createHostMaintenance>;
|
|
9
|
+
busy(): boolean;
|
|
7
10
|
activate(): Promise<void>;
|
|
8
11
|
openSession(context: Omit<ProviderSessionContext, 'services' | 'options' | 'signal'>, options?: {
|
|
9
12
|
readonly signal?: AbortSignal;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-loader.d.ts","sourceRoot":"","sources":["../../src/daemon/provider-loader.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"provider-loader.d.ts","sourceRoot":"","sources":["../../src/daemon/provider-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6G,KAAK,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5K,OAAO,EAAE,sBAAsB,EAAE,KAAK,eAAe,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACjG,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAGL,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EAG1B,MAAM,eAAe,CAAC;AAEvB,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,CAAC;IACxC,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAC;IACtC,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;IAC/D,IAAI,IAAI,OAAO,CAAC;IAChB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,WAAW,CACT,OAAO,EAAE,IAAI,CAAC,sBAAsB,EAAE,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAC,EACxE,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAC1C,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACjC,MAAM,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAED,oEAAoE;AACpE,qBAAa,oBAAqB,SAAQ,cAAc;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;gBAA5E,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAW,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;CAIzF;AAED,wBAAsB,yBAAyB,CAAC,OAAO,EAAE;IACvD,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/D,QAAQ,CAAC,sBAAsB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpD,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAChE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC;CAChF,GAAG,OAAO,CAAC,eAAe,CAAC,CAyL3B;AAMD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,oBAAoB,GAAG,IAAI,CAExE"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { createExtensionServiceAccess, createFelanServiceRegistry, defineServiceContract } from '@felan-ai/agent-core';
|
|
1
|
+
import { createExtensionServiceAccess, createFelanServiceRegistry, defineServiceContract, HOST_MAINTENANCE_SERVICE } from '@felan-ai/agent-core';
|
|
2
2
|
import { parseSchema } from '@felan-ai/session-protocol';
|
|
3
3
|
import { resolveHostComposition } from './host-config.js';
|
|
4
|
+
import { createHostMaintenance } from './maintenance.js';
|
|
4
5
|
import { defineServiceProvider, } from './provider.js';
|
|
5
6
|
/** Retains a cleanup retry when startup cannot return its owner. */
|
|
6
7
|
export class ProviderStartupError extends AggregateError {
|
|
@@ -18,6 +19,8 @@ export async function createConfiguredProviders(options) {
|
|
|
18
19
|
const configuredByKey = new Map(options.config.services.map(service => [`${service.id}@${service.major}`, service]));
|
|
19
20
|
if (configuredByKey.size !== options.config.services.length)
|
|
20
21
|
throw new Error('A service has more than one configured provider.');
|
|
22
|
+
if (configuredByKey.has(HOST_MAINTENANCE_SERVICE.key))
|
|
23
|
+
throw new Error('Host maintenance is provided by the daemon.');
|
|
21
24
|
for (const required of options.requiredDaemonServices ?? [])
|
|
22
25
|
if (!configuredByKey.has(required)) {
|
|
23
26
|
throw new Error(`Required daemon service ${required} has no configured provider.`);
|
|
@@ -71,6 +74,8 @@ export async function createConfiguredProviders(options) {
|
|
|
71
74
|
for (const contract of definition.requires ?? []) {
|
|
72
75
|
const key = `${contract.id}@${contract.major}`;
|
|
73
76
|
mandatoryContracts.add(key);
|
|
77
|
+
if (key === HOST_MAINTENANCE_SERVICE.key)
|
|
78
|
+
continue;
|
|
74
79
|
const dependency = providerFor.get(key);
|
|
75
80
|
if (!dependency)
|
|
76
81
|
throw new Error(`Provider ${moduleUrl} requires unconfigured service ${key}.`);
|
|
@@ -139,7 +144,10 @@ export async function createConfiguredProviders(options) {
|
|
|
139
144
|
startupSignal?.removeEventListener('abort', relayAbort);
|
|
140
145
|
}
|
|
141
146
|
}
|
|
142
|
-
const
|
|
147
|
+
const maintenance = createHostMaintenance();
|
|
148
|
+
const services = createFelanServiceRegistry();
|
|
149
|
+
services.set(HOST_MAINTENANCE_SERVICE, maintenance.service);
|
|
150
|
+
const daemon = createProviderScope(services);
|
|
143
151
|
try {
|
|
144
152
|
await start(daemon, undefined, options.signal);
|
|
145
153
|
checkStartup(options.signal);
|
|
@@ -153,6 +161,8 @@ export async function createConfiguredProviders(options) {
|
|
|
153
161
|
return Object.freeze({
|
|
154
162
|
services: daemon.api.services,
|
|
155
163
|
composition,
|
|
164
|
+
maintenance,
|
|
165
|
+
busy: () => daemon.api.busy(),
|
|
156
166
|
activate() {
|
|
157
167
|
if (closing)
|
|
158
168
|
return Promise.reject(new Error('Configured providers are shutting down.'));
|
|
@@ -185,6 +195,7 @@ export async function createConfiguredProviders(options) {
|
|
|
185
195
|
if ([...sessions].some(record => record.opening))
|
|
186
196
|
throw new Error('Session providers are still starting.');
|
|
187
197
|
closing = true;
|
|
198
|
+
maintenance.close();
|
|
188
199
|
for (const record of [...sessions].reverse())
|
|
189
200
|
await record.scope.api.settle(mode);
|
|
190
201
|
await daemon.api.settle(mode);
|
|
@@ -195,6 +206,7 @@ export async function createConfiguredProviders(options) {
|
|
|
195
206
|
}
|
|
196
207
|
if (!disposal) {
|
|
197
208
|
closing = true;
|
|
209
|
+
maintenance.close();
|
|
198
210
|
disposal = (async () => {
|
|
199
211
|
for (const record of [...sessions].reverse())
|
|
200
212
|
await record.scope.api.dispose();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-loader.js","sourceRoot":"","sources":["../../src/daemon/provider-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,0BAA0B,EAAE,qBAAqB,EAA6B,MAAM,sBAAsB,CAAC;AAClJ,OAAO,EAAE,WAAW,EAAkB,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAyC,MAAM,kBAAkB,CAAC;AACjG,OAAO,EACL,qBAAqB,GAMtB,MAAM,eAAe,CAAC;AAcvB,oEAAoE;AACpE,MAAM,OAAO,oBAAqB,SAAQ,cAAc;IACM;IAA5D,YAAY,KAAc,EAAE,YAAqB,EAAW,OAA4B;QACtF,KAAK,CAAC,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE,iDAAiD,CAAC,CAAC;QADtB,YAAO,GAAP,OAAO,CAAqB;QAEtF,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;IACrC,CAAC;CACF;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,OAO/C;IACC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7B,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACnL,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7B,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,EAAE,IAAI,OAAO,CAAC,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACrH,IAAI,eAAe,CAAC,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACjI,KAAK,MAAM,QAAQ,IAAI,OAAO,CAAC,sBAAsB,IAAI,EAAE;QAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChG,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,8BAA8B,CAAC,CAAC;QACrF,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,GAAG,EAAqC,CAAC;IAC7D,MAAM,aAAa,GAAG,IAAI,GAAG,EAAiC,CAAC;IAC/D,MAAM,QAAQ,GAAG,OAAO,CAAC,YAAY,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IAC1E,KAAK,MAAM,SAAS,IAAI,IAAI,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QAC3F,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3C,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,SAAS,GAAG,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,SAAS,IAAI,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;QACnH,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,SAAS,0CAA0C,CAAC,CAAC;QAC7I,MAAM,UAAU,GAAG,qBAAqB,CAAC,SAAsC,CAAC,CAAC;QACjF,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC9C,KAAK,MAAM,QAAQ,IAAI,WAAW,CAAC,SAAS;QAAE,WAAW,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,EAAE,IAAI,QAAQ,CAAC,KAAK,EAAE,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IACtH,KAAK,MAAM,QAAQ,IAAI,OAAO,CAAC,sBAAsB,IAAI,EAAE,EAAE,CAAC;QAC5D,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC,EAAE,KAAK,KAAK,SAAS,EAAE,CAAC;YACjE,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,iCAAiC,CAAC,CAAC;QACxF,CAAC;IACH,CAAC;IACD,KAAK,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,OAAO,EAAE,CAAC;QAC9C,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5E,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,EAAE,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC3J,IAAI,QAAQ,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACzF,MAAM,IAAI,KAAK,CAAC,uBAAuB,SAAS,gDAAgD,CAAC,CAAC;QACpG,CAAC;QACD,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;QAC3F,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC/D,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1F,MAAM,IAAI,KAAK,CAAC,YAAY,SAAS,2DAA2D,CAAC,CAAC;QACpG,CAAC;QACD,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QACrC,IAAI,UAAU,CAAC,aAAa,EAAE,CAAC;YAC7B,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,UAAU,CAAC,aAAa,EAAE,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAc,CAAC,CAAC;QACnI,CAAC;aAAM,CAAC;YACN,IAAI,YAAY,KAAK,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,YAAY,SAAS,2BAA2B,CAAC,CAAC;YAClG,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,GAAG,EAAuB,CAAC;IAClD,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC;IACzE,KAAK,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,OAAO,EAAE,CAAC;QAC9C,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;QACvC,KAAK,MAAM,QAAQ,IAAI,UAAU,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;YACjD,MAAM,GAAG,GAAG,GAAG,QAAQ,CAAC,EAAE,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YAC/C,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC5B,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACxC,IAAI,CAAC,UAAU;gBAAE,MAAM,IAAI,KAAK,CAAC,YAAY,SAAS,kCAAkC,GAAG,GAAG,CAAC,CAAC;YAChG,IAAI,UAAU,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBACnF,MAAM,IAAI,KAAK,CAAC,mBAAmB,SAAS,qCAAqC,GAAG,GAAG,CAAC,CAAC;YAC3F,CAAC;YACD,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC/B,CAAC;QACD,KAAK,MAAM,QAAQ,IAAI,UAAU,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;YACjD,MAAM,GAAG,GAAG,GAAG,QAAQ,CAAC,EAAE,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YAC/C,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACxC,IAAI,UAAU,EAAE,CAAC;gBACf,IAAI,UAAU,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBACnF,MAAM,IAAI,KAAK,CAAC,mBAAmB,SAAS,qCAAqC,GAAG,GAAG,CAAC,CAAC;gBAC3F,CAAC;gBACD,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;QACD,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IAC1C,CAAC;IACD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IAAC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IACtE,MAAM,KAAK,GAAG,CAAC,SAAiB,EAAE,EAAE;QAClC,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,OAAO;QACnC,IAAI,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QAC9F,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACxB,KAAK,MAAM,UAAU,IAAI,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE;YAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5E,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5E,CAAC,CAAC;IACF,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,IAAI,EAAE;QAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAEzD,KAAK,UAAU,KAAK,CAAC,KAA2B,EAAE,OAAkC,EAAE,aAA2B;QAC/G,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QAChD,IAAI,aAAa,EAAE,OAAO;YAAE,UAAU,EAAE,CAAC;QACzC,aAAa,EAAE,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,IAAI,CAAC;YACH,KAAK,MAAM,SAAS,IAAI,KAAK,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC;gBAC3C,IAAI,CAAC,UAAU,CAAC,KAAK,KAAK,SAAS,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC;oBAAE,SAAS;gBAC3E,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACpC,MAAM,OAAO,GAA0B,MAAM,CAAC,MAAM,CAAC;oBACnD,QAAQ,EAAE,4BAA4B,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE;wBACzD,QAAQ,EAAE,CAAC,UAAU,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,qBAAqB,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;wBACzG,QAAQ,EAAE,CAAC,UAAU,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,qBAAqB,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;qBAC1G,CAAC;oBACF,OAAO,EAAE,eAAe,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;oBACtD,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM;iBAC9B,CAAC,CAAC;gBACH,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,KAAK,SAAS;oBAC7C,CAAC,CAAC,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,OAAQ,EAAE,CAAC,CAAC;oBACrE,CAAC,CAAC,MAAM,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACrC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAC;gBAC/D,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACtC,CAAC;YACD,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;gBAAS,CAAC;YACT,aAAa,EAAE,mBAAmB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,mBAAmB,CAAC,0BAA0B,EAAE,CAAC,CAAC;IACjE,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAC/C,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,kBAAkB,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC9C,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAwB,CAAC;IACjD,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,QAAmC,CAAC;IACxC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ;QAC7B,WAAW;QACX,QAAQ;YACN,IAAI,OAAO;gBAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC,CAAC;YACzF,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC/B,CAAC;QACD,KAAK,CAAC,WAAW,CAAC,OAAsB,EAAE,WAA+C;YACvF,IAAI,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;YACxE,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAClC,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YACtC,MAAM,MAAM,GAAyB;gBACnC,KAAK,EAAE,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACrF,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,KAAK;aAClB,CAAC;YACF,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACrB,IAAI,CAAC;gBACH,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;gBACvD,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;gBAClC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;YAC1B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;gBACzB,OAAO,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,IAAuB;YAClC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;YAC3G,OAAO,GAAG,IAAI,CAAC;YACf,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,OAAO,EAAE;gBAAE,MAAM,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAClF,MAAM,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;QACD,OAAO;YACL,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;gBACrD,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,8EAA8E,CAAC,CAAC,CAAC;YACnH,CAAC;YACD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,GAAG,IAAI,CAAC;gBACf,QAAQ,GAAG,CAAC,KAAK,IAAI,EAAE;oBACrB,KAAK,MAAM,MAAM,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,OAAO,EAAE;wBAAE,MAAM,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;oBAC/E,MAAM,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;gBAC7B,CAAC,CAAC,EAAE,CAAC;gBACL,MAAM,OAAO,GAAG,QAAQ,CAAC;gBACzB,KAAK,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,IAAI,QAAQ,KAAK,OAAO;oBAAE,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YAChF,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAID,MAAM,cAAc,GAAG,IAAI,OAAO,EAAyC,CAAC;AAE5E,MAAM,UAAU,sBAAsB,CAAC,KAA2B;IAChE,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC;AACrC,CAAC;AAcD,SAAS,mBAAmB,CAAC,QAA8B,EAAE,UAAuB;IAClF,MAAM,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;IACvC,MAAM,SAAS,GAA8B,EAAE,CAAC;IAChD,MAAM,MAAM,GAAG,IAAI,GAAG,EAA2B,CAAC;IAClD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAmD,CAAC;IAC3E,MAAM,WAAW,GAAG,IAAI,GAAG,EAAoC,CAAC;IAChE,IAAI,IAAI,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,IAAI,UAAqC,CAAC;IAC1C,IAAI,QAAmC,CAAC;IACxC,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,SAAS,OAAO,CAAC,SAA8B;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACpC,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC9B,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,MAAM,GAAG,GAAyB,MAAM,CAAC,MAAM,CAAC;QAC9C,QAAQ;QACR,IAAI,gBAAgB,KAAK,OAAO,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACjG,IAAI,KAAK,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QAClE,QAAQ;YACN,IAAI,QAAQ;gBAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC;YAC9E,IAAI,QAAQ,CAAC,MAAM,CAAC,OAAO;gBAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;YAC9F,UAAU,KAAK,OAAO,CAAC,KAAK,IAAI,EAAE;gBAChC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;oBACjC,QAAQ,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;oBACjC,MAAM,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;gBAC9B,CAAC;gBACD,QAAQ,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YACnC,CAAC,CAAC,CAAC;YACH,OAAO,UAAU,CAAC;QACpB,CAAC;QACD,MAAM,CAAC,IAAuB;YAC5B,IAAI,QAAQ;gBAAE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YACvC,IAAI,IAAI,KAAK,OAAO;gBAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;iBAClC,IAAI,QAAQ,CAAC,MAAM,CAAC,OAAO;gBAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;YACnG,IAAI,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACpC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,EAA2B,CAAC;gBAC1E,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;gBAC7B,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE;oBAC3B,KAAK,MAAM,QAAQ,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;wBAChD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC;4BAAE,SAAS;wBAC/D,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;wBAC9B,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;oBAC1B,CAAC;gBACH,CAAC,CAAC,CAAC;gBACH,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAC/B,MAAM,OAAO,GAAG,OAAO,CAAC;gBACxB,KAAK,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,IAAI,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,OAAO;oBAAE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjG,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,OAAO;YACL,IAAI,QAAQ;gBAAE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YACvC,QAAQ,CAAC,KAAK,EAAE,CAAC;YACjB,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,QAAQ,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE;oBAC5B,KAAK,MAAM,QAAQ,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;wBAChD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;4BAAE,SAAS;wBACpC,IAAI,CAAC;4BAAC,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;wBAAC,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BAC/C,MAAM,IAAI,cAAc,CAAC,CAAC,KAAK,CAAC,EAAE,2BAA2B,CAAC,CAAC;wBACjE,CAAC;wBACD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBAC1B,CAAC;oBACD,QAAQ,CAAC,MAAM,EAAE,CAAC;oBAClB,QAAQ,GAAG,IAAI,CAAC;oBAChB,UAAU,EAAE,EAAE,CAAC;gBACjB,CAAC,CAAC,CAAC;gBACH,MAAM,OAAO,GAAG,QAAQ,CAAC;gBACzB,KAAK,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,IAAI,QAAQ,KAAK,OAAO;oBAAE,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YAChF,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;KACF,CAAC,CAAC;IACH,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAClC,OAAO;QACL,GAAG,EAAE,QAAQ;QACb,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,kBAAkB;YACrD,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,CAAC,OAAO,KAAK,UAAU;gBAAE,MAAM,IAAI,KAAK,CAAC,YAAY,SAAS,gCAAgC,CAAC,CAAC;YAChI,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACzB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACrB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;mBACvC,QAAQ,CAAC,gBAAgB,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;mBACpF,QAAQ,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,QAAQ,CAAC,IAAI,KAAK,UAAU;mBAClE,QAAQ,CAAC,QAAQ,KAAK,SAAS,IAAI,OAAO,QAAQ,CAAC,QAAQ,KAAK,UAAU;mBAC1E,QAAQ,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,QAAQ,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBAC5E,MAAM,IAAI,KAAK,CAAC,YAAY,SAAS,gCAAgC,CAAC,CAAC;YACzE,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5E,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;YACjC,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,eAAe,EAAE,CAAC;gBAC3C,MAAM,GAAG,GAAG,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC;gBAC/B,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBACnI,MAAM,IAAI,KAAK,CAAC,YAAY,SAAS,oDAAoD,CAAC,CAAC;gBAC7F,CAAC;gBACD,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClB,CAAC;YACD,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,YAAY,SAAS,+BAA+B,CAAC,CAAC;YACtJ,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,eAAe;gBAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QACpF,CAAC;KACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,KAA2B,EAAE,KAAc;IAC3E,IAAI,CAAC;QAAC,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;IAAC,CAAC;IAAC,OAAO,YAAY,EAAE,CAAC;QACnD,MAAM,IAAI,oBAAoB,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,MAAM,KAAK,CAAC;AACd,CAAC;AAED,SAAS,YAAY,CAAC,MAA+B;IACnD,IAAI,MAAM,EAAE,OAAO;QAAE,MAAM,IAAI,YAAY,CAAC,iCAAiC,EAAE,YAAY,CAAC,CAAC;AAC/F,CAAC;AAED,SAAS,aAAa,CAAC,OAAsB;IAC3C,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;WAClE,CAAC,OAAO,CAAC,YAAY,IAAI,OAAO,OAAO,CAAC,YAAY,KAAK,QAAQ;WACjE,CAAC,OAAO,CAAC,aAAa,IAAI,OAAO,OAAO,CAAC,aAAa,CAAC,IAAI,KAAK,UAAU;WAC1E,OAAO,OAAO,CAAC,aAAa,CAAC,KAAK,KAAK,UAAU,IAAI,OAAO,OAAO,CAAC,aAAa,CAAC,MAAM,KAAK,UAAU;WACvG,OAAO,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,OAAO,CAAC,SAAS;eAC/G,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,aAAa,IAAI,OAAO,OAAO,CAAC,QAAQ,CAAC,OAAO,KAAK,UAAU;eACzG,OAAO,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,UAAU,IAAI,OAAO,OAAO,CAAC,QAAQ,CAAC,iBAAiB,KAAK,UAAU,CAAC;WAC5G,OAAO,CAAC,UAAU,KAAK,SAAS,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,UAAU;WAC5E,OAAO,CAAC,mBAAmB,KAAK,SAAS,IAAI,OAAO,OAAO,CAAC,mBAAmB,CAAC,OAAO,KAAK,UAAU;WACtG,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE;WAClE,OAAO,OAAO,CAAC,aAAa,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE;WAC1E,OAAO,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;QAClF,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IACD,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,SAAS,CAAC,EAAE;QAC3D,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE;eACjF,OAAO,SAAS,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE;eACxD,SAAS,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,SAAS,CAAC,IAAI,KAAK,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QACrI,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,EAAE,EAAE,SAAS,CAAC,EAAE;YACnE,GAAG,CAAC,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa;QACvL,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5F,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa;QAClE,aAAa,EAAE,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;AAC7F,CAAC"}
|
|
1
|
+
{"version":3,"file":"provider-loader.js","sourceRoot":"","sources":["../../src/daemon/provider-loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -39,6 +39,7 @@ export interface RegistryOptions {
|
|
|
39
39
|
idleMs?: number;
|
|
40
40
|
processAdapter?: ProcessAdapter;
|
|
41
41
|
acquireRun?: SessionRuntime['acquireRun'];
|
|
42
|
+
onShutdown?(): void;
|
|
42
43
|
commandAvailable?(session: string, name: string): boolean;
|
|
43
44
|
onViewCancellationDiagnostic?(event: {
|
|
44
45
|
session: string;
|
|
@@ -62,6 +63,7 @@ export declare class SessionRegistry {
|
|
|
62
63
|
private readonly entries;
|
|
63
64
|
private readonly executionManagers;
|
|
64
65
|
private readonly runtimeOpening;
|
|
66
|
+
private readonly hostWorkers;
|
|
65
67
|
private readonly bindingActivation;
|
|
66
68
|
private readonly opening;
|
|
67
69
|
private readonly pathClaims;
|
|
@@ -97,6 +99,7 @@ export declare class SessionRegistry {
|
|
|
97
99
|
assertServiceAccess(id: string): void;
|
|
98
100
|
private assertSessionAccess;
|
|
99
101
|
assertNewWork(): void;
|
|
102
|
+
assertHostWork(): void;
|
|
100
103
|
failExecution(error: unknown): void;
|
|
101
104
|
get fenced(): boolean;
|
|
102
105
|
beginDrain(): void;
|
|
@@ -107,6 +110,9 @@ export declare class SessionRegistry {
|
|
|
107
110
|
activeWork(): Promise<number>;
|
|
108
111
|
create(request: RegistryOpenRequest): Promise<SessionBinding>;
|
|
109
112
|
openWorker(parent: string, worker: import('./session-lifecycle-contracts.js').SessionWorkerConfiguration): Promise<SessionBinding>;
|
|
113
|
+
openHostWorker(worker: import('./session-lifecycle-contracts.js').SessionWorkerConfiguration): Promise<SessionBinding>;
|
|
114
|
+
hostWorkSignal(): AbortSignal;
|
|
115
|
+
closeHostWorker(id: string): Promise<void>;
|
|
110
116
|
runWorker<T>(id: string, operation: () => Promise<T>): Promise<T>;
|
|
111
117
|
validateConfiguration(request: RegistryOpenRequest, resources?: SessionResources): Promise<void>;
|
|
112
118
|
/** A custom session directory becomes an owned, remembered store root only once a request using it has been validated. */
|