@grackle-ai/runtime-sdk 0.89.1 → 0.89.2

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.
@@ -1,6 +1,7 @@
1
1
  import type { AgentSession, AgentEvent, CreateSessionOptions } from "./runtime.js";
2
2
  import type { SessionStatus } from "@grackle-ai/common";
3
3
  import { AsyncQueue } from "./async-queue.js";
4
+ import type { ResolvedMcpConfig } from "./runtime-utils.js";
4
5
  /**
5
6
  * Abstract base class for agent sessions that use the eventQueue + waiting_input lifecycle.
6
7
  *
@@ -51,8 +52,12 @@ export declare abstract class BaseAgentSession implements AgentSession {
51
52
  /**
52
53
  * Perform resume-specific setup (e.g. resume thread, emit system message).
53
54
  * Called only when `resumeSessionId` is set.
55
+ *
56
+ * Default implementation pushes a "Session resumed" system event.
57
+ * Override in subclasses that need SDK-specific resume logic (e.g. resuming a thread),
58
+ * and call `super.setupForResume()` to preserve the system event.
54
59
  */
55
- protected abstract setupForResume(): Promise<void>;
60
+ protected setupForResume(): Promise<void>;
56
61
  /**
57
62
  * Run the initial query with the given prompt.
58
63
  * Should consume the SDK stream/query and push events to `eventQueue`.
@@ -80,6 +85,23 @@ export declare abstract class BaseAgentSession implements AgentSession {
80
85
  * override this to return just `this.prompt`.
81
86
  */
82
87
  protected buildInitialPrompt(): string;
88
+ /**
89
+ * Resolve the working directory for the session, delegating to `resolveWorkingDirectory`
90
+ * with the session's branch, workingDirectory, useWorktrees, and eventQueue fields.
91
+ */
92
+ protected resolveWorkDir(requireNonEmpty?: boolean): Promise<string | undefined>;
93
+ /** Resolve MCP server configuration from the session's mcpServers and mcpBroker. */
94
+ protected resolveMcp(): ResolvedMcpConfig;
95
+ /**
96
+ * Push a usage event with a standardized JSON shape.
97
+ * Skips the push when all values are zero (no meaningful usage to report).
98
+ */
99
+ protected pushUsageEvent(inputTokens: number, outputTokens: number, costUsd: number): void;
100
+ /**
101
+ * Set the runtime session ID and emit a `runtime_session_id` event.
102
+ * Idempotent: the event is only emitted on the first call with a non-empty ID.
103
+ */
104
+ protected setRuntimeSessionId(id: string): void;
83
105
  stream(): AsyncIterable<AgentEvent>;
84
106
  /** Core session logic: setup SDK, handle resume or initial query, transition to waiting_input. */
85
107
  private runSession;
@@ -1 +1 @@
1
- {"version":3,"file":"base-session.d.ts","sourceRoot":"","sources":["../src/base-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-session.d.ts","sourceRoot":"","sources":["../src/base-session.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { SESSION_STATUS } from "@grackle-ai/common";
2
2
  import { AsyncQueue } from "./async-queue.js";
3
+ import { resolveWorkingDirectory, resolveMcpServers } from "./runtime-utils.js";
3
4
  import { logger } from "./logger.js";
4
5
  /**
5
6
  * Abstract base class for agent sessions that use the eventQueue + waiting_input lifecycle.
@@ -49,6 +50,21 @@ export class BaseAgentSession {
49
50
  this.mcpBroker = opts.mcpBroker;
50
51
  this.runtimeSessionId = opts.resumeSessionId || "";
51
52
  }
53
+ /**
54
+ * Perform resume-specific setup (e.g. resume thread, emit system message).
55
+ * Called only when `resumeSessionId` is set.
56
+ *
57
+ * Default implementation pushes a "Session resumed" system event.
58
+ * Override in subclasses that need SDK-specific resume logic (e.g. resuming a thread),
59
+ * and call `super.setupForResume()` to preserve the system event.
60
+ */
61
+ async setupForResume() {
62
+ this.eventQueue.push({
63
+ type: "system",
64
+ timestamp: new Date().toISOString(),
65
+ content: `Session resumed (id: ${this.resumeSessionId})`,
66
+ });
67
+ }
52
68
  /**
53
69
  * Release SDK resources for garbage collection.
54
70
  * Called on kill and on fatal error. Default is a no-op.
@@ -66,6 +82,57 @@ export class BaseAgentSession {
66
82
  ? `${this.systemContext}\n\n---\n\n${this.prompt}`
67
83
  : this.prompt;
68
84
  }
85
+ // ─── Shared convenience helpers ─────────────────────────
86
+ /**
87
+ * Resolve the working directory for the session, delegating to `resolveWorkingDirectory`
88
+ * with the session's branch, workingDirectory, useWorktrees, and eventQueue fields.
89
+ */
90
+ async resolveWorkDir(requireNonEmpty) {
91
+ return resolveWorkingDirectory({
92
+ branch: this.branch,
93
+ workingDirectory: this.workingDirectory,
94
+ useWorktrees: this.useWorktrees,
95
+ eventQueue: this.eventQueue,
96
+ ...(requireNonEmpty ? { requireNonEmpty } : {}),
97
+ });
98
+ }
99
+ /** Resolve MCP server configuration from the session's mcpServers and mcpBroker. */
100
+ resolveMcp() {
101
+ return resolveMcpServers(this.mcpServers, this.mcpBroker);
102
+ }
103
+ /**
104
+ * Push a usage event with a standardized JSON shape.
105
+ * Skips the push when all values are zero (no meaningful usage to report).
106
+ */
107
+ pushUsageEvent(inputTokens, outputTokens, costUsd) {
108
+ if (inputTokens === 0 && outputTokens === 0 && costUsd === 0) {
109
+ return;
110
+ }
111
+ this.eventQueue.push({
112
+ type: "usage",
113
+ timestamp: new Date().toISOString(),
114
+ content: JSON.stringify({
115
+ input_tokens: inputTokens,
116
+ output_tokens: outputTokens,
117
+ cost_usd: costUsd,
118
+ }),
119
+ });
120
+ }
121
+ /**
122
+ * Set the runtime session ID and emit a `runtime_session_id` event.
123
+ * Idempotent: the event is only emitted on the first call with a non-empty ID.
124
+ */
125
+ setRuntimeSessionId(id) {
126
+ const wasEmpty = !this.runtimeSessionId;
127
+ this.runtimeSessionId = id;
128
+ if (wasEmpty && id) {
129
+ this.eventQueue.push({
130
+ type: "runtime_session_id",
131
+ timestamp: new Date().toISOString(),
132
+ content: id,
133
+ });
134
+ }
135
+ }
69
136
  // ─── Shared lifecycle implementation ──────────────────────
70
137
  async *stream() {
71
138
  const ts = () => new Date().toISOString();
@@ -1 +1 @@
1
- {"version":3,"file":"base-session.js","sourceRoot":"","sources":["../src/base-session.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAgB,gBAAgB;IAC7B,EAAE,CAAS;IAEX,gBAAgB,CAAS;IACzB,MAAM,GAAkB,cAAc,CAAC,OAAO,CAAC;IAEnC,UAAU,GAA2B,IAAI,UAAU,EAAc,CAAC;IACpE,UAAU,GAAuB,IAAI,UAAU,EAAU,CAAC;IACjE,MAAM,GAAY,KAAK,CAAC;IACf,MAAM,CAAS;IACf,KAAK,CAAS;IACd,QAAQ,CAAS;IACjB,eAAe,CAAU;IACzB,MAAM,CAAU;IAChB,gBAAgB,CAAU;IAC1B,YAAY,CAAU;IACtB,aAAa,CAAU;IACvB,UAAU,CAA2B;IACrC,KAAK,CAA2B;IAChC,SAAS,CAAkC;IAQ9D,YAAmB,IAA0B;QAC3C,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;QAClB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QAC5C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC9C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC;QAC9C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;QACxC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAChC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC;IACrD,CAAC;IAoCD;;;OAGG;IACO,gBAAgB;QACxB,mEAAmE;IACrE,CAAC;IAED;;;;OAIG;IACO,kBAAkB;QAC1B,OAAO,IAAI,CAAC,aAAa;YACvB,CAAC,CAAC,GAAG,IAAI,CAAC,aAAa,cAAc,IAAI,CAAC,MAAM,EAAE;YAClD,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;IAClB,CAAC;IAED,6DAA6D;IAEtD,KAAK,CAAC,CAAC,MAAM;QAClB,MAAM,EAAE,GAAiB,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAExD,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,YAAY,IAAI,CAAC,kBAAkB,aAAa,EAAE,CAAC;QAErG,sEAAsE;QACtE,mCAAmC;QACnC,IAAI,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YAC9B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC/E,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC7E,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC;YACrC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAC1C,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,kGAAkG;IAC1F,KAAK,CAAC,UAAU;QACtB,MAAM,EAAE,GAAiB,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAExD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;YAEtB,0EAA0E;YAC1E,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACzB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;gBAC5B,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC;gBAClC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;gBACpF,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,OAAO;YACT,CAAC;YAED,yCAAyC;YACzC,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAE9C,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YAE7D,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChB,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACxB,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;gBACxB,OAAO;YACT,CAAC;YAED,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;gBACvB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;YAC1F,CAAC;YAED,+DAA+D;YAC/D,gEAAgE;YAChE,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC;YAClC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;YACpF,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC;YACrC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC/E,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC7E,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,yEAAyE;IAClE,SAAS,CAAC,IAAY;QAC3B,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;YAC1C,OAAO;QACT,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,gBAAgB;QAC5B,MAAM,EAAE,GAAiB,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACxD,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACzC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChB,MAAM;YACR,CAAC;YACD,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC;YACrC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YAE9E,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YACnC,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACtB,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,wCAAwC,IAAI,CAAC,kBAAkB,UAAU,CAAC,CAAC;gBAChG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACjF,CAAC;YAED,mHAAmH;YACnH,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChB,MAAM;YACR,CAAC;YACD,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC;YAClC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;QACtF,CAAC;QAED,gDAAgD;QAChD,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAED,2DAA2D;IACnD,cAAc;QACpB,IAAI,CAAC,gBAAgB,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACpC,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACpC,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,yBAAyB,IAAI,CAAC,kBAAkB,UAAU,CAAC,CAAC;YAClF,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC;YACrC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC7E,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC3E,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YACxB,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,0FAA0F;IACnF,IAAI,CAAC,SAAiB,QAAQ;QACnC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC;QACrC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACxB,gFAAgF;QAChF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YACnB,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,OAAO,EAAE,MAAM;SAChB,CAAC,CAAC;QACH,kFAAkF;QAClF,+EAA+E;QAC/E,gEAAgE;QAChE,qDAAqD;QACrD,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAED,0EAA0E;IACnE,mBAAmB;QACxB,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;CACF"}
1
+ {"version":3,"file":"base-session.js","sourceRoot":"","sources":["../src/base-session.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -9,4 +9,5 @@ export type { GitExecutor, WorktreeFileSystem, WorktreeResult } from "./worktree
9
9
  export { ensureRuntimeInstalled, importFromRuntime, getRuntimeBinDirectory, isDevMode, } from "./runtime-installer.js";
10
10
  export type { RuntimeInstallOptions } from "./runtime-installer.js";
11
11
  export { logger } from "./logger.js";
12
+ export { drainUntilStatus } from "./test-helpers.js";
12
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,oBAAoB,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC9H,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EACL,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,aAAa,EACb,gBAAgB,EAChB,8BAA8B,EAC9B,iBAAiB,EACjB,YAAY,GACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EACL,cAAc,EACd,cAAc,EACd,WAAW,EACX,cAAc,GACf,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACrF,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,sBAAsB,EACtB,SAAS,GACV,MAAM,wBAAwB,CAAC;AAChC,YAAY,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,oBAAoB,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC9H,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EACL,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,aAAa,EACb,gBAAgB,EAChB,8BAA8B,EAC9B,iBAAiB,EACjB,YAAY,GACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EACL,cAAc,EACd,cAAc,EACd,WAAW,EACX,cAAc,GACf,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACrF,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,sBAAsB,EACtB,SAAS,GACV,MAAM,wBAAwB,CAAC;AAChC,YAAY,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC"}
package/dist/index.js CHANGED
@@ -5,4 +5,5 @@ export { AsyncQueue } from "./async-queue.js";
5
5
  export { ensureWorktree, removeWorktree, worktreeDir, sanitizeBranch, } from "./worktree.js";
6
6
  export { ensureRuntimeInstalled, importFromRuntime, getRuntimeBinDirectory, isDevMode, } from "./runtime-installer.js";
7
7
  export { logger } from "./logger.js";
8
+ export { drainUntilStatus } from "./test-helpers.js";
8
9
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EACL,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAQ5B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EACL,cAAc,EACd,cAAc,EACd,WAAW,EACX,cAAc,GACf,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,sBAAsB,EACtB,SAAS,GACV,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EACL,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAQ5B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EACL,cAAc,EACd,cAAc,EACd,WAAW,EACX,cAAc,GACf,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,sBAAsB,EACtB,SAAS,GACV,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { AgentEvent } from "./runtime.js";
2
+ /**
3
+ * Drain events from an async iterator until a status event with the given content.
4
+ *
5
+ * Shared test utility used across all runtime test suites. Collects all events
6
+ * up to and including the matching status event, or throws if the stream ends
7
+ * before the expected status is found.
8
+ */
9
+ export declare function drainUntilStatus(nextEvent: () => Promise<AgentEvent | undefined>, statusContent: string): Promise<AgentEvent[]>;
10
+ //# sourceMappingURL=test-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-helpers.d.ts","sourceRoot":"","sources":["../src/test-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,MAAM,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,EAChD,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,UAAU,EAAE,CAAC,CAavB"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Drain events from an async iterator until a status event with the given content.
3
+ *
4
+ * Shared test utility used across all runtime test suites. Collects all events
5
+ * up to and including the matching status event, or throws if the stream ends
6
+ * before the expected status is found.
7
+ */
8
+ export async function drainUntilStatus(nextEvent, statusContent) {
9
+ const collected = [];
10
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- loop until match
11
+ while (true) {
12
+ const event = await nextEvent();
13
+ if (!event) {
14
+ throw new Error(`Stream ended before status "${statusContent}"`);
15
+ }
16
+ collected.push(event);
17
+ if (event.type === "status" && event.content === statusContent) {
18
+ return collected;
19
+ }
20
+ }
21
+ }
22
+ //# sourceMappingURL=test-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-helpers.js","sourceRoot":"","sources":["../src/test-helpers.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,SAAgD,EAChD,aAAqB;IAErB,MAAM,SAAS,GAAiB,EAAE,CAAC;IACnC,2FAA2F;IAC3F,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,KAAK,GAAG,MAAM,SAAS,EAAE,CAAC;QAChC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,+BAA+B,aAAa,GAAG,CAAC,CAAC;QACnE,CAAC;QACD,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,KAAK,aAAa,EAAE,CAAC;YAC/D,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@grackle-ai/runtime-sdk",
3
- "version": "0.89.1",
3
+ "version": "0.89.2",
4
4
  "description": "Grackle runtime SDK — interfaces, base classes, shared utilities, and runtime installer",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -30,7 +30,7 @@
30
30
  "dependencies": {
31
31
  "@modelcontextprotocol/sdk": "^1.27.0",
32
32
  "pino": "^10.3.1",
33
- "@grackle-ai/common": "0.89.1"
33
+ "@grackle-ai/common": "0.89.2"
34
34
  },
35
35
  "devDependencies": {
36
36
  "@rushstack/heft": "1.2.7",