@plurnk/plurnk-service 1.6.1 → 1.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/SPEC.md +84 -21
- package/dist/build-info.json +1 -1
- package/dist/core/ClientInteractions.d.ts +19 -0
- package/dist/core/ClientInteractions.d.ts.map +1 -0
- package/dist/core/ClientInteractions.js +124 -0
- package/dist/core/ClientInteractions.js.map +1 -0
- package/dist/core/ClientInteractions.sql +34 -0
- package/dist/core/CoreSchemeServices.d.ts +8 -2
- package/dist/core/CoreSchemeServices.d.ts.map +1 -1
- package/dist/core/CoreSchemeServices.js +7 -1
- package/dist/core/CoreSchemeServices.js.map +1 -1
- package/dist/core/Dispatcher.d.ts +3 -1
- package/dist/core/Dispatcher.d.ts.map +1 -1
- package/dist/core/Dispatcher.js +41 -38
- package/dist/core/Dispatcher.js.map +1 -1
- package/dist/core/Engine.d.ts +15 -1
- package/dist/core/Engine.d.ts.map +1 -1
- package/dist/core/Engine.js +80 -17
- package/dist/core/Engine.js.map +1 -1
- package/dist/core/ExecutableTools.d.ts +1 -0
- package/dist/core/ExecutableTools.d.ts.map +1 -1
- package/dist/core/ExecutableTools.js +17 -9
- package/dist/core/ExecutableTools.js.map +1 -1
- package/dist/core/ExecutorRegistry.d.ts +11 -3
- package/dist/core/ExecutorRegistry.d.ts.map +1 -1
- package/dist/core/ExecutorRegistry.js +139 -16
- package/dist/core/ExecutorRegistry.js.map +1 -1
- package/dist/core/PacketBuilder.d.ts.map +1 -1
- package/dist/core/PacketBuilder.js +24 -12
- package/dist/core/PacketBuilder.js.map +1 -1
- package/dist/core/ProposalLifecycle.d.ts +3 -1
- package/dist/core/ProposalLifecycle.d.ts.map +1 -1
- package/dist/core/ProposalLifecycle.js +6 -3
- package/dist/core/ProposalLifecycle.js.map +1 -1
- package/dist/core/ResourceMutations.d.ts +2 -2
- package/dist/core/ResourceMutations.d.ts.map +1 -1
- package/dist/core/ResourceMutations.js +8 -8
- package/dist/core/ResourceMutations.js.map +1 -1
- package/dist/core/SchemeRegistry.d.ts +18 -10
- package/dist/core/SchemeRegistry.d.ts.map +1 -1
- package/dist/core/SchemeRegistry.js +194 -42
- package/dist/core/SchemeRegistry.js.map +1 -1
- package/dist/core/TurnRunner.d.ts +3 -1
- package/dist/core/TurnRunner.d.ts.map +1 -1
- package/dist/core/TurnRunner.js +8 -5
- package/dist/core/TurnRunner.js.map +1 -1
- package/dist/core/WorkspaceGate.d.ts +1 -0
- package/dist/core/WorkspaceGate.d.ts.map +1 -1
- package/dist/core/WorkspaceGate.js +39 -0
- package/dist/core/WorkspaceGate.js.map +1 -1
- package/dist/core/caps/CoreInteractionCaps.d.ts +9 -0
- package/dist/core/caps/CoreInteractionCaps.d.ts.map +1 -0
- package/dist/core/caps/CoreInteractionCaps.js +14 -0
- package/dist/core/caps/CoreInteractionCaps.js.map +1 -0
- package/dist/core/caps/SchemeCtxImpl.d.ts +2 -1
- package/dist/core/caps/SchemeCtxImpl.d.ts.map +1 -1
- package/dist/core/caps/SchemeCtxImpl.js +3 -0
- package/dist/core/caps/SchemeCtxImpl.js.map +1 -1
- package/dist/core/scheme-types.d.ts +2 -1
- package/dist/core/scheme-types.d.ts.map +1 -1
- package/dist/core/scheme-types.js.map +1 -1
- package/dist/schemes/Exec.d.ts.map +1 -1
- package/dist/schemes/Exec.js +27 -5
- package/dist/schemes/Exec.js.map +1 -1
- package/dist/server/Daemon.d.ts +13 -7
- package/dist/server/Daemon.d.ts.map +1 -1
- package/dist/server/Daemon.js +187 -21
- package/dist/server/Daemon.js.map +1 -1
- package/dist/server/DaemonModule.d.ts +31 -3
- package/dist/server/DaemonModule.d.ts.map +1 -1
- package/dist/server/client-input.d.ts +2 -0
- package/dist/server/client-input.d.ts.map +1 -1
- package/dist/server/client-input.js +12 -0
- package/dist/server/client-input.js.map +1 -1
- package/dist/server/lifecycle-recovery.sql +6 -0
- package/dist/server/loopDocs.d.ts +1 -0
- package/dist/server/loopDocs.d.ts.map +1 -1
- package/dist/server/loopDocs.js +37 -8
- package/dist/server/loopDocs.js.map +1 -1
- package/dist/server/loopDocs.sql +10 -0
- package/dist/server/workspace-capabilities.sql +19 -0
- package/migrations/001_schema.sql +31 -0
- package/package.json +34 -33
package/dist/schemes/Exec.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Exec.js","sourceRoot":"","sources":["../../src/schemes/Exec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Exec.js","sourceRoot":"","sources":["../../src/schemes/Exec.ts"],"names":[],"mappings":"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"}
|
package/dist/server/Daemon.d.ts
CHANGED
|
@@ -10,14 +10,14 @@ export type NotifyTarget = "all" | {
|
|
|
10
10
|
};
|
|
11
11
|
import { type DrainInjectionArgs, type DrainInjectionResult } from "./DrainSupervisor.ts";
|
|
12
12
|
export type { DrainLoopResult } from "./DrainSupervisor.ts";
|
|
13
|
-
import { type ClientDisplayCapabilities, type EntryReadResult, type Notice, type ProposalProjection } from "@plurnk/plurnk-contracts";
|
|
13
|
+
import { type ClientDisplayCapabilities, type ClientInteractionProjection, type ClientInteractionResolution, type EntryReadResult, type Notice, type ProposalProjection } from "@plurnk/plurnk-contracts";
|
|
14
14
|
export type { ProposalProjection as PendingProposal } from "@plurnk/plurnk-contracts";
|
|
15
15
|
import type { PlurnkStatement } from "@plurnk/plurnk-contracts";
|
|
16
16
|
import type { LogEntryWire } from "./logEntry.ts";
|
|
17
17
|
import type { ClientEnvelope } from "./envelope.ts";
|
|
18
18
|
import type { LoopFlags } from "../core/types.ts";
|
|
19
19
|
import { type SchemeResult } from "../core/results.ts";
|
|
20
|
-
import type { DaemonModule,
|
|
20
|
+
import type { DaemonModule, ModuleActionContext, ModuleActionDescriptor, ModuleActionRegistration, RuntimeRegistration, WorkspaceCapabilityProvider, WorkspaceCapabilityReplacement } from "./DaemonModule.ts";
|
|
21
21
|
export default class Daemon {
|
|
22
22
|
#private;
|
|
23
23
|
constructor({ db, schemes, mimetypes, provider, nodeModulesPath, }: {
|
|
@@ -30,6 +30,8 @@ export default class Daemon {
|
|
|
30
30
|
subscribeToEvents(handler: (workspaceId: number | null, method: string, params: unknown) => void): () => void;
|
|
31
31
|
pendingProposals(workspaceId: number): Promise<ProposalProjection[]>;
|
|
32
32
|
resolveProposal(logEntryId: number, resolution: Omit<ProposalResolution, "result">): void;
|
|
33
|
+
pendingClientInteractions(workspaceId: number): Promise<ClientInteractionProjection[]>;
|
|
34
|
+
resolveClientInteraction(interactionId: number, resolution: ClientInteractionResolution): Promise<void>;
|
|
33
35
|
runLoop(args: {
|
|
34
36
|
workspaceId: number;
|
|
35
37
|
workerId: number;
|
|
@@ -156,11 +158,15 @@ export default class Daemon {
|
|
|
156
158
|
workerName: string | null;
|
|
157
159
|
parentWorkerId: number;
|
|
158
160
|
}>;
|
|
159
|
-
|
|
161
|
+
registerRuntimes(registrations: readonly RuntimeRegistration[]): Promise<void>;
|
|
162
|
+
registerRuntime(registration: RuntimeRegistration): Promise<void>;
|
|
160
163
|
registerScheme(name: string, handler: object): Promise<void>;
|
|
161
|
-
registerModuleAction(
|
|
162
|
-
listModuleActions():
|
|
163
|
-
invokeModuleAction(name: string, params: Readonly<Record<string, unknown
|
|
164
|
+
registerModuleAction(registration: ModuleActionRegistration): void;
|
|
165
|
+
listModuleActions(): ModuleActionDescriptor[];
|
|
166
|
+
invokeModuleAction(name: string, params: Readonly<Record<string, unknown>>, context: ModuleActionContext): Promise<unknown>;
|
|
167
|
+
registerWorkspaceCapabilityProvider(namespaceOwner: string, provider: WorkspaceCapabilityProvider): void;
|
|
168
|
+
readWorkspaceModuleState(workspaceId: number, namespaceOwner: string): Promise<unknown | null>;
|
|
169
|
+
replaceWorkspaceCapabilities({ workspaceId, namespaceOwner, state, runtimes, }: WorkspaceCapabilityReplacement): Promise<void>;
|
|
164
170
|
get engine(): Engine;
|
|
165
171
|
get provider(): Provider | null;
|
|
166
172
|
get schemes(): SchemeRegistry;
|
|
@@ -184,5 +190,5 @@ export default class Daemon {
|
|
|
184
190
|
inject(args: DrainInjectionArgs): Promise<DrainInjectionResult>;
|
|
185
191
|
cancelDrain(workerId: number, reason?: string): boolean;
|
|
186
192
|
}
|
|
187
|
-
export type CoreSeam = Pick<Daemon, "subscribeToEvents" | "pendingProposals" | "resolveProposal" | "runLoop" | "cancelDrain" | "dispatchClientAction" | "ensureModelWorker" | "readLog" | "readEntry" | "look" | "listProviders" | "listWorkspaces" | "listWorkers" | "listPrompts" | "listMembers" | "listConstraints" | "workspaceDerivationStatus" | "listClientDisplayCapabilities" | "createWorkspace" | "attachWorkspace" | "createConversationWorker" | "renameWorkspace" | "constrain" | "unconstrain" | "forkWorker" | "listModuleActions" | "invokeModuleAction">;
|
|
193
|
+
export type CoreSeam = Pick<Daemon, "subscribeToEvents" | "pendingProposals" | "resolveProposal" | "pendingClientInteractions" | "resolveClientInteraction" | "runLoop" | "cancelDrain" | "dispatchClientAction" | "ensureModelWorker" | "readLog" | "readEntry" | "look" | "listProviders" | "listWorkspaces" | "listWorkers" | "listPrompts" | "listMembers" | "listConstraints" | "workspaceDerivationStatus" | "listClientDisplayCapabilities" | "createWorkspace" | "attachWorkspace" | "createConversationWorker" | "renameWorkspace" | "constrain" | "unconstrain" | "forkWorker" | "listModuleActions" | "invokeModuleAction">;
|
|
188
194
|
//# sourceMappingURL=Daemon.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Daemon.d.ts","sourceRoot":"","sources":["../../src/server/Daemon.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAEvC,OAAO,cAAc,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD,OAAO,KAAK,EAAE,QAAQ,EAAiB,MAAM,0BAA0B,CAAC;AAGxE,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAC3D,OAAwB,EACpB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EAE5B,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAGH,KAAK,yBAAyB,
|
|
1
|
+
{"version":3,"file":"Daemon.d.ts","sourceRoot":"","sources":["../../src/server/Daemon.ts"],"names":[],"mappings":"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"}
|
package/dist/server/Daemon.js
CHANGED
|
@@ -58,6 +58,7 @@ export default class Daemon {
|
|
|
58
58
|
#modules = [];
|
|
59
59
|
#moduleClosers = [];
|
|
60
60
|
#moduleActions = new Map();
|
|
61
|
+
#workspaceCapabilityProviders = new Map();
|
|
61
62
|
// {§methods-event-subscribe} — the broadcast's in-process event source. A transport
|
|
62
63
|
// module (plurnk-agui) subscribes and fans out to its OWN clients; core emits, never owns
|
|
63
64
|
// client transport or connection state.
|
|
@@ -235,6 +236,10 @@ export default class Daemon {
|
|
|
235
236
|
const { workspaceId, ...proposal } = event;
|
|
236
237
|
this.#broadcast({ workspaceId }, "loop/proposal", proposal);
|
|
237
238
|
});
|
|
239
|
+
this.#engine.onClientInteractionPending((event) => {
|
|
240
|
+
const { workspaceId, ...interaction } = event;
|
|
241
|
+
this.#broadcast({ workspaceId }, "loop/interaction", interaction);
|
|
242
|
+
});
|
|
238
243
|
}
|
|
239
244
|
// {§methods-event-subscribe}. A transport module subscribes to the daemon's in-process
|
|
240
245
|
// event source: it receives every workspace-scoped engine event as `(workspaceId, method, params)`
|
|
@@ -258,6 +263,15 @@ export default class Daemon {
|
|
|
258
263
|
const checkedResolution = ClientInput.assertProposalResolution("resolveProposal", resolution);
|
|
259
264
|
this.#engine.resolveProposal(checkedLogEntryId, checkedResolution);
|
|
260
265
|
}
|
|
266
|
+
async pendingClientInteractions(workspaceId) {
|
|
267
|
+
const checkedWorkspaceId = ClientInput.assertId("pendingClientInteractions", "workspaceId", workspaceId);
|
|
268
|
+
return this.#engine.pendingClientInteractions(checkedWorkspaceId);
|
|
269
|
+
}
|
|
270
|
+
async resolveClientInteraction(interactionId, resolution) {
|
|
271
|
+
const checkedInteractionId = ClientInput.assertId("resolveClientInteraction", "interactionId", interactionId);
|
|
272
|
+
const checkedResolution = ClientInput.assertClientInteractionResolution("resolveClientInteraction", resolution);
|
|
273
|
+
await this.#engine.resolveClientInteraction(checkedInteractionId, checkedResolution);
|
|
274
|
+
}
|
|
261
275
|
// {§methods-loop-run} — drive/steer a loop. The module supplies only workspace/worker/prompt;
|
|
262
276
|
// the provider and the law-file system prompt are core's and stay inside. Returns immediately — the
|
|
263
277
|
// loop runs async and its outcome arrives on the event source (loop/terminated). `cancelDrain` (public)
|
|
@@ -699,6 +713,9 @@ export default class Daemon {
|
|
|
699
713
|
}
|
|
700
714
|
if (constraints.length > 0)
|
|
701
715
|
await GitMembership.resolveGitMembership(this.#db, envelope.workspaceId, undefined);
|
|
716
|
+
for (const provider of this.#workspaceCapabilityProviders.values()) {
|
|
717
|
+
await provider.hydrate(envelope.workspaceId);
|
|
718
|
+
}
|
|
702
719
|
await LoopDocs.materialize(this.#engine, this.#db, envelope.workspaceId);
|
|
703
720
|
void this.#engine.warmWorkspaceDerivations(envelope.workspaceId).catch(() => { });
|
|
704
721
|
this.#broadcast("all", "workspace/created", { id: envelope.workspaceId, name: envelope.workspaceName, projectRoot: envelope.projectRoot });
|
|
@@ -928,26 +945,18 @@ export default class Daemon {
|
|
|
928
945
|
const branch = await this.#db.envelope_get_worker_by_id.get({ id: branchWorkerId });
|
|
929
946
|
return { workerId: branchWorkerId, workerName: branch?.name ?? null, parentWorkerId: workerId };
|
|
930
947
|
}
|
|
931
|
-
async
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
}
|
|
935
|
-
const runtime = RuntimeDeclaration.assert(decl, namespaceOwner);
|
|
936
|
-
this.#engine.registerRuntime(runtime.name, {
|
|
937
|
-
executor,
|
|
938
|
-
namespaceOwner: { kind: "module", name: namespaceOwner },
|
|
939
|
-
glyph: runtime.glyph ?? "",
|
|
940
|
-
invocation: runtime.invocation,
|
|
941
|
-
documentation: runtime.documentation ?? "",
|
|
942
|
-
available: availability.available,
|
|
943
|
-
detail: availability.detail,
|
|
944
|
-
}, scheme);
|
|
948
|
+
async registerRuntimes(registrations) {
|
|
949
|
+
const normalized = registrations.map((registration) => this.#normalizeRuntime(registration));
|
|
950
|
+
this.#engine.registerRuntimes(normalized);
|
|
945
951
|
if (this.#capabilitiesPublished) {
|
|
946
952
|
for (const workspace of await Envelope.listWorkspaces(this.#db)) {
|
|
947
953
|
await LoopDocs.materialize(this.#engine, this.#db, workspace.id);
|
|
948
954
|
}
|
|
949
955
|
}
|
|
950
956
|
}
|
|
957
|
+
async registerRuntime(registration) {
|
|
958
|
+
await this.registerRuntimes([registration]);
|
|
959
|
+
}
|
|
951
960
|
async registerScheme(name, handler) {
|
|
952
961
|
this.#schemes.register(name, handler);
|
|
953
962
|
if (this.#capabilitiesPublished) {
|
|
@@ -957,21 +966,172 @@ export default class Daemon {
|
|
|
957
966
|
}
|
|
958
967
|
}
|
|
959
968
|
}
|
|
960
|
-
|
|
969
|
+
#normalizeRuntime({ namespaceOwner, decl, executor, availability, scheme }) {
|
|
970
|
+
if (typeof namespaceOwner !== "string" || namespaceOwner.trim().length === 0) {
|
|
971
|
+
throw new Error("runtime registration namespaceOwner must be a non-empty string");
|
|
972
|
+
}
|
|
973
|
+
const runtime = RuntimeDeclaration.assert(decl, namespaceOwner);
|
|
974
|
+
return {
|
|
975
|
+
tag: runtime.name,
|
|
976
|
+
entry: {
|
|
977
|
+
executor,
|
|
978
|
+
namespaceOwner: { kind: "module", name: namespaceOwner },
|
|
979
|
+
glyph: runtime.glyph ?? "",
|
|
980
|
+
invocation: runtime.invocation,
|
|
981
|
+
documentation: runtime.documentation ?? "",
|
|
982
|
+
available: availability.available,
|
|
983
|
+
detail: availability.detail,
|
|
984
|
+
},
|
|
985
|
+
scheme,
|
|
986
|
+
};
|
|
987
|
+
}
|
|
988
|
+
registerModuleAction(registration) {
|
|
989
|
+
const { name, scope, handler } = registration;
|
|
961
990
|
if (name.length === 0)
|
|
962
991
|
throw new Error("registerModuleAction: action name must not be empty");
|
|
992
|
+
if (scope !== "worldless" && scope !== "workspace") {
|
|
993
|
+
throw new Error(`module action '${name}' has invalid scope '${String(scope)}'`);
|
|
994
|
+
}
|
|
995
|
+
if (typeof handler !== "function")
|
|
996
|
+
throw new Error(`module action '${name}' has no handler`);
|
|
963
997
|
if (this.#moduleActions.has(name))
|
|
964
998
|
throw new Error(`module action '${name}' is already registered`);
|
|
965
|
-
this.#moduleActions.set(name,
|
|
999
|
+
this.#moduleActions.set(name, registration);
|
|
966
1000
|
}
|
|
967
1001
|
listModuleActions() {
|
|
968
|
-
return [...this.#moduleActions.
|
|
1002
|
+
return [...this.#moduleActions.values()]
|
|
1003
|
+
.map(({ name, scope }) => ({ name, scope }))
|
|
1004
|
+
.toSorted((left, right) => left.name.localeCompare(right.name));
|
|
969
1005
|
}
|
|
970
|
-
async invokeModuleAction(name, params) {
|
|
971
|
-
const
|
|
972
|
-
if (
|
|
1006
|
+
async invokeModuleAction(name, params, context) {
|
|
1007
|
+
const registration = this.#moduleActions.get(name);
|
|
1008
|
+
if (registration === undefined)
|
|
973
1009
|
throw new Error(`module action '${name}' is not registered`);
|
|
974
|
-
|
|
1010
|
+
if (registration.scope !== context.scope) {
|
|
1011
|
+
throw new Error(`module action '${name}' requires ${registration.scope} context, not ${context.scope}`);
|
|
1012
|
+
}
|
|
1013
|
+
if (context.scope === "workspace") {
|
|
1014
|
+
ClientInput.assertId(`module action '${name}'`, "workspaceId", context.workspaceId);
|
|
1015
|
+
}
|
|
1016
|
+
return registration.handler(params, context);
|
|
1017
|
+
}
|
|
1018
|
+
registerWorkspaceCapabilityProvider(namespaceOwner, provider) {
|
|
1019
|
+
if (namespaceOwner.trim().length === 0) {
|
|
1020
|
+
throw new Error("workspace capability provider requires a non-empty namespace owner");
|
|
1021
|
+
}
|
|
1022
|
+
if (this.#workspaceCapabilityProviders.has(namespaceOwner)) {
|
|
1023
|
+
throw new Error(`workspace capability provider '${namespaceOwner}' is already registered`);
|
|
1024
|
+
}
|
|
1025
|
+
this.#workspaceCapabilityProviders.set(namespaceOwner, provider);
|
|
1026
|
+
}
|
|
1027
|
+
async readWorkspaceModuleState(workspaceId, namespaceOwner) {
|
|
1028
|
+
const checkedWorkspaceId = ClientInput.assertId("workspace module state", "workspaceId", workspaceId);
|
|
1029
|
+
if (namespaceOwner.trim().length === 0) {
|
|
1030
|
+
throw new Error("workspace module state requires a non-empty namespace owner");
|
|
1031
|
+
}
|
|
1032
|
+
const row = await this.#db.workspace_module_state_get.get({
|
|
1033
|
+
workspace_id: checkedWorkspaceId,
|
|
1034
|
+
namespace_owner: namespaceOwner,
|
|
1035
|
+
});
|
|
1036
|
+
return row === undefined ? null : JSON.parse(row.state);
|
|
1037
|
+
}
|
|
1038
|
+
async replaceWorkspaceCapabilities({ workspaceId, namespaceOwner, state, runtimes, }) {
|
|
1039
|
+
const checkedWorkspaceId = ClientInput.assertId("workspace capability replacement", "workspaceId", workspaceId);
|
|
1040
|
+
if (namespaceOwner.trim().length === 0) {
|
|
1041
|
+
throw new Error("workspace capability replacement requires a non-empty namespace owner");
|
|
1042
|
+
}
|
|
1043
|
+
const workspace = await this.#db.envelope_get_workspace.get({ id: checkedWorkspaceId });
|
|
1044
|
+
if (workspace === undefined) {
|
|
1045
|
+
throw daemonFailure("daemon:workspace-capability", "workspace-not-found", 404, `Workspace ${checkedWorkspaceId} does not exist.`, { workspaceId: checkedWorkspaceId, retryable: false });
|
|
1046
|
+
}
|
|
1047
|
+
const encoded = state === null ? null : JSON.stringify(state);
|
|
1048
|
+
if (state !== null && encoded === undefined) {
|
|
1049
|
+
throw daemonFailure("daemon:workspace-capability", "state-not-json", 400, "Workspace module state is not JSON-serializable.", { namespaceOwner, retryable: false });
|
|
1050
|
+
}
|
|
1051
|
+
if (encoded !== null)
|
|
1052
|
+
JSON.parse(encoded);
|
|
1053
|
+
const normalized = runtimes.map((registration) => {
|
|
1054
|
+
if (registration.namespaceOwner !== namespaceOwner) {
|
|
1055
|
+
throw new Error(`workspace runtime owner '${registration.namespaceOwner}' does not match '${namespaceOwner}'`);
|
|
1056
|
+
}
|
|
1057
|
+
return this.#normalizeRuntime(registration);
|
|
1058
|
+
});
|
|
1059
|
+
const gate = this.#workspaceGate.tryExclusive(checkedWorkspaceId);
|
|
1060
|
+
if (gate === null) {
|
|
1061
|
+
throw daemonFailure("daemon:workspace-capability", "workspace-busy", 409, `Workspace ${checkedWorkspaceId} is running an operation or another capability change.`, {
|
|
1062
|
+
workspaceId: checkedWorkspaceId,
|
|
1063
|
+
namespaceOwner,
|
|
1064
|
+
recovery: "Settle the current operation and retry the capability change.",
|
|
1065
|
+
retryable: true,
|
|
1066
|
+
});
|
|
1067
|
+
}
|
|
1068
|
+
await gate.acquired;
|
|
1069
|
+
const prior = await this.#db.workspace_module_state_get.get({
|
|
1070
|
+
workspace_id: checkedWorkspaceId,
|
|
1071
|
+
namespace_owner: namespaceOwner,
|
|
1072
|
+
});
|
|
1073
|
+
let rollbackRuntimes;
|
|
1074
|
+
let stateChanged = false;
|
|
1075
|
+
try {
|
|
1076
|
+
const commitRuntimes = await this.#engine.prepareWorkspaceRuntimes(checkedWorkspaceId, namespaceOwner, normalized);
|
|
1077
|
+
if (encoded === null) {
|
|
1078
|
+
await this.#db.workspace_module_state_delete.run({
|
|
1079
|
+
workspace_id: checkedWorkspaceId,
|
|
1080
|
+
namespace_owner: namespaceOwner,
|
|
1081
|
+
});
|
|
1082
|
+
}
|
|
1083
|
+
else {
|
|
1084
|
+
await this.#db.workspace_module_state_put.run({
|
|
1085
|
+
workspace_id: checkedWorkspaceId,
|
|
1086
|
+
namespace_owner: namespaceOwner,
|
|
1087
|
+
state: encoded,
|
|
1088
|
+
});
|
|
1089
|
+
}
|
|
1090
|
+
stateChanged = true;
|
|
1091
|
+
rollbackRuntimes = commitRuntimes();
|
|
1092
|
+
if (this.#capabilitiesPublished) {
|
|
1093
|
+
await LoopDocs.materialize(this.#engine, this.#db, checkedWorkspaceId);
|
|
1094
|
+
}
|
|
1095
|
+
}
|
|
1096
|
+
catch (cause) {
|
|
1097
|
+
rollbackRuntimes?.();
|
|
1098
|
+
const rollbackErrors = [];
|
|
1099
|
+
if (stateChanged) {
|
|
1100
|
+
try {
|
|
1101
|
+
if (prior === undefined) {
|
|
1102
|
+
await this.#db.workspace_module_state_delete.run({
|
|
1103
|
+
workspace_id: checkedWorkspaceId,
|
|
1104
|
+
namespace_owner: namespaceOwner,
|
|
1105
|
+
});
|
|
1106
|
+
}
|
|
1107
|
+
else {
|
|
1108
|
+
await this.#db.workspace_module_state_put.run({
|
|
1109
|
+
workspace_id: checkedWorkspaceId,
|
|
1110
|
+
namespace_owner: namespaceOwner,
|
|
1111
|
+
state: prior.state,
|
|
1112
|
+
});
|
|
1113
|
+
}
|
|
1114
|
+
}
|
|
1115
|
+
catch (rollbackCause) {
|
|
1116
|
+
rollbackErrors.push(rollbackCause);
|
|
1117
|
+
}
|
|
1118
|
+
if (this.#capabilitiesPublished) {
|
|
1119
|
+
try {
|
|
1120
|
+
await LoopDocs.materialize(this.#engine, this.#db, checkedWorkspaceId);
|
|
1121
|
+
}
|
|
1122
|
+
catch (rollbackCause) {
|
|
1123
|
+
rollbackErrors.push(rollbackCause);
|
|
1124
|
+
}
|
|
1125
|
+
}
|
|
1126
|
+
}
|
|
1127
|
+
if (rollbackErrors.length > 0) {
|
|
1128
|
+
throw new AggregateError([cause, ...rollbackErrors], "Workspace capability replacement and rollback failed");
|
|
1129
|
+
}
|
|
1130
|
+
throw cause;
|
|
1131
|
+
}
|
|
1132
|
+
finally {
|
|
1133
|
+
gate.release();
|
|
1134
|
+
}
|
|
975
1135
|
}
|
|
976
1136
|
get engine() { return this.#engine; }
|
|
977
1137
|
get provider() { return this.#provider; }
|
|
@@ -1011,6 +1171,11 @@ export default class Daemon {
|
|
|
1011
1171
|
this.#moduleClosers.push(module);
|
|
1012
1172
|
await module.setup?.(setupSeam);
|
|
1013
1173
|
}
|
|
1174
|
+
for (const workspace of await Envelope.listWorkspaces(this.#db)) {
|
|
1175
|
+
for (const provider of this.#workspaceCapabilityProviders.values()) {
|
|
1176
|
+
await provider.hydrate(workspace.id);
|
|
1177
|
+
}
|
|
1178
|
+
}
|
|
1014
1179
|
await this.#schemes.ready();
|
|
1015
1180
|
// Reconcile the kernel-published documentation surface once per existing workspace.
|
|
1016
1181
|
// Installed capabilities and operator configuration are now fully known; model loops
|
|
@@ -1034,6 +1199,7 @@ export default class Daemon {
|
|
|
1034
1199
|
await this.#db.recovery_settle_open_provider_requests.run({});
|
|
1035
1200
|
await this.#db.recovery_fail_open_model_calls.run({});
|
|
1036
1201
|
await this.#db.recovery_fail_ownerless_proposals.run({});
|
|
1202
|
+
await this.#db.recovery_remove_ownerless_client_interactions.run({});
|
|
1037
1203
|
await this.#db.recovery_error_orphan_subscription_channels.run({});
|
|
1038
1204
|
await this.#db.recovery_fail_orphan_subscriptions.run({});
|
|
1039
1205
|
await this.#db.recovery_resume_unblocked_parks.run({});
|