@grackle-ai/core 0.92.3 → 0.93.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.
Files changed (48) hide show
  1. package/dist/environment-handlers.d.ts.map +1 -1
  2. package/dist/environment-handlers.js +17 -5
  3. package/dist/environment-handlers.js.map +1 -1
  4. package/dist/grpc-proto-converters.d.ts +6 -2
  5. package/dist/grpc-proto-converters.d.ts.map +1 -1
  6. package/dist/grpc-proto-converters.js +11 -3
  7. package/dist/grpc-proto-converters.js.map +1 -1
  8. package/dist/index.d.ts +6 -5
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +6 -6
  11. package/dist/index.js.map +1 -1
  12. package/dist/lifecycle.d.ts +10 -9
  13. package/dist/lifecycle.d.ts.map +1 -1
  14. package/dist/lifecycle.js +18 -21
  15. package/dist/lifecycle.js.map +1 -1
  16. package/dist/root-task-boot.d.ts +12 -3
  17. package/dist/root-task-boot.d.ts.map +1 -1
  18. package/dist/root-task-boot.js +80 -45
  19. package/dist/root-task-boot.js.map +1 -1
  20. package/dist/signals/escalation-auto.d.ts +9 -8
  21. package/dist/signals/escalation-auto.d.ts.map +1 -1
  22. package/dist/signals/escalation-auto.js +21 -25
  23. package/dist/signals/escalation-auto.js.map +1 -1
  24. package/dist/signals/orphan-reparent.d.ts +9 -8
  25. package/dist/signals/orphan-reparent.d.ts.map +1 -1
  26. package/dist/signals/orphan-reparent.js +21 -25
  27. package/dist/signals/orphan-reparent.js.map +1 -1
  28. package/dist/signals/sigchld.d.ts +9 -4
  29. package/dist/signals/sigchld.d.ts.map +1 -1
  30. package/dist/signals/sigchld.js +23 -26
  31. package/dist/signals/sigchld.js.map +1 -1
  32. package/dist/stream-registry.d.ts +14 -2
  33. package/dist/stream-registry.d.ts.map +1 -1
  34. package/dist/stream-registry.js +22 -0
  35. package/dist/stream-registry.js.map +1 -1
  36. package/dist/subscriber-types.d.ts +25 -0
  37. package/dist/subscriber-types.d.ts.map +1 -0
  38. package/dist/subscriber-types.js +11 -0
  39. package/dist/subscriber-types.js.map +1 -0
  40. package/dist/test-utils/mock-database.d.ts +11 -0
  41. package/dist/test-utils/mock-database.d.ts.map +1 -1
  42. package/dist/test-utils/mock-database.js +11 -0
  43. package/dist/test-utils/mock-database.js.map +1 -1
  44. package/dist/workspace-handlers.d.ts +4 -0
  45. package/dist/workspace-handlers.d.ts.map +1 -1
  46. package/dist/workspace-handlers.js +51 -2
  47. package/dist/workspace-handlers.js.map +1 -1
  48. package/package.json +7 -7
@@ -1,5 +1,4 @@
1
1
  import { SESSION_STATUS } from "@grackle-ai/common";
2
- import { subscribe } from "../event-bus.js";
3
2
  import { taskStore, sessionStore } from "@grackle-ai/database";
4
3
  import { readLastTextEntry } from "../log-writer.js";
5
4
  import { deliverSignalToTask } from "./signal-delivery.js";
@@ -24,23 +23,23 @@ const SIGCHLD_STATUSES = new Set([
24
23
  ]);
25
24
  /** How long (ms) to remember a delivered notification before allowing re-delivery. */
26
25
  const DEDUP_TTL_MS = 3_600_000; // 1 hour
27
- /** Track delivered notifications to prevent duplicates: key → delivery timestamp. */
28
- const delivered = new Map();
29
26
  /** Human-readable status labels for the notification text (non-STOPPED statuses only). */
30
27
  const STATUS_LABELS = {
31
28
  [SESSION_STATUS.IDLE]: "finished working (awaiting review)",
32
29
  };
33
30
  /**
34
- * Initialize the SIGCHLD event-bus subscriber.
35
- * Idempotent — safe to call multiple times.
31
+ * Create the SIGCHLD event-bus subscriber.
32
+ *
33
+ * Watches for child tasks whose latest session reaches a SIGCHLD-triggering
34
+ * status (idle or stopped) and delivers a notification to the parent task.
35
+ *
36
+ * @param ctx - Plugin context providing event-bus access.
37
+ * @returns A Disposable that unsubscribes and clears dedup state.
36
38
  */
37
- let initialized = false;
38
- export function initSigchldSubscriber() {
39
- if (initialized) {
40
- return;
41
- }
42
- initialized = true;
43
- subscribe((event) => {
39
+ export function createSigchldSubscriber(ctx) {
40
+ /** Track delivered notifications to prevent duplicates: key → delivery timestamp. */
41
+ const delivered = new Map();
42
+ const unsubscribe = ctx.subscribe((event) => {
44
43
  if (event.type !== "task.updated") {
45
44
  return;
46
45
  }
@@ -51,7 +50,7 @@ export function initSigchldSubscriber() {
51
50
  // Fire-and-forget async handler — errors are logged, never thrown
52
51
  (async () => {
53
52
  try {
54
- await handleTaskUpdated(childTaskId);
53
+ await handleTaskUpdated(delivered, childTaskId);
55
54
  }
56
55
  catch (err) {
57
56
  logger.error({ err, childTaskId }, "SIGCHLD handler error");
@@ -59,13 +58,19 @@ export function initSigchldSubscriber() {
59
58
  })().catch(() => { });
60
59
  });
61
60
  logger.info("SIGCHLD subscriber initialized");
61
+ return {
62
+ dispose() {
63
+ unsubscribe();
64
+ delivered.clear();
65
+ },
66
+ };
62
67
  }
63
68
  /**
64
69
  * Handle a task.updated event: check if the task is a child whose latest
65
70
  * session has reached a SIGCHLD-triggering status (idle or terminal),
66
71
  * and if so, deliver a SIGCHLD notification to the parent.
67
72
  */
68
- async function handleTaskUpdated(childTaskId) {
73
+ async function handleTaskUpdated(delivered, childTaskId) {
69
74
  const childTask = taskStore.getTask(childTaskId);
70
75
  if (!childTask) {
71
76
  return;
@@ -93,7 +98,7 @@ async function handleTaskUpdated(childTaskId) {
93
98
  }
94
99
  delivered.set(dedupeKey, now);
95
100
  // Prune expired entries to prevent unbounded growth
96
- pruneDelivered(now);
101
+ pruneMap(delivered, now);
97
102
  // Extract the last text message from the child's session log
98
103
  const lastTextMessage = extractLastTextMessage(latestSession.logPath || undefined);
99
104
  // Format the notification with actionable instructions for the parent
@@ -145,10 +150,10 @@ async function handleTaskUpdated(childTaskId) {
145
150
  }
146
151
  }
147
152
  /** Remove dedup entries older than DEDUP_TTL_MS. */
148
- function pruneDelivered(now) {
149
- for (const [key, timestamp] of delivered) {
153
+ function pruneMap(map, now) {
154
+ for (const [key, timestamp] of map) {
150
155
  if (now - timestamp >= DEDUP_TTL_MS) {
151
- delivered.delete(key);
156
+ map.delete(key);
152
157
  }
153
158
  }
154
159
  }
@@ -169,12 +174,4 @@ function extractLastTextMessage(logPath) {
169
174
  return "";
170
175
  }
171
176
  }
172
- /**
173
- * Reset module state. For use in tests only.
174
- * @internal
175
- */
176
- export function _resetForTesting() {
177
- delivered.clear();
178
- initialized = false;
179
- }
180
177
  //# sourceMappingURL=sigchld.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sigchld.js","sourceRoot":"","sources":["../../src/signals/sigchld.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sigchld.js","sourceRoot":"","sources":["../../src/signals/sigchld.ts"],"names":[],"mappings":"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"}
@@ -78,14 +78,26 @@ export declare function registerAsyncListener(sessionId: string, callback: Async
78
78
  /**
79
79
  * Register a callback invoked when a session has zero remaining subscriptions.
80
80
  * Used by the lifecycle manager to auto-hibernate orphaned sessions.
81
+ *
82
+ * **Singleton semantics**: only one callback is supported at a time. A new
83
+ * registration overwrites the previous one (last-wins). This is intentional —
84
+ * there is exactly one lifecycle manager per server instance.
85
+ *
86
+ * @returns An unsubscribe function that removes the callback.
81
87
  */
82
- export declare function onSessionOrphaned(cb: OrphanCallback): void;
88
+ export declare function onSessionOrphaned(cb: OrphanCallback): () => void;
83
89
  /**
84
90
  * Register a callback invoked when an external session subscribes to a
85
91
  * lifecycle stream. Used by the lifecycle manager to auto-reanimate
86
92
  * stopped sessions when a new fd is opened.
93
+ *
94
+ * **Singleton semantics**: only one callback is supported at a time. A new
95
+ * registration overwrites the previous one (last-wins). This is intentional —
96
+ * there is exactly one lifecycle manager per server instance.
97
+ *
98
+ * @returns An unsubscribe function that removes the callback.
87
99
  */
88
- export declare function onSessionRevived(cb: RevivedCallback): void;
100
+ export declare function onSessionRevived(cb: RevivedCallback): () => void;
89
101
  /** Return all active streams. Used by cleanup phases to scan for orphaned lifecycle streams. */
90
102
  export declare function listStreams(): Stream[];
91
103
  /** Clear all state. For testing only. */
@@ -1 +1 @@
1
- {"version":3,"file":"stream-registry.d.ts","sourceRoot":"","sources":["../src/stream-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stream-registry.d.ts","sourceRoot":"","sources":["../src/stream-registry.ts"],"names":[],"mappings":"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"}
@@ -353,17 +353,39 @@ export function registerAsyncListener(sessionId, callback) {
353
353
  /**
354
354
  * Register a callback invoked when a session has zero remaining subscriptions.
355
355
  * Used by the lifecycle manager to auto-hibernate orphaned sessions.
356
+ *
357
+ * **Singleton semantics**: only one callback is supported at a time. A new
358
+ * registration overwrites the previous one (last-wins). This is intentional —
359
+ * there is exactly one lifecycle manager per server instance.
360
+ *
361
+ * @returns An unsubscribe function that removes the callback.
356
362
  */
357
363
  export function onSessionOrphaned(cb) {
358
364
  orphanCallback = cb;
365
+ return () => {
366
+ if (orphanCallback === cb) {
367
+ orphanCallback = undefined;
368
+ }
369
+ };
359
370
  }
360
371
  /**
361
372
  * Register a callback invoked when an external session subscribes to a
362
373
  * lifecycle stream. Used by the lifecycle manager to auto-reanimate
363
374
  * stopped sessions when a new fd is opened.
375
+ *
376
+ * **Singleton semantics**: only one callback is supported at a time. A new
377
+ * registration overwrites the previous one (last-wins). This is intentional —
378
+ * there is exactly one lifecycle manager per server instance.
379
+ *
380
+ * @returns An unsubscribe function that removes the callback.
364
381
  */
365
382
  export function onSessionRevived(cb) {
366
383
  revivedCallback = cb;
384
+ return () => {
385
+ if (revivedCallback === cb) {
386
+ revivedCallback = undefined;
387
+ }
388
+ };
367
389
  }
368
390
  // ─── Enumeration ──────────────────────────────────────────────────────────────
369
391
  /** Return all active streams. Used by cleanup phases to scan for orphaned lifecycle streams. */
@@ -1 +1 @@
1
- {"version":3,"file":"stream-registry.js","sourceRoot":"","sources":["../src/stream-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stream-registry.js","sourceRoot":"","sources":["../src/stream-registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Types for the subscriber factory pattern.
3
+ *
4
+ * Defines the standard factory signature so subscribers can be grouped,
5
+ * initialized, and disposed as a unit — the foundation for the plugin
6
+ * architecture (issue #1119).
7
+ *
8
+ * @module
9
+ */
10
+ import type { GrackleEvent, GrackleEventType, Subscriber } from "./event-bus.js";
11
+ /** A resource that can be disposed to clean up subscriptions and state. */
12
+ export interface Disposable {
13
+ /** Release all resources (unsubscribe callbacks, clear dedup maps, etc.). */
14
+ dispose(): void;
15
+ }
16
+ /** Minimal context passed to subscriber factories. */
17
+ export interface PluginContext {
18
+ /** Register an event-bus subscriber. Returns an unsubscribe function. */
19
+ subscribe: (subscriber: Subscriber) => () => void;
20
+ /** Emit a domain event. */
21
+ emit: (type: GrackleEventType, payload: Record<string, unknown>) => GrackleEvent;
22
+ }
23
+ /** Factory function that creates a subscriber and returns a Disposable for cleanup. */
24
+ export type SubscriberFactory = (ctx: PluginContext) => Disposable;
25
+ //# sourceMappingURL=subscriber-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subscriber-types.d.ts","sourceRoot":"","sources":["../src/subscriber-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjF,2EAA2E;AAC3E,MAAM,WAAW,UAAU;IACzB,6EAA6E;IAC7E,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,sDAAsD;AACtD,MAAM,WAAW,aAAa;IAC5B,yEAAyE;IACzE,SAAS,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,MAAM,IAAI,CAAC;IAClD,2BAA2B;IAC3B,IAAI,EAAE,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,YAAY,CAAC;CAClF;AAED,uFAAuF;AACvF,MAAM,MAAM,iBAAiB,GAAG,CAAC,GAAG,EAAE,aAAa,KAAK,UAAU,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Types for the subscriber factory pattern.
3
+ *
4
+ * Defines the standard factory signature so subscribers can be grouped,
5
+ * initialized, and disposed as a unit — the foundation for the plugin
6
+ * architecture (issue #1119).
7
+ *
8
+ * @module
9
+ */
10
+ export {};
11
+ //# sourceMappingURL=subscriber-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subscriber-types.js","sourceRoot":"","sources":["../src/subscriber-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG"}
@@ -104,6 +104,17 @@ export declare function createDatabaseMock(): {
104
104
  tokens: never[];
105
105
  }>;
106
106
  };
107
+ workspaceEnvironmentLinkStore: {
108
+ linkEnvironment: import("vitest").Mock<(...args: any[]) => any>;
109
+ unlinkEnvironment: import("vitest").Mock<(...args: any[]) => any>;
110
+ getLinkedEnvironmentIds: import("vitest").Mock<() => never[]>;
111
+ getLinkedEnvironmentIdsByWorkspaces: import("vitest").Mock<() => Map<any, any>>;
112
+ getWorkspaceIdsLinkedToEnvironment: import("vitest").Mock<() => never[]>;
113
+ isLinked: import("vitest").Mock<() => boolean>;
114
+ countLinksForEnvironment: import("vitest").Mock<() => number>;
115
+ deleteLinksForEnvironment: import("vitest").Mock<(...args: any[]) => any>;
116
+ deleteLinksForWorkspace: import("vitest").Mock<(...args: any[]) => any>;
117
+ };
107
118
  escalationStore: {
108
119
  createEscalation: import("vitest").Mock<(...args: any[]) => any>;
109
120
  getEscalation: import("vitest").Mock<() => undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"mock-database.d.ts","sourceRoot":"","sources":["../../src/test-utils/mock-database.ts"],"names":[],"mappings":"AAeA,0EAA0E;AAE1E,wBAAgB,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAwIF,OAAO,KAAG,MAAM,EAAE;oBAS9B,MAAM,KAAG,MAAM;uCACZ,OAAO;uCACP,OAAO;EAE7B"}
1
+ {"version":3,"file":"mock-database.d.ts","sourceRoot":"","sources":["../../src/test-utils/mock-database.ts"],"names":[],"mappings":"AAeA,0EAA0E;AAE1E,wBAAgB,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAoJF,OAAO,KAAG,MAAM,EAAE;oBAS9B,MAAM,KAAG,MAAM;uCACZ,OAAO;uCACP,OAAO;EAE7B"}
@@ -113,6 +113,17 @@ export function createDatabaseMock() {
113
113
  listTokens: vi.fn(() => []),
114
114
  getBundle: vi.fn(() => ({ tokens: [] })),
115
115
  },
116
+ workspaceEnvironmentLinkStore: {
117
+ linkEnvironment: vi.fn(),
118
+ unlinkEnvironment: vi.fn(),
119
+ getLinkedEnvironmentIds: vi.fn(() => []),
120
+ getLinkedEnvironmentIdsByWorkspaces: vi.fn(() => new Map()),
121
+ getWorkspaceIdsLinkedToEnvironment: vi.fn(() => []),
122
+ isLinked: vi.fn(() => false),
123
+ countLinksForEnvironment: vi.fn(() => 0),
124
+ deleteLinksForEnvironment: vi.fn(),
125
+ deleteLinksForWorkspace: vi.fn(),
126
+ },
116
127
  escalationStore: {
117
128
  createEscalation: vi.fn(),
118
129
  getEscalation: vi.fn(() => undefined),
@@ -1 +1 @@
1
- {"version":3,"file":"mock-database.js","sourceRoot":"","sources":["../../src/test-utils/mock-database.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mock-database.js","sourceRoot":"","sources":["../../src/test-utils/mock-database.ts"],"names":[],"mappings":"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"}
@@ -9,4 +9,8 @@ export declare function getWorkspace(req: grackle.WorkspaceId): Promise<grackle.
9
9
  export declare function archiveWorkspace(req: grackle.WorkspaceId): Promise<grackle.Empty>;
10
10
  /** Update workspace properties. */
11
11
  export declare function updateWorkspace(req: grackle.UpdateWorkspaceRequest): Promise<grackle.Workspace>;
12
+ /** Link an additional environment to a workspace's pool. */
13
+ export declare function linkEnvironment(req: grackle.LinkEnvironmentRequest): Promise<grackle.Workspace>;
14
+ /** Remove a linked environment from a workspace's pool. */
15
+ export declare function unlinkEnvironment(req: grackle.UnlinkEnvironmentRequest): Promise<grackle.Workspace>;
12
16
  //# sourceMappingURL=workspace-handlers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-handlers.d.ts","sourceRoot":"","sources":["../src/workspace-handlers.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAO7C,+DAA+D;AAC/D,wBAAsB,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAKvG;AAED,8BAA8B;AAC9B,wBAAsB,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,sBAAsB,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAgCrG;AAED,6BAA6B;AAC7B,wBAAsB,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAMvF;AAED,2BAA2B;AAC3B,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAKvF;AAED,mCAAmC;AACnC,wBAAsB,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,sBAAsB,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CA+BrG"}
1
+ {"version":3,"file":"workspace-handlers.d.ts","sourceRoot":"","sources":["../src/workspace-handlers.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAO7C,+DAA+D;AAC/D,wBAAsB,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CASvG;AAED,8BAA8B;AAC9B,wBAAsB,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,sBAAsB,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAgCrG;AAED,6BAA6B;AAC7B,wBAAsB,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAMvF;AAED,2BAA2B;AAC3B,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAKvF;AAED,mCAAmC;AACnC,wBAAsB,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,sBAAsB,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CA+BrG;AAED,4DAA4D;AAC5D,wBAAsB,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,sBAAsB,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAuCrG;AAED,2DAA2D;AAC3D,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,wBAAwB,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAezG"}
@@ -1,7 +1,7 @@
1
1
  import { ConnectError, Code } from "@connectrpc/connect";
2
2
  import { create } from "@bufbuild/protobuf";
3
3
  import { grackle } from "@grackle-ai/common";
4
- import { workspaceStore, envRegistry, slugify } from "@grackle-ai/database";
4
+ import { workspaceStore, envRegistry, workspaceEnvironmentLinkStore, slugify } from "@grackle-ai/database";
5
5
  import { v4 as uuid } from "uuid";
6
6
  import { emit } from "./event-bus.js";
7
7
  import { logger } from "./logger.js";
@@ -9,8 +9,10 @@ import { workspaceRowToProto } from "./grpc-proto-converters.js";
9
9
  /** List all workspaces, optionally filtered by environment. */
10
10
  export async function listWorkspaces(req) {
11
11
  const rows = workspaceStore.listWorkspaces(req.environmentId || undefined);
12
+ // Batch-fetch linked environment IDs to avoid N+1 queries
13
+ const linkedEnvMap = workspaceEnvironmentLinkStore.getLinkedEnvironmentIdsByWorkspaces(rows.map((r) => r.id));
12
14
  return create(grackle.WorkspaceListSchema, {
13
- workspaces: rows.map(workspaceRowToProto),
15
+ workspaces: rows.map((row) => workspaceRowToProto(row, linkedEnvMap)),
14
16
  });
15
17
  }
16
18
  /** Create a new workspace. */
@@ -86,4 +88,51 @@ export async function updateWorkspace(req) {
86
88
  emit("workspace.updated", { workspaceId: req.id });
87
89
  return workspaceRowToProto(row);
88
90
  }
91
+ /** Link an additional environment to a workspace's pool. */
92
+ export async function linkEnvironment(req) {
93
+ const workspace = workspaceStore.getWorkspace(req.workspaceId);
94
+ if (!workspace) {
95
+ throw new ConnectError(`Workspace not found: ${req.workspaceId}`, Code.NotFound);
96
+ }
97
+ const env = envRegistry.getEnvironment(req.environmentId);
98
+ if (!env) {
99
+ throw new ConnectError(`Environment not found: ${req.environmentId}`, Code.NotFound);
100
+ }
101
+ if (workspace.environmentId === req.environmentId) {
102
+ throw new ConnectError("Cannot link the primary environment — it is already in the pool", Code.InvalidArgument);
103
+ }
104
+ if (workspaceEnvironmentLinkStore.isLinked(req.workspaceId, req.environmentId)) {
105
+ throw new ConnectError(`Environment ${req.environmentId} is already linked to workspace ${req.workspaceId}`, Code.InvalidArgument);
106
+ }
107
+ try {
108
+ workspaceEnvironmentLinkStore.linkEnvironment(req.workspaceId, req.environmentId);
109
+ }
110
+ catch (err) {
111
+ // Handle race condition: concurrent requests may both pass isLinked() check
112
+ // but one hits the unique/PK constraint. Surface as InvalidArgument, not Internal.
113
+ // Narrow to UNIQUE/PRIMARYKEY violations only — FK failures should bubble as-is.
114
+ const message = err instanceof Error ? err.message : "";
115
+ if (/UNIQUE constraint failed|SQLITE_CONSTRAINT_PRIMARYKEY/i.test(message)) {
116
+ throw new ConnectError(`Environment ${req.environmentId} is already linked to workspace ${req.workspaceId}`, Code.InvalidArgument);
117
+ }
118
+ throw err;
119
+ }
120
+ emit("workspace.updated", { workspaceId: req.workspaceId });
121
+ logger.info({ workspaceId: req.workspaceId, environmentId: req.environmentId }, "Environment linked to workspace");
122
+ return workspaceRowToProto(workspace);
123
+ }
124
+ /** Remove a linked environment from a workspace's pool. */
125
+ export async function unlinkEnvironment(req) {
126
+ const workspace = workspaceStore.getWorkspace(req.workspaceId);
127
+ if (!workspace) {
128
+ throw new ConnectError(`Workspace not found: ${req.workspaceId}`, Code.NotFound);
129
+ }
130
+ if (!workspaceEnvironmentLinkStore.isLinked(req.workspaceId, req.environmentId)) {
131
+ throw new ConnectError(`Environment ${req.environmentId} is not linked to workspace ${req.workspaceId}`, Code.NotFound);
132
+ }
133
+ workspaceEnvironmentLinkStore.unlinkEnvironment(req.workspaceId, req.environmentId);
134
+ emit("workspace.updated", { workspaceId: req.workspaceId });
135
+ logger.info({ workspaceId: req.workspaceId, environmentId: req.environmentId }, "Environment unlinked from workspace");
136
+ return workspaceRowToProto(workspace);
137
+ }
89
138
  //# sourceMappingURL=workspace-handlers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-handlers.js","sourceRoot":"","sources":["../src/workspace-handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE,+DAA+D;AAC/D,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,GAAkC;IACrE,MAAM,IAAI,GAAG,cAAc,CAAC,cAAc,CAAC,GAAG,CAAC,aAAa,IAAI,SAAS,CAAC,CAAC;IAC3E,OAAO,MAAM,CAAC,OAAO,CAAC,mBAAmB,EAAE;QACzC,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC;KAC1C,CAAC,CAAC;AACL,CAAC;AAED,8BAA8B;AAC9B,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAmC;IACvE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QACvB,MAAM,IAAI,YAAY,CAAC,4BAA4B,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IAC7E,CAAC;IACD,MAAM,GAAG,GAAG,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC1D,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,YAAY,CAAC,0BAA0B,GAAG,CAAC,aAAa,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvF,CAAC;IACD,IAAI,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACjD,0EAA0E;IAC1E,IAAI,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC;QACpC,EAAE,GAAG,GAAG,EAAE,IAAI,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IACrC,CAAC;IACD,mDAAmD;IACnD,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,IAAI,IAAI,CAAC;IAC9C,cAAc,CAAC,eAAe,CAC5B,EAAE,EACF,GAAG,CAAC,IAAI,EACR,GAAG,CAAC,WAAW,EACf,GAAG,CAAC,OAAO,EACX,GAAG,CAAC,aAAa,EACjB,YAAY,EACZ,GAAG,CAAC,gBAAgB,IAAI,EAAE,EAC1B,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAC3B,CAAC;IACF,IAAI,CAAC,mBAAmB,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;IAC/C,MAAM,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,EAAE,mBAAmB,CAAC,CAAC;IACtD,MAAM,GAAG,GAAG,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IAC5C,OAAO,mBAAmB,CAAC,GAAI,CAAC,CAAC;AACnC,CAAC;AAED,6BAA6B;AAC7B,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,GAAwB;IACzD,MAAM,GAAG,GAAG,cAAc,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,YAAY,CAAC,wBAAwB,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,mBAAmB,CAAC,GAAG,CAAC,CAAC;AAClC,CAAC;AAED,2BAA2B;AAC3B,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,GAAwB;IAC7D,cAAc,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACxC,IAAI,CAAC,oBAAoB,EAAE,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;IACpD,MAAM,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,oBAAoB,CAAC,CAAC;IAC3D,OAAO,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AACzC,CAAC;AAED,mCAAmC;AACnC,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAmC;IACvE,MAAM,QAAQ,GAAG,cAAc,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACrD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,YAAY,CAAC,wBAAwB,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1E,CAAC;IACD,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAC5B,MAAM,IAAI,YAAY,CAAC,gCAAgC,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IACjF,CAAC;IACD,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,GAAG,CAAC,OAAO,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1F,MAAM,IAAI,YAAY,CAAC,8CAA8C,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IAC/F,CAAC;IACD,IAAI,GAAG,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QACpC,MAAM,GAAG,GAAG,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC1D,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,YAAY,CAAC,0BAA0B,GAAG,CAAC,aAAa,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvF,CAAC;IACH,CAAC;IACD,MAAM,GAAG,GAAG,cAAc,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,EAAE;QACjD,IAAI,EAAE,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS;QAC1D,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,YAAY,EAAE,GAAG,CAAC,YAAY,IAAI,SAAS;QAC3C,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;QACtC,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;KACvC,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,YAAY,CAAC,qCAAqC,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvF,CAAC;IACD,IAAI,CAAC,mBAAmB,EAAE,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;IACnD,OAAO,mBAAmB,CAAC,GAAG,CAAC,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"workspace-handlers.js","sourceRoot":"","sources":["../src/workspace-handlers.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@grackle-ai/core",
3
- "version": "0.92.3",
3
+ "version": "0.93.0",
4
4
  "description": "Core gRPC business logic for Grackle — RPC handlers, event system, streaming, session lifecycle",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -36,12 +36,12 @@
36
36
  "pino": "^10.3.1",
37
37
  "ulid": "^2.3.0",
38
38
  "uuid": "^11.0.0",
39
- "@grackle-ai/adapter-sdk": "0.92.3",
40
- "@grackle-ai/auth": "0.92.3",
41
- "@grackle-ai/common": "0.92.3",
42
- "@grackle-ai/database": "0.92.3",
43
- "@grackle-ai/knowledge": "0.92.3",
44
- "@grackle-ai/prompt": "0.92.3"
39
+ "@grackle-ai/adapter-sdk": "0.93.0",
40
+ "@grackle-ai/auth": "0.93.0",
41
+ "@grackle-ai/common": "0.93.0",
42
+ "@grackle-ai/knowledge": "0.93.0",
43
+ "@grackle-ai/database": "0.93.0",
44
+ "@grackle-ai/prompt": "0.93.0"
45
45
  },
46
46
  "devDependencies": {
47
47
  "@rushstack/heft": "1.2.7",