@cat-factory/server 0.53.0 → 0.55.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/app.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAChC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AA8D3C;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAsF5E"}
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAChC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AA+D3C;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAwF5E"}
package/dist/app.js CHANGED
@@ -7,6 +7,7 @@ import { boardController } from './modules/board/BoardController.js';
7
7
  import { bootstrapController } from './modules/bootstrap/BootstrapController.js';
8
8
  import { documentSourceController } from './modules/documents/DocumentSourceController.js';
9
9
  import { environmentController } from './modules/environments/EnvironmentController.js';
10
+ import { environmentUserHandlerController } from './modules/environments/EnvironmentUserHandlerController.js';
10
11
  import { eventsController } from './modules/events/EventsController.js';
11
12
  import { executionController } from './modules/execution/ExecutionController.js';
12
13
  import { fragmentLibraryController } from './modules/fragmentLibrary/FragmentLibraryController.js';
@@ -86,6 +87,8 @@ export function registerCoreControllers(app) {
86
87
  app.route('/', accountController());
87
88
  app.route('/', personalSubscriptionController());
88
89
  app.route('/', localModelEndpointController());
90
+ // Per-user infra handler overrides (local mode); 503s where the service is unwired.
91
+ app.route('/', environmentUserHandlerController());
89
92
  app.route('/', userSecretController());
90
93
  app.route('/', openRouterCatalogController());
91
94
  app.route('/', userApiKeyController());
package/dist/app.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,12 @@ export interface ServerContainer extends Core {
24
24
  consensusSessionRepository?: ConsensusSessionRepository;
25
25
  /** Per-facade runtime seams (real-time delivery, …) the shared controllers use. */
26
26
  gateways: RuntimeGateways;
27
+ /**
28
+ * Facade-owned resources to release on graceful shutdown (e.g. the local mothership
29
+ * boot's `node:sqlite` credential-store handle). The boot path invokes it from its
30
+ * SIGTERM/SIGINT handler; absent on facades that own no extra disposable resource.
31
+ */
32
+ onShutdown?: () => void | Promise<void>;
27
33
  /**
28
34
  * The app-owned backend registries (kind → provider), built by the facade via
29
35
  * `createBackendRegistries()`. The workspace snapshot reads `.labelled()` off these for
@@ -1 +1 @@
1
- {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/http/env.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACnB,0BAA0B,EAC1B,0BAA0B,EAC1B,qBAAqB,EACrB,mBAAmB,EACnB,cAAc,EACf,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EACV,aAAa,EACb,0BAA0B,EAC1B,yBAAyB,EACzB,oBAAoB,EACpB,wBAAwB,EACxB,2BAA2B,EAC3B,2BAA2B,EAC3B,qBAAqB,EACrB,iBAAiB,EAClB,MAAM,2BAA2B,CAAA;AAClC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAA;AACtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAA;AAC5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAQ7D,MAAM,WAAW,eAAgB,SAAQ,IAAI;IAC3C,MAAM,EAAE,SAAS,CAAA;IACjB,8EAA8E;IAC9E,kBAAkB,EAAE,kBAAkB,CAAA;IACtC;;;;OAIG;IACH,mBAAmB,EAAE,mBAAmB,CAAA;IACxC;;;;OAIG;IACH,0BAA0B,CAAC,EAAE,0BAA0B,CAAA;IACvD,mFAAmF;IACnF,QAAQ,EAAE,eAAe,CAAA;IACzB;;;;;OAKG;IACH,0BAA0B,EAAE,0BAA0B,CAAA;IACtD,qBAAqB,EAAE,qBAAqB,CAAA;IAC5C;;;;;;;OAOG;IACH,qBAAqB,CAAC,EAAE,qBAAqB,CAAA;IAC7C;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC;;;OAGG;IACH,aAAa,CAAC,EAAE,2BAA2B,CAAA;IAC3C;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,2BAA2B,CAAA;IACnD;;;;;OAKG;IACH,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB;;;;;OAKG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAA;IACjC;;;;;OAKG;IACH,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IAC5D;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,yBAAyB,CAAA;IAC/C;;;;OAIG;IACH,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,wBAAwB,CAAA;IAC5C;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE;QAAE,OAAO,EAAE,oBAAoB,CAAA;KAAE,CAAA;IACjD;;;;;;;OAOG;IACH,0BAA0B,CAAC,EAAE,0BAA0B,CAAA;IACvD;;;;;OAKG;IACH,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,mBAAmB,CAAA;IACjC;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,mBAAmB,CAAA;CACnC;AAED,4FAA4F;AAC5F,MAAM,MAAM,MAAM,GAAG;IACnB,SAAS,EAAE;QACT,SAAS,EAAE,eAAe,CAAA;QAC1B,yEAAyE;QACzE,IAAI,CAAC,EAAE,cAAc,CAAA;KACtB,CAAA;CACF,CAAA"}
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/http/env.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACnB,0BAA0B,EAC1B,0BAA0B,EAC1B,qBAAqB,EACrB,mBAAmB,EACnB,cAAc,EACf,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EACV,aAAa,EACb,0BAA0B,EAC1B,yBAAyB,EACzB,oBAAoB,EACpB,wBAAwB,EACxB,2BAA2B,EAC3B,2BAA2B,EAC3B,qBAAqB,EACrB,iBAAiB,EAClB,MAAM,2BAA2B,CAAA;AAClC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAA;AACtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAA;AAC5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAQ7D,MAAM,WAAW,eAAgB,SAAQ,IAAI;IAC3C,MAAM,EAAE,SAAS,CAAA;IACjB,8EAA8E;IAC9E,kBAAkB,EAAE,kBAAkB,CAAA;IACtC;;;;OAIG;IACH,mBAAmB,EAAE,mBAAmB,CAAA;IACxC;;;;OAIG;IACH,0BAA0B,CAAC,EAAE,0BAA0B,CAAA;IACvD,mFAAmF;IACnF,QAAQ,EAAE,eAAe,CAAA;IACzB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACvC;;;;;OAKG;IACH,0BAA0B,EAAE,0BAA0B,CAAA;IACtD,qBAAqB,EAAE,qBAAqB,CAAA;IAC5C;;;;;;;OAOG;IACH,qBAAqB,CAAC,EAAE,qBAAqB,CAAA;IAC7C;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC;;;OAGG;IACH,aAAa,CAAC,EAAE,2BAA2B,CAAA;IAC3C;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,2BAA2B,CAAA;IACnD;;;;;OAKG;IACH,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB;;;;;OAKG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAA;IACjC;;;;;OAKG;IACH,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IAC5D;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,yBAAyB,CAAA;IAC/C;;;;OAIG;IACH,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,wBAAwB,CAAA;IAC5C;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE;QAAE,OAAO,EAAE,oBAAoB,CAAA;KAAE,CAAA;IACjD;;;;;;;OAOG;IACH,0BAA0B,CAAC,EAAE,0BAA0B,CAAA;IACvD;;;;;OAKG;IACH,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,mBAAmB,CAAA;IACjC;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,mBAAmB,CAAA;CACnC;AAED,4FAA4F;AAC5F,MAAM,MAAM,MAAM,GAAG;IACnB,SAAS,EAAE;QACT,SAAS,EAAE,eAAe,CAAA;QAC1B,yEAAyE;QACzE,IAAI,CAAC,EAAE,cAAc,CAAA;KACtB,CAAA;CACF,CAAA"}
package/dist/index.d.ts CHANGED
@@ -54,6 +54,6 @@ export * from './persistence/mappers.js';
54
54
  export * from './persistence/sandbox-mappers.js';
55
55
  export * from './persistence/decode.js';
56
56
  export { type PersistenceRpcRequest, type PersistenceRpcResponse, type PersistenceRpcError, type PersistenceErrorCode, type PersistenceRegistry, type PersistenceMethodTable, type MethodSpec, type ScopeRule, type DispatchOptions, type DispatchResult, PILOT_PERSISTENCE_METHODS, dispatchPersistenceCall, persistenceErrorToThrowable, statusForPersistenceError, } from './persistence/rpc.js';
57
- export { type PersistenceRpcClient, type RemoteRepositories, createRemoteRepositories, HttpPersistenceRpcClient, } from './persistence/remoteRepositories.js';
57
+ export { type PersistenceRpcClient, createRemoteRepositoryRegistry, HttpPersistenceRpcClient, } from './persistence/remoteRepositories.js';
58
58
  export { makeResolveBinaryArtifactStore, type MakeResolveBinaryArtifactStoreDeps, type BuildBlobBackend, type BuildBlobBackendOptions, type ContentStorageSettingsResolver, } from './persistence/binaryArtifactStore.js';
59
59
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -77,9 +77,9 @@ export * from './persistence/decode.js';
77
77
  // Mothership-mode persistence RPC: the wire protocol + method table + server dispatcher, and
78
78
  // the client-side remote-repository proxy. A facade attaches its repository registry as
79
79
  // `ServerContainer.repositories` to act as a mothership; a mothership-mode local node builds
80
- // `createRemoteRepositories` instead of a database-backed repo set.
80
+ // `createRemoteRepositoryRegistry` instead of a database-backed repo set.
81
81
  export { PILOT_PERSISTENCE_METHODS, dispatchPersistenceCall, persistenceErrorToThrowable, statusForPersistenceError, } from './persistence/rpc.js';
82
- export { createRemoteRepositories, HttpPersistenceRpcClient, } from './persistence/remoteRepositories.js';
82
+ export { createRemoteRepositoryRegistry, HttpPersistenceRpcClient, } from './persistence/remoteRepositories.js';
83
83
  // Per-account binary-artifact store resolution (the blob backend is configured per-account
84
84
  // in the UI; each facade supplies its own backend factory + default).
85
85
  export { makeResolveBinaryArtifactStore, } from './persistence/binaryArtifactStore.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"EnvironmentController.d.ts","sourceRoot":"","sources":["../../../src/modules/environments/EnvironmentController.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAG3B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAiB/C;;;;;GAKG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAAC,MAAM,CAAC,CAuIpD"}
1
+ {"version":3,"file":"EnvironmentController.d.ts","sourceRoot":"","sources":["../../../src/modules/environments/EnvironmentController.ts"],"names":[],"mappings":"AAwBA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAG3B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAiB/C;;;;;GAKG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAAC,MAAM,CAAC,CAgNpD"}
@@ -1,5 +1,6 @@
1
- import { bootstrapEnvironmentRepoContract, describeEnvironmentProviderContract, getEnvironmentAccessContract, getEnvironmentConnectionContract, getEnvironmentContract, listEnvironmentsContract, provisionEnvironmentContract, registerEnvironmentProviderContract, teardownEnvironmentContract, testEnvironmentConnectionContract, unregisterEnvironmentProviderContract, updateEnvironmentSecretsContract, validateEnvironmentRepoContract, } from '@cat-factory/contracts';
1
+ import { bootstrapEnvironmentRepoContract, describeEnvironmentProviderContract, getEnvironmentAccessContract, getEnvironmentConnectionContract, getEnvironmentContract, listEnvironmentHandlersContract, listEnvironmentsContract, provisionEnvironmentContract, provisionTypeSchema, registerEnvironmentHandlerContract, registerEnvironmentProviderContract, removeCustomManifestTypeContract, teardownEnvironmentContract, testEnvironmentConnectionContract, unregisterEnvironmentHandlerContract, unregisterEnvironmentProviderContract, updateEnvironmentHandlerSecretsContract, updateEnvironmentSecretsContract, upsertCustomManifestTypeContract, validateEnvironmentRepoContract, } from '@cat-factory/contracts';
2
2
  import { buildHonoRoute } from '@toad-contracts/hono';
3
+ import * as v from 'valibot';
3
4
  import { Hono } from 'hono';
4
5
  import { param } from '../../http/params.js';
5
6
  /** Resolve the environment module or send a 503, returning null when unconfigured. */
@@ -80,6 +81,62 @@ export function environmentController() {
80
81
  return unavailable(c);
81
82
  return c.json(await env.connectionService.bootstrapRepo(param(c, 'workspaceId'), c.req.valid('json')), 200);
82
83
  });
84
+ // ---- per-type infra handlers (the workspace "how") + custom-type catalog ----
85
+ // The batched bundle the infra configurator loads: every registered handler + the
86
+ // custom-manifest-type catalog (registered code types merged with workspace rows).
87
+ buildHonoRoute(app, listEnvironmentHandlersContract, async (c) => {
88
+ const env = requireEnvironments(c);
89
+ if (!env)
90
+ return unavailable(c);
91
+ const ws = param(c, 'workspaceId');
92
+ const [handlers, customTypes] = await Promise.all([
93
+ env.connectionService.listHandlers(ws),
94
+ env.connectionService.listCustomTypes(ws),
95
+ ]);
96
+ return c.json({ handlers, customTypes }, 200);
97
+ });
98
+ buildHonoRoute(app, registerEnvironmentHandlerContract, async (c) => {
99
+ const env = requireEnvironments(c);
100
+ if (!env)
101
+ return unavailable(c);
102
+ const body = c.req.valid('json');
103
+ const view = await env.connectionService.registerHandler(param(c, 'workspaceId'), body);
104
+ return c.json(view, 201);
105
+ });
106
+ buildHonoRoute(app, updateEnvironmentHandlerSecretsContract, async (c) => {
107
+ const env = requireEnvironments(c);
108
+ if (!env)
109
+ return unavailable(c);
110
+ const provisionType = v.parse(provisionTypeSchema, c.req.valid('param').provisionType);
111
+ const manifestId = c.req.valid('query').manifestId ?? null;
112
+ const view = await env.connectionService.updateHandlerSecrets(param(c, 'workspaceId'), provisionType, manifestId, c.req.valid('json').secrets);
113
+ return c.json(view, 200);
114
+ });
115
+ buildHonoRoute(app, unregisterEnvironmentHandlerContract, async (c) => {
116
+ const env = requireEnvironments(c);
117
+ if (!env)
118
+ return unavailable(c);
119
+ const provisionType = v.parse(provisionTypeSchema, c.req.valid('param').provisionType);
120
+ const manifestId = c.req.valid('query').manifestId ?? null;
121
+ await env.connectionService.unregisterHandler(param(c, 'workspaceId'), provisionType, manifestId);
122
+ return c.body(null, 204);
123
+ });
124
+ // Workspace-defined custom-manifest-type catalog CRUD (the UI-editable half of the
125
+ // `custom` provision-type catalog; the registered code providers are the other half).
126
+ buildHonoRoute(app, upsertCustomManifestTypeContract, async (c) => {
127
+ const env = requireEnvironments(c);
128
+ if (!env)
129
+ return unavailable(c);
130
+ const type = await env.connectionService.upsertCustomType(param(c, 'workspaceId'), c.req.valid('param').manifestId, c.req.valid('json'));
131
+ return c.json(type, 200);
132
+ });
133
+ buildHonoRoute(app, removeCustomManifestTypeContract, async (c) => {
134
+ const env = requireEnvironments(c);
135
+ if (!env)
136
+ return unavailable(c);
137
+ await env.connectionService.removeCustomType(param(c, 'workspaceId'), c.req.valid('param').manifestId);
138
+ return c.body(null, 204);
139
+ });
83
140
  // ---- environment registry ----------------------------------------------
84
141
  buildHonoRoute(app, listEnvironmentsContract, async (c) => {
85
142
  const env = requireEnvironments(c);
@@ -1 +1 @@
1
- {"version":3,"file":"EnvironmentController.js","sourceRoot":"","sources":["../../../src/modules/environments/EnvironmentController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EnvironmentController.js","sourceRoot":"","sources":["../../../src/modules/environments/EnvironmentController.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { Hono } from 'hono';
2
+ import type { AppEnv } from '../../http/env.js';
3
+ export declare function environmentUserHandlerController(): Hono<AppEnv>;
4
+ //# sourceMappingURL=EnvironmentUserHandlerController.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnvironmentUserHandlerController.d.ts","sourceRoot":"","sources":["../../../src/modules/environments/EnvironmentUserHandlerController.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAE3B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAsB/C,wBAAgB,gCAAgC,IAAI,IAAI,CAAC,MAAM,CAAC,CAwC/D"}
@@ -0,0 +1,57 @@
1
+ import { listEnvironmentUserHandlersContract, provisionTypeSchema, removeEnvironmentUserHandlerContract, upsertEnvironmentUserHandlerContract, } from '@cat-factory/contracts';
2
+ import { buildHonoRoute } from '@toad-contracts/hono';
3
+ import * as v from 'valibot';
4
+ import { Hono } from 'hono';
5
+ // Per-USER infra handler overrides (local mode). A developer points a provision type at
6
+ // their OWN engine (a personal Docker / k3s), and that override wins for the runs they
7
+ // initiate. Mounted at the root (no `/workspaces` prefix) and scoped to the signed-in user,
8
+ // like local model runners + personal subscriptions. The override SERVICE is wired ONLY by
9
+ // the local facade (it wires `environmentUserHandlerRepository`), so these endpoints 503 on
10
+ // the Worker/Node facades — the local-only behaviour is enforced by container wiring, not a
11
+ // runtime branch here. See docs/initiatives/per-service-provision-types.md.
12
+ const signInRequired = (c) => c.json({ error: { code: 'unauthorized', message: 'Sign in to manage environment handler overrides' } }, 401);
13
+ const unavailable = (c) => c.json({ error: { code: 'unavailable', message: 'Per-user environment handlers are not configured' } }, 503);
14
+ export function environmentUserHandlerController() {
15
+ const app = new Hono();
16
+ buildHonoRoute(app, listEnvironmentUserHandlersContract, async (c) => {
17
+ const svc = c.get('container').environments?.userHandlerService;
18
+ if (!svc)
19
+ return unavailable(c);
20
+ const user = c.get('user');
21
+ if (!user)
22
+ return signInRequired(c);
23
+ const handlers = await svc.list(user.id, c.req.valid('param').workspaceId);
24
+ return c.json({ handlers }, 200);
25
+ });
26
+ buildHonoRoute(app, upsertEnvironmentUserHandlerContract, async (c) => {
27
+ const svc = c.get('container').environments?.userHandlerService;
28
+ if (!svc)
29
+ return unavailable(c);
30
+ const user = c.get('user');
31
+ if (!user)
32
+ return signInRequired(c);
33
+ const { workspaceId, provisionType: rawType } = c.req.valid('param');
34
+ // The provision type comes from the path; the body's value is overridden by it.
35
+ const provisionType = v.parse(provisionTypeSchema, rawType);
36
+ const view = await svc.upsert(user.id, workspaceId, {
37
+ ...c.req.valid('json'),
38
+ provisionType,
39
+ });
40
+ return c.json(view, 201);
41
+ });
42
+ buildHonoRoute(app, removeEnvironmentUserHandlerContract, async (c) => {
43
+ const svc = c.get('container').environments?.userHandlerService;
44
+ if (!svc)
45
+ return unavailable(c);
46
+ const user = c.get('user');
47
+ if (!user)
48
+ return signInRequired(c);
49
+ const { workspaceId, provisionType: rawType } = c.req.valid('param');
50
+ const provisionType = v.parse(provisionTypeSchema, rawType);
51
+ const manifestId = c.req.valid('query').manifestId ?? null;
52
+ await svc.remove(user.id, workspaceId, provisionType, manifestId);
53
+ return c.body(null, 204);
54
+ });
55
+ return app;
56
+ }
57
+ //# sourceMappingURL=EnvironmentUserHandlerController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnvironmentUserHandlerController.js","sourceRoot":"","sources":["../../../src/modules/environments/EnvironmentUserHandlerController.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mCAAmC,EACnC,mBAAmB,EACnB,oCAAoC,EACpC,oCAAoC,GACrC,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAI3B,wFAAwF;AACxF,uFAAuF;AACvF,4FAA4F;AAC5F,2FAA2F;AAC3F,4FAA4F;AAC5F,4FAA4F;AAC5F,4EAA4E;AAE5E,MAAM,cAAc,GAAG,CAAmB,CAAa,EAAE,EAAE,CACzD,CAAC,CAAC,IAAI,CACJ,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,iDAAiD,EAAE,EAAE,EAC/F,GAAG,CACJ,CAAA;AAEH,MAAM,WAAW,GAAG,CAAmB,CAAa,EAAE,EAAE,CACtD,CAAC,CAAC,IAAI,CACJ,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,kDAAkD,EAAE,EAAE,EAC/F,GAAG,CACJ,CAAA;AAEH,MAAM,UAAU,gCAAgC;IAC9C,MAAM,GAAG,GAAG,IAAI,IAAI,EAAU,CAAA;IAE9B,cAAc,CAAC,GAAG,EAAE,mCAAmC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACnE,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,YAAY,EAAE,kBAAkB,CAAA;QAC/D,IAAI,CAAC,GAAG;YAAE,OAAO,WAAW,CAAC,CAAC,CAAC,CAAA;QAC/B,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAC1B,IAAI,CAAC,IAAI;YAAE,OAAO,cAAc,CAAC,CAAC,CAAC,CAAA;QACnC,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,CAAA;QAC1E,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAA;IAClC,CAAC,CAAC,CAAA;IAEF,cAAc,CAAC,GAAG,EAAE,oCAAoC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACpE,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,YAAY,EAAE,kBAAkB,CAAA;QAC/D,IAAI,CAAC,GAAG;YAAE,OAAO,WAAW,CAAC,CAAC,CAAC,CAAA;QAC/B,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAC1B,IAAI,CAAC,IAAI;YAAE,OAAO,cAAc,CAAC,CAAC,CAAC,CAAA;QACnC,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACpE,gFAAgF;QAChF,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAA;QAC3D,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE;YAClD,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC;YACtB,aAAa;SACd,CAAC,CAAA;QACF,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAC1B,CAAC,CAAC,CAAA;IAEF,cAAc,CAAC,GAAG,EAAE,oCAAoC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACpE,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,YAAY,EAAE,kBAAkB,CAAA;QAC/D,IAAI,CAAC,GAAG;YAAE,OAAO,WAAW,CAAC,CAAC,CAAC,CAAA;QAC/B,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAC1B,IAAI,CAAC,IAAI;YAAE,OAAO,cAAc,CAAC,CAAC,CAAC,CAAA;QACnC,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACpE,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAA;QAC3D,MAAM,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,UAAU,IAAI,IAAI,CAAA;QAC1D,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,CAAC,CAAA;QACjE,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAC1B,CAAC,CAAC,CAAA;IAEF,OAAO,GAAG,CAAA;AACZ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"PersistenceController.d.ts","sourceRoot":"","sources":["../../../src/modules/persistence/PersistenceController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAE3B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAG/C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAAC,MAAM,CAAC,CAqDpD"}
1
+ {"version":3,"file":"PersistenceController.d.ts","sourceRoot":"","sources":["../../../src/modules/persistence/PersistenceController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAE3B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAG/C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAAC,MAAM,CAAC,CAoGpD"}
@@ -48,11 +48,55 @@ export function persistenceController() {
48
48
  return c.json({ ok: false, error: { code: 'validation', message: 'repo and method are required' } }, 422);
49
49
  }
50
50
  const workspaceRepository = registry.workspaceRepository;
51
+ const blockRepository = registry.blockRepository;
52
+ const serviceRepository = registry.serviceRepository;
53
+ const resolveAccountId = (workspaceId) => workspaceRepository?.accountOf?.(workspaceId) ??
54
+ Promise.resolve(undefined);
55
+ // The `block`/`serviceList` scope checks resolve the owning account by reading the entity
56
+ // (`blockRepository.findById` / `serviceRepository.listByIds`). When the request ALSO
57
+ // dispatches that same read, memoise it per request so the resolver's read is reused instead
58
+ // of issuing a second identical query. (For every other `serviceList` method the dispatched
59
+ // method differs from the resolver's read, so there is nothing to dedupe.)
60
+ const memoizeRead = (fn) => {
61
+ const cache = new Map();
62
+ return (...args) => {
63
+ const key = JSON.stringify(args);
64
+ const hit = cache.get(key);
65
+ if (hit)
66
+ return hit;
67
+ const pending = Promise.resolve(fn(...args));
68
+ cache.set(key, pending);
69
+ return pending;
70
+ };
71
+ };
72
+ const blockFindById = memoizeRead((blockId) => blockRepository?.findById?.(blockId));
73
+ const serviceListByIds = memoizeRead((ids) => serviceRepository?.listByIds?.(ids));
74
+ // For the two self-keyed reads, point the dispatcher's own call at the memo so it hits the
75
+ // resolver's already-resolved result. Only the one dispatched method is overridden; the rest
76
+ // of the registry is untouched.
77
+ const registryForDispatch = request.repo === 'blockRepository' && request.method === 'findById'
78
+ ? { ...registry, blockRepository: { findById: blockFindById } }
79
+ : request.repo === 'serviceRepository' && request.method === 'listByIds'
80
+ ? { ...registry, serviceRepository: { listByIds: serviceListByIds } }
81
+ : registry;
51
82
  const result = await dispatchPersistenceCall(request, {
52
- registry,
83
+ registry: registryForDispatch,
53
84
  scope: { accountIds: payload.scope.accountIds, userId: payload.userId },
54
- resolveAccountId: (workspaceId) => workspaceRepository?.accountOf?.(workspaceId) ??
55
- Promise.resolve(undefined),
85
+ resolveAccountId,
86
+ // A block is keyed only by its id; resolve its home workspace, then that workspace's account.
87
+ resolveBlockAccountId: async (blockId) => {
88
+ const found = (await blockFindById(blockId));
89
+ const workspaceId = found?.workspaceId;
90
+ return typeof workspaceId === 'string' ? resolveAccountId(workspaceId) : undefined;
91
+ },
92
+ // Services are account-owned; resolve each requested id's `accountId` for the scope check.
93
+ resolveServiceAccountIds: async (serviceIds) => {
94
+ const services = (await serviceListByIds(serviceIds));
95
+ const map = new Map();
96
+ for (const service of services ?? [])
97
+ map.set(service.id, service.accountId);
98
+ return map;
99
+ },
56
100
  });
57
101
  return c.json(result.body, result.status);
58
102
  });
@@ -1 +1 @@
1
- {"version":3,"file":"PersistenceController.js","sourceRoot":"","sources":["../../../src/modules/persistence/PersistenceController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PersistenceController.js","sourceRoot":"","sources":["../../../src/modules/persistence/PersistenceController.ts"],"names":[],"mappings":"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"}
@@ -1,24 +1,21 @@
1
- import type { AccountRepository, BlockRepository, ExecutionRepository, MembershipRepository, PipelineRepository, WorkspaceRepository } from '@cat-factory/kernel';
2
1
  import { type PersistenceRpcRequest, type PersistenceRpcResponse } from './rpc.js';
3
2
  /** Transport that performs one persistence call and returns the decoded envelope. */
4
3
  export interface PersistenceRpcClient {
5
4
  call(request: PersistenceRpcRequest): Promise<PersistenceRpcResponse>;
6
5
  }
7
- /** The repository subset a mothership-mode node resolves remotely in the pilot. */
8
- export interface RemoteRepositories {
9
- workspaceRepository: WorkspaceRepository;
10
- blockRepository: BlockRepository;
11
- pipelineRepository: PipelineRepository;
12
- executionRepository: ExecutionRepository;
13
- accountRepository: AccountRepository;
14
- membershipRepository: MembershipRepository;
15
- }
16
6
  /**
17
- * Build the remote-backed repository set for a mothership-mode node. Each repo is a thin
18
- * Proxy over the one persistence transport; no per-method code, so it can never drift from
19
- * the kernel port signatures it implements.
7
+ * A drift-proof, full-surface remote repository registry: a top-level `Proxy` that lazily
8
+ * returns a remote method-proxy for ANY `repoName` accessed (`registry.fooRepository.bar(...)`
9
+ * forwards to one RPC). A mothership-mode local node casts this to its full `CoreRepositories`
10
+ * shape, so EVERY org/durable repository is remote with no per-repo wiring — a new kernel
11
+ * repository is automatically remotely-backed (the server-side allow-list still gates which
12
+ * repo+method actually executes; an un-allow-listed call returns `unknown_method`).
13
+ *
14
+ * Credentials are deliberately NOT part of this set — they stay local (the `node:sqlite`
15
+ * store), composed over the top of this registry by the facade. This is the single mechanism
16
+ * a mothership-mode node uses; there is no narrower typed pilot set to drift from it.
20
17
  */
21
- export declare function createRemoteRepositories(client: PersistenceRpcClient): RemoteRepositories;
18
+ export declare function createRemoteRepositoryRegistry(client: PersistenceRpcClient): Record<string, unknown>;
22
19
  /**
23
20
  * A fetch-based {@link PersistenceRpcClient} that posts to the mothership's
24
21
  * `POST /internal/persistence`, presenting the node's machine token. The endpoint always
@@ -1 +1 @@
1
- {"version":3,"file":"remoteRepositories.d.ts","sourceRoot":"","sources":["../../src/persistence/remoteRepositories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAE5B,MAAM,UAAU,CAAA;AAUjB,qFAAqF;AACrF,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAA;CACtE;AAED,mFAAmF;AACnF,MAAM,WAAW,kBAAkB;IACjC,mBAAmB,EAAE,mBAAmB,CAAA;IACxC,eAAe,EAAE,eAAe,CAAA;IAChC,kBAAkB,EAAE,kBAAkB,CAAA;IACtC,mBAAmB,EAAE,mBAAmB,CAAA;IACxC,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,oBAAoB,EAAE,oBAAoB,CAAA;CAC3C;AAuBD;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,oBAAoB,GAAG,kBAAkB,CASzF;AAED;;;;GAIG;AACH,qBAAa,wBAAyB,YAAW,oBAAoB;IAEjE,OAAO,CAAC,QAAQ,CAAC,IAAI;IADvB,YACmB,IAAI,EAAE;QACrB,OAAO,EAAE,MAAM,CAAA;QACf,KAAK,EAAE,MAAM,CAAA;QACb,SAAS,CAAC,EAAE,OAAO,KAAK,CAAA;KACzB,EACC;IAEE,IAAI,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAiB1E;CACF"}
1
+ {"version":3,"file":"remoteRepositories.d.ts","sourceRoot":"","sources":["../../src/persistence/remoteRepositories.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAE5B,MAAM,UAAU,CAAA;AAUjB,qFAAqF;AACrF,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAA;CACtE;AA8BD;;;;;;;;;;;GAWG;AACH,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,oBAAoB,GAC3B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAoBzB;AAED;;;;GAIG;AACH,qBAAa,wBAAyB,YAAW,oBAAoB;IAEjE,OAAO,CAAC,QAAQ,CAAC,IAAI;IADvB,YACmB,IAAI,EAAE;QACrB,OAAO,EAAE,MAAM,CAAA;QACf,KAAK,EAAE,MAAM,CAAA;QACb,SAAS,CAAC,EAAE,OAAO,KAAK,CAAA;KACzB,EACC;IAEE,IAAI,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAiB1E;CACF"}
@@ -2,6 +2,14 @@ import { persistenceErrorToThrowable, } from './rpc.js';
2
2
  function makeRepoProxy(client, repo) {
3
3
  return new Proxy({}, {
4
4
  get(_target, method) {
5
+ // Only string method names are RPC-addressable. A non-string access (a symbol such as
6
+ // `Symbol.toPrimitive` during coercion) AND the `then` property (which `await` /
7
+ // `Promise.resolve` probe to decide whether a value is a thenable) MUST read as absent.
8
+ // Otherwise an accidental `await repoProxy` would see a callable `then`, treat the proxy
9
+ // as a thenable, and forward a bogus `{method:'then'}` RPC. Guarding here (the primitive)
10
+ // covers both an awaited registry and an awaited individual repo proxy.
11
+ if (typeof method !== 'string' || method === 'then')
12
+ return undefined;
5
13
  return async (...args) => {
6
14
  const res = await client.call({ repo, method, args });
7
15
  if (!res.ok)
@@ -19,19 +27,35 @@ function makeRepoProxy(client, repo) {
19
27
  });
20
28
  }
21
29
  /**
22
- * Build the remote-backed repository set for a mothership-mode node. Each repo is a thin
23
- * Proxy over the one persistence transport; no per-method code, so it can never drift from
24
- * the kernel port signatures it implements.
30
+ * A drift-proof, full-surface remote repository registry: a top-level `Proxy` that lazily
31
+ * returns a remote method-proxy for ANY `repoName` accessed (`registry.fooRepository.bar(...)`
32
+ * forwards to one RPC). A mothership-mode local node casts this to its full `CoreRepositories`
33
+ * shape, so EVERY org/durable repository is remote with no per-repo wiring — a new kernel
34
+ * repository is automatically remotely-backed (the server-side allow-list still gates which
35
+ * repo+method actually executes; an un-allow-listed call returns `unknown_method`).
36
+ *
37
+ * Credentials are deliberately NOT part of this set — they stay local (the `node:sqlite`
38
+ * store), composed over the top of this registry by the facade. This is the single mechanism
39
+ * a mothership-mode node uses; there is no narrower typed pilot set to drift from it.
25
40
  */
26
- export function createRemoteRepositories(client) {
27
- return {
28
- workspaceRepository: makeRepoProxy(client, 'workspaceRepository'),
29
- blockRepository: makeRepoProxy(client, 'blockRepository'),
30
- pipelineRepository: makeRepoProxy(client, 'pipelineRepository'),
31
- executionRepository: makeRepoProxy(client, 'executionRepository'),
32
- accountRepository: makeRepoProxy(client, 'accountRepository'),
33
- membershipRepository: makeRepoProxy(client, 'membershipRepository'),
34
- };
41
+ export function createRemoteRepositoryRegistry(client) {
42
+ const cache = new Map();
43
+ return new Proxy({}, {
44
+ get(_target, repoName) {
45
+ // Only string repo names are RPC-addressable; a symbol access (`Symbol.toPrimitive`) or
46
+ // `then` (probed by an accidental `await registry`) is not a repository and reads as
47
+ // absent — so the registry itself is never mistaken for a thenable. (The per-repo
48
+ // `then`/symbol guard in `makeRepoProxy` protects an awaited individual repo proxy too.)
49
+ if (typeof repoName !== 'string' || repoName === 'then')
50
+ return undefined;
51
+ let proxy = cache.get(repoName);
52
+ if (!proxy) {
53
+ proxy = makeRepoProxy(client, repoName);
54
+ cache.set(repoName, proxy);
55
+ }
56
+ return proxy;
57
+ },
58
+ });
35
59
  }
36
60
  /**
37
61
  * A fetch-based {@link PersistenceRpcClient} that posts to the mothership's
@@ -1 +1 @@
1
- {"version":3,"file":"remoteRepositories.js","sourceRoot":"","sources":["../../src/persistence/remoteRepositories.ts"],"names":[],"mappings":"AAQA,OAAO,EAGL,2BAA2B,GAC5B,MAAM,UAAU,CAAA;AAyBjB,SAAS,aAAa,CAAmB,MAA4B,EAAE,IAAY;IACjF,OAAO,IAAI,KAAK,CACd,EAAE,EACF;QACE,GAAG,CAAC,OAAO,EAAE,MAAc;YACzB,OAAO,KAAK,EAAE,GAAG,IAAe,EAAE,EAAE;gBAClC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;gBACrD,IAAI,CAAC,GAAG,CAAC,EAAE;oBAAE,MAAM,2BAA2B,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;gBACzD,gFAAgF;gBAChF,4EAA4E;gBAC5E,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;oBAChB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAiC,CAAA;oBACpE,IAAI,MAAM;wBAAE,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAA;gBAC1C,CAAC;gBACD,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAA;YAC1C,CAAC,CAAA;QACH,CAAC;KACF,CACG,CAAA;AACR,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAA4B;IACnE,OAAO;QACL,mBAAmB,EAAE,aAAa,CAAsB,MAAM,EAAE,qBAAqB,CAAC;QACtF,eAAe,EAAE,aAAa,CAAkB,MAAM,EAAE,iBAAiB,CAAC;QAC1E,kBAAkB,EAAE,aAAa,CAAqB,MAAM,EAAE,oBAAoB,CAAC;QACnF,mBAAmB,EAAE,aAAa,CAAsB,MAAM,EAAE,qBAAqB,CAAC;QACtF,iBAAiB,EAAE,aAAa,CAAoB,MAAM,EAAE,mBAAmB,CAAC;QAChF,oBAAoB,EAAE,aAAa,CAAuB,MAAM,EAAE,sBAAsB,CAAC;KAC1F,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,wBAAwB;IAEhB,IAAI;IADvB,YACmB,IAIhB;oBAJgB,IAAI;IAKpB,CAAC;IAEJ,KAAK,CAAC,IAAI,CAAC,OAA8B;QACvC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,KAAK,CAAA;QAC9C,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,uBAAuB,EAAE;YAC1F,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;aAC3C;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SAC9B,CAAC,CAAA;QACF,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAkC,CAAA;QAClF,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,IAAI,IAAI;YAAE,OAAO,IAAI,CAAA;QACjE,2FAA2F;QAC3F,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,gCAAgC,GAAG,CAAC,MAAM,GAAG,EAAE;SACpF,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"remoteRepositories.js","sourceRoot":"","sources":["../../src/persistence/remoteRepositories.ts"],"names":[],"mappings":"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"}
@@ -38,6 +38,12 @@ export declare function statusForPersistenceError(code: PersistenceErrorCode): n
38
38
  * - `selfUser` — `args[arg]` is a userId; must equal the token's `userId`.
39
39
  * - `visibility` — `args[arg]` is a `WorkspaceVisibility`; intersected with the token
40
40
  * scope so a node can never widen its own visibility.
41
+ * - `block` — `args[arg]` is a blockId with NO workspace arg; resolve the block's
42
+ * owning account server-side (block → home workspace → account).
43
+ * - `serviceList` — `args[arg]` is `string[]` of serviceIds; resolve each service's owning
44
+ * account server-side (services are account-owned). EVERY requested id
45
+ * must resolve to an in-scope account, so a missing or out-of-scope
46
+ * service fails closed. Empty input is allowed (it returns empty).
41
47
  */
42
48
  export type ScopeRule = {
43
49
  kind: 'workspace';
@@ -58,6 +64,12 @@ export type ScopeRule = {
58
64
  } | {
59
65
  kind: 'visibility';
60
66
  arg: number;
67
+ } | {
68
+ kind: 'block';
69
+ arg: number;
70
+ } | {
71
+ kind: 'serviceList';
72
+ arg: number;
61
73
  };
62
74
  export interface MethodSpec {
63
75
  scope: ScopeRule;
@@ -67,11 +79,24 @@ export interface MethodSpec {
67
79
  /** repo → method → spec. A method absent here is NOT remotely invocable (default-deny). */
68
80
  export type PersistenceMethodTable = Record<string, Record<string, MethodSpec>>;
69
81
  /**
70
- * The pilot allow-list: the six core domain repositories needed to load a board and start
71
- * an execution. Cross-service reads (`listByService`/`findById`), global sweeper methods
72
- * (`listStale`), and high-impact unscoped ops (`workspaceRepository.delete`,
73
- * `accountRepository.create`) are deliberately EXCLUDED they are added (with their own
74
- * scope rules) in later slices, or stay mothership-internal. See the initiative tracker.
82
+ * The mothership-mode persistence allow-list: the core domain repositories plus the
83
+ * workspace-scoped reads a board load (`GET /workspaces/:id`) and an execution exercise.
84
+ * Every method here binds to an account via its {@link ScopeRule} so a call outside the
85
+ * machine token's scope is refused as 404.
86
+ *
87
+ * The cross-service board-composition reads keyed on `serviceIds[]`/`accountId`
88
+ * (`listByServices`, `serviceRepository.listByIds`/`listByAccount`, `countByServiceIds`) and the
89
+ * entity-id-keyed `blockRepository.findById` are allow-listed here too, each bound by the
90
+ * {@link ScopeRule} `serviceList` / `block` / `account` kinds that resolve the entity's owning
91
+ * account server-side before the scope check.
92
+ *
93
+ * Still EXCLUDED (added in later gate slices, with their own scope rules, or kept
94
+ * mothership-internal):
95
+ * - `subscriptionActivationRepository.deleteByExecution` — the activation row is the local
96
+ * `node:sqlite` bucket (per the per-repo checklist), not the remote surface, so it is not
97
+ * exposed here.
98
+ * - Global sweeper methods (`listStale`, `deleteOlderThan`) and high-impact unscoped ops
99
+ * (`workspaceRepository.delete`, `accountRepository.create`).
75
100
  *
76
101
  * Admin-gated mutations are also EXCLUDED here. The RPC dispatches over the raw repository,
77
102
  * bypassing the service layer that normally enforces per-user role checks — e.g.
@@ -96,6 +121,17 @@ export interface DispatchOptions {
96
121
  };
97
122
  /** Resolve a workspace's owning account id (the mothership's `WorkspaceRepository.accountOf`). */
98
123
  resolveAccountId(workspaceId: string): Promise<string | null | undefined>;
124
+ /**
125
+ * Resolve a block's owning account id (block → home workspace → account). Required for the
126
+ * `block` scope kind; a call hitting that kind with no resolver fails closed (404).
127
+ */
128
+ resolveBlockAccountId?(blockId: string): Promise<string | null | undefined>;
129
+ /**
130
+ * Resolve each requested service id's owning account id, keyed by service id (a service that
131
+ * does not exist is absent from the map). Required for the `serviceList` scope kind; a call
132
+ * hitting that kind with no resolver fails closed (404).
133
+ */
134
+ resolveServiceAccountIds?(serviceIds: string[]): Promise<Map<string, string | null | undefined>>;
99
135
  /** The method table to enforce (defaults to the pilot set). */
100
136
  table?: PersistenceMethodTable;
101
137
  }
@@ -1 +1 @@
1
- {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../src/persistence/rpc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../src/persistence/rpc.ts"],"names":[],"mappings":"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"}
@@ -19,11 +19,24 @@ export function statusForPersistenceError(code) {
19
19
  }
20
20
  }
21
21
  /**
22
- * The pilot allow-list: the six core domain repositories needed to load a board and start
23
- * an execution. Cross-service reads (`listByService`/`findById`), global sweeper methods
24
- * (`listStale`), and high-impact unscoped ops (`workspaceRepository.delete`,
25
- * `accountRepository.create`) are deliberately EXCLUDED they are added (with their own
26
- * scope rules) in later slices, or stay mothership-internal. See the initiative tracker.
22
+ * The mothership-mode persistence allow-list: the core domain repositories plus the
23
+ * workspace-scoped reads a board load (`GET /workspaces/:id`) and an execution exercise.
24
+ * Every method here binds to an account via its {@link ScopeRule} so a call outside the
25
+ * machine token's scope is refused as 404.
26
+ *
27
+ * The cross-service board-composition reads keyed on `serviceIds[]`/`accountId`
28
+ * (`listByServices`, `serviceRepository.listByIds`/`listByAccount`, `countByServiceIds`) and the
29
+ * entity-id-keyed `blockRepository.findById` are allow-listed here too, each bound by the
30
+ * {@link ScopeRule} `serviceList` / `block` / `account` kinds that resolve the entity's owning
31
+ * account server-side before the scope check.
32
+ *
33
+ * Still EXCLUDED (added in later gate slices, with their own scope rules, or kept
34
+ * mothership-internal):
35
+ * - `subscriptionActivationRepository.deleteByExecution` — the activation row is the local
36
+ * `node:sqlite` bucket (per the per-repo checklist), not the remote surface, so it is not
37
+ * exposed here.
38
+ * - Global sweeper methods (`listStale`, `deleteOlderThan`) and high-impact unscoped ops
39
+ * (`workspaceRepository.delete`, `accountRepository.create`).
27
40
  *
28
41
  * Admin-gated mutations are also EXCLUDED here. The RPC dispatches over the raw repository,
29
42
  * bypassing the service layer that normally enforces per-user role checks — e.g.
@@ -52,6 +65,10 @@ export const PILOT_PERSISTENCE_METHODS = {
52
65
  update: { scope: { kind: 'workspace', arg: 0 } },
53
66
  setService: { scope: { kind: 'workspace', arg: 0 } },
54
67
  deleteMany: { scope: { kind: 'workspace', arg: 0 } },
68
+ // Entity-id-keyed (no workspace arg): resolve the block's home workspace's account server-side.
69
+ findById: { scope: { kind: 'block', arg: 0 } },
70
+ // Cross-service: compose a board's blocks from every service it mounts.
71
+ listByServices: { scope: { kind: 'serviceList', arg: 0 } },
55
72
  },
56
73
  pipelineRepository: {
57
74
  listByWorkspace: { scope: { kind: 'workspace', arg: 0 } },
@@ -68,6 +85,8 @@ export const PILOT_PERSISTENCE_METHODS = {
68
85
  compareAndSwap: { scope: { kind: 'workspace', arg: 0 }, revWriteBack: 1 },
69
86
  deleteByBlock: { scope: { kind: 'workspace', arg: 0 } },
70
87
  markFailed: { scope: { kind: 'workspace', arg: 0 } },
88
+ // Cross-service: compose a board's runs from every service it mounts.
89
+ listByServices: { scope: { kind: 'serviceList', arg: 0 } },
71
90
  },
72
91
  accountRepository: {
73
92
  // Reads only — `rename`/`updateSettings` are admin-gated (see allow-list note above).
@@ -81,6 +100,112 @@ export const PILOT_PERSISTENCE_METHODS = {
81
100
  listByAccount: { scope: { kind: 'account', arg: 0 } },
82
101
  get: { scope: { kind: 'account', arg: 0 } },
83
102
  },
103
+ // --- Board-load read surface --------------------------------------------------
104
+ // The workspace-scoped reads a `GET /workspaces/:id` snapshot assembles. Each takes the
105
+ // workspaceId as arg0, so they reuse the `workspace` rule (resolve the owning account, reject
106
+ // out-of-scope as 404). Reads only — no mutation is exposed here.
107
+ //
108
+ // The cross-service reads (`*.listByServices`, `countByServiceIds`, `serviceRepository.*`)
109
+ // compose a board from the services it mounts; their arg0 is `serviceIds[]` (the `serviceList`
110
+ // rule resolves each service's owning account) or an `accountId` (the `account` rule).
111
+ serviceRepository: {
112
+ listByIds: { scope: { kind: 'serviceList', arg: 0 } },
113
+ listByAccount: { scope: { kind: 'account', arg: 0 } },
114
+ },
115
+ workspaceMountRepository: {
116
+ listByWorkspace: { scope: { kind: 'workspace', arg: 0 } },
117
+ countByServiceIds: { scope: { kind: 'serviceList', arg: 0 } },
118
+ },
119
+ workspaceSettingsRepository: {
120
+ get: { scope: { kind: 'workspace', arg: 0 } },
121
+ },
122
+ mergePresetRepository: {
123
+ list: { scope: { kind: 'workspace', arg: 0 } },
124
+ // `MergePresetService.list` lazily seeds the built-in default for a workspace that has
125
+ // none (a write triggered by the board-load read). Member-level (the preset CRUD is not
126
+ // admin-gated), workspace-scoped — the same policy as the block/pipeline mutations above.
127
+ upsert: { scope: { kind: 'workspace', arg: 0 } },
128
+ },
129
+ modelPresetRepository: {
130
+ list: { scope: { kind: 'workspace', arg: 0 } },
131
+ // The run-start model resolution (`resolvePresetModelForKind` → the personal-credential
132
+ // gate) reads the workspace's default model preset for the dispatched agent kind.
133
+ getDefault: { scope: { kind: 'workspace', arg: 0 } },
134
+ // `ModelPresetService.list` lazily seeds the built-in defaults for a workspace that has none
135
+ // (a write the board-load read triggers), exactly like `mergePresetRepository.upsert` above.
136
+ upsert: { scope: { kind: 'workspace', arg: 0 } },
137
+ },
138
+ // --- Agent-context run-path reads -----------------------------------------------
139
+ // `AgentContextBuilder` resolves a block's LINKED docs/tasks for EVERY container agent step
140
+ // (it builds the agent context on each dispatch), so these reads are on the run path, not just
141
+ // the opt-in document/task integrations' own surfaces. arg0 is the workspaceId → `workspace`
142
+ // rule. The document/task SOURCE-PROVIDER + connection surfaces (connect/list/disconnect) are
143
+ // NOT exposed here — they are a later integration slice; only the block-scoped context reads are.
144
+ documentRepository: {
145
+ listByBlock: { scope: { kind: 'workspace', arg: 0 } },
146
+ get: { scope: { kind: 'workspace', arg: 0 } },
147
+ // A URL named in a block's description is resolved against the imported corpus by a
148
+ // canonical-url point lookup (`AgentContextBuilder.resolveLinkedContext`), on the SAME
149
+ // per-dispatch run path as `get`/`listByBlock` above — so it must be allow-listed too
150
+ // (else a task whose description contains any link fails the run with `unknown_method`).
151
+ getByUrl: { scope: { kind: 'workspace', arg: 0 } },
152
+ },
153
+ taskRepository: {
154
+ listByBlock: { scope: { kind: 'workspace', arg: 0 } },
155
+ get: { scope: { kind: 'workspace', arg: 0 } },
156
+ // Same as `documentRepository.getByUrl`: a URL in the description resolves against the
157
+ // imported issue corpus by a point lookup on the run path.
158
+ getByUrl: { scope: { kind: 'workspace', arg: 0 } },
159
+ },
160
+ // The agent context also resolves the block's provisioned environment per step
161
+ // (`resolveForBlock`/`get`, both workspace-keyed). Reads only — the connect/provision surface
162
+ // (and decrypting a remotely-sealed env cipher, which needs the mothership's key) is a later slice.
163
+ environmentRegistryRepository: {
164
+ getByBlock: { scope: { kind: 'workspace', arg: 0 } },
165
+ get: { scope: { kind: 'workspace', arg: 0 } },
166
+ },
167
+ serviceFragmentDefaultsRepository: {
168
+ get: { scope: { kind: 'workspace', arg: 0 } },
169
+ },
170
+ pipelineScheduleRepository: {
171
+ list: { scope: { kind: 'workspace', arg: 0 } },
172
+ getByBlock: { scope: { kind: 'workspace', arg: 0 } },
173
+ listByServices: { scope: { kind: 'serviceList', arg: 0 } },
174
+ },
175
+ trackerSettingsRepository: {
176
+ get: { scope: { kind: 'workspace', arg: 0 } },
177
+ },
178
+ notificationRepository: {
179
+ listOpen: { scope: { kind: 'workspace', arg: 0 } },
180
+ // The merger-less pipeline tail raises a block notification on completion
181
+ // (`pipeline_complete`/`merge_review` → `findOpenByBlock` dedup + `upsertOpenForBlock`), so a
182
+ // run persists its inbox card on the mothership. Workspace-scoped, member-level (the inbox
183
+ // act/dismiss endpoints are not admin-gated) — the same policy as the block/pipeline writes.
184
+ findOpenByBlock: { scope: { kind: 'workspace', arg: 0 } },
185
+ upsertOpenForBlock: { scope: { kind: 'workspace', arg: 0 } },
186
+ // Block-less raises (a card with no `blockId`) and every status transition the inbox
187
+ // performs right after a run settles — act / dismiss / escalate — go through `upsert`
188
+ // (`NotificationService`), not `upsertOpenForBlock`. Workspace-scoped, member-level (the
189
+ // inbox act/dismiss endpoints are not admin-gated) — same policy as the writes above.
190
+ upsert: { scope: { kind: 'workspace', arg: 0 } },
191
+ },
192
+ bootstrapJobRepository: {
193
+ listByWorkspace: { scope: { kind: 'workspace', arg: 0 } },
194
+ listByServices: { scope: { kind: 'serviceList', arg: 0 } },
195
+ },
196
+ tokenUsageRepository: {
197
+ totalsSinceForWorkspace: { scope: { kind: 'workspace', arg: 0 } },
198
+ },
199
+ // Mixed (workspaceId + blockId/stage): the workspace arg stays the scope key.
200
+ requirementReviewRepository: {
201
+ getByBlock: { scope: { kind: 'workspace', arg: 0 } },
202
+ },
203
+ clarityReviewRepository: {
204
+ getByBlock: { scope: { kind: 'workspace', arg: 0 } },
205
+ },
206
+ brainstormSessionRepository: {
207
+ getByBlockStage: { scope: { kind: 'workspace', arg: 0 } },
208
+ },
84
209
  };
85
210
  const fail = (code, message, details) => ({
86
211
  status: statusForPersistenceError(code),
@@ -149,6 +274,35 @@ export async function dispatchPersistenceCall(request, opts) {
149
274
  return denied;
150
275
  break;
151
276
  }
277
+ case 'block': {
278
+ // Bind via the block's home workspace's account, resolved server-side (the block carries
279
+ // no workspace arg). An unresolvable block (missing, or no resolver wired) is refused as
280
+ // 404 — no existence leak, matching the `workspace` rule.
281
+ const blockId = args[rule.arg];
282
+ if (typeof blockId !== 'string' || !opts.resolveBlockAccountId)
283
+ return denied;
284
+ if (!inScope(await opts.resolveBlockAccountId(blockId)))
285
+ return denied;
286
+ break;
287
+ }
288
+ case 'serviceList': {
289
+ // Bind via every requested service's owning account (services are account-owned). EVERY id
290
+ // must resolve to an in-scope account; a missing or out-of-scope service fails closed. An
291
+ // empty list is a no-op read (it returns empty), so it needs no service to scope.
292
+ const ids = args[rule.arg];
293
+ if (!Array.isArray(ids) || ids.some((id) => typeof id !== 'string'))
294
+ return denied;
295
+ if (ids.length === 0)
296
+ break;
297
+ if (!opts.resolveServiceAccountIds)
298
+ return denied;
299
+ const accounts = await opts.resolveServiceAccountIds(ids);
300
+ for (const id of ids) {
301
+ if (!inScope(accounts.get(id)))
302
+ return denied;
303
+ }
304
+ break;
305
+ }
152
306
  case 'visibility': {
153
307
  // Never let a node widen its visibility: intersect the requested accountIds with the
154
308
  // token scope, and pin the owner to the token user. A `null` (auth-disabled) scope is
@@ -1 +1 @@
1
- {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../src/persistence/rpc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../src/persistence/rpc.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cat-factory/server",
3
- "version": "0.53.0",
3
+ "version": "0.55.0",
4
4
  "description": "Runtime-neutral HTTP layer for the Agent Architecture Board: the Hono controllers, middleware (auth/authz/CORS/error), request helpers and the gateway seams shared by every deployment facade (Cloudflare Worker, Node service).",
5
5
  "repository": {
6
6
  "type": "git",
@@ -30,13 +30,13 @@
30
30
  "hono": "^4.12.27",
31
31
  "pino": "^10.3.1",
32
32
  "valibot": "^1.4.2",
33
- "@cat-factory/agents": "0.24.1",
34
- "@cat-factory/contracts": "0.63.0",
35
- "@cat-factory/integrations": "0.42.1",
36
- "@cat-factory/kernel": "0.61.0",
37
- "@cat-factory/orchestration": "0.47.1",
38
- "@cat-factory/prompt-fragments": "0.9.16",
39
- "@cat-factory/spend": "0.10.46"
33
+ "@cat-factory/agents": "0.24.3",
34
+ "@cat-factory/contracts": "0.65.0",
35
+ "@cat-factory/integrations": "0.44.0",
36
+ "@cat-factory/kernel": "0.62.0",
37
+ "@cat-factory/orchestration": "0.48.1",
38
+ "@cat-factory/prompt-fragments": "0.9.18",
39
+ "@cat-factory/spend": "0.10.48"
40
40
  },
41
41
  "devDependencies": {
42
42
  "typescript": "7.0.1-rc",