@gobing-ai/spur 0.3.32 → 0.3.33

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 (2) hide show
  1. package/package.json +9 -9
  2. package/spur.js +320 -187
package/spur.js CHANGED
@@ -47,7 +47,7 @@ var __export = (target, all) => {
47
47
  var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
48
48
  var __require = import.meta.require;
49
49
 
50
- // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.18/node_modules/@gobing-ai/ts-utils/dist/errors.js
50
+ // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.19/node_modules/@gobing-ai/ts-utils/dist/errors.js
51
51
  var ErrorCode;
52
52
  var init_errors = __esm(() => {
53
53
  ErrorCode = {
@@ -58,7 +58,7 @@ var init_errors = __esm(() => {
58
58
  };
59
59
  });
60
60
 
61
- // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.18/node_modules/@gobing-ai/ts-utils/dist/api-response.js
61
+ // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.19/node_modules/@gobing-ai/ts-utils/dist/api-response.js
62
62
  var API_ERROR_CODES, ERROR_CODE_TO_HTTP, CLIENT_SAFE_CODES;
63
63
  var init_api_response = __esm(() => {
64
64
  init_errors();
@@ -81,10 +81,10 @@ var init_api_response = __esm(() => {
81
81
  CLIENT_SAFE_CODES = new Set([ErrorCode.NotFound, ErrorCode.Validation, ErrorCode.Conflict]);
82
82
  });
83
83
 
84
- // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.18/node_modules/@gobing-ai/ts-utils/dist/cursor.js
84
+ // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.19/node_modules/@gobing-ai/ts-utils/dist/cursor.js
85
85
  var init_cursor = () => {};
86
86
 
87
- // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.18/node_modules/@gobing-ai/ts-utils/dist/object.js
87
+ // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.19/node_modules/@gobing-ai/ts-utils/dist/object.js
88
88
  function isPlainObject(value) {
89
89
  return typeof value === "object" && value !== null && !Array.isArray(value);
90
90
  }
@@ -102,7 +102,7 @@ function deepMerge(target, source) {
102
102
  return result;
103
103
  }
104
104
 
105
- // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.18/node_modules/@gobing-ai/ts-utils/dist/output.js
105
+ // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.19/node_modules/@gobing-ai/ts-utils/dist/output.js
106
106
  function processStream(name) {
107
107
  const proc = globalThis.process;
108
108
  const stream = proc?.[name];
@@ -123,7 +123,7 @@ function echoError(message, target = defaultStderrTarget ?? processStream("stder
123
123
  }
124
124
  var defaultStdoutTarget, defaultStderrTarget;
125
125
 
126
- // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.18/node_modules/@gobing-ai/ts-utils/dist/index.js
126
+ // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.19/node_modules/@gobing-ai/ts-utils/dist/index.js
127
127
  var init_dist = __esm(() => {
128
128
  init_api_response();
129
129
  init_cursor();
@@ -21745,7 +21745,7 @@ var init_zod = __esm(() => {
21745
21745
  init_external();
21746
21746
  });
21747
21747
 
21748
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+3ba223a3e166c92f/node_modules/@gobing-ai/ts-runtime/dist/config.js
21748
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+1d5c5fe73da9d0ae/node_modules/@gobing-ai/ts-runtime/dist/config.js
21749
21749
  function getProcessEnv() {
21750
21750
  return process.env;
21751
21751
  }
@@ -21823,7 +21823,7 @@ var init_config = __esm(() => {
21823
21823
  };
21824
21824
  });
21825
21825
 
21826
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+3ba223a3e166c92f/node_modules/@gobing-ai/ts-runtime/dist/file-system-node.js
21826
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+1d5c5fe73da9d0ae/node_modules/@gobing-ai/ts-runtime/dist/file-system-node.js
21827
21827
  import { appendFileSync, cpSync, createReadStream, createWriteStream, existsSync, mkdirSync, readdirSync, readFileSync, realpathSync, renameSync, rmSync, statSync, writeFileSync } from "fs";
21828
21828
  import { dirname, resolve as resolvePath } from "path";
21829
21829
  function createNodeFileSystem(root, paths) {
@@ -21910,7 +21910,7 @@ function findProjectRoot(startDir) {
21910
21910
  }
21911
21911
  var init_file_system_node = () => {};
21912
21912
 
21913
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+3ba223a3e166c92f/node_modules/@gobing-ai/ts-runtime/dist/db-errors.js
21913
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+1d5c5fe73da9d0ae/node_modules/@gobing-ai/ts-runtime/dist/db-errors.js
21914
21914
  var DbModuleNotInstalledError;
21915
21915
  var init_db_errors = __esm(() => {
21916
21916
  DbModuleNotInstalledError = class DbModuleNotInstalledError extends Error {
@@ -22521,7 +22521,7 @@ var init_figures = __esm(() => {
22521
22521
  replacements = Object.entries(specialMainSymbols);
22522
22522
  });
22523
22523
 
22524
- // ../../node_modules/.bun/yoctocolors@2.1.2/node_modules/yoctocolors/base.js
22524
+ // ../../node_modules/.bun/yoctocolors@2.2.0/node_modules/yoctocolors/base.js
22525
22525
  import tty from "tty";
22526
22526
  var hasColors, format = (open, close) => {
22527
22527
  if (!hasColors) {
@@ -22547,7 +22547,7 @@ var hasColors, format = (open, close) => {
22547
22547
  result += string4.slice(lastIndex) + closeCode;
22548
22548
  return result;
22549
22549
  };
22550
- }, reset, bold, dim, italic, underline, overline, inverse, hidden, strikethrough, black, red, green, yellow, blue, magenta, cyan, white, gray, bgBlack, bgRed, bgGreen, bgYellow, bgBlue, bgMagenta, bgCyan, bgWhite, bgGray, redBright, greenBright, yellowBright, blueBright, magentaBright, cyanBright, whiteBright, bgRedBright, bgGreenBright, bgYellowBright, bgBlueBright, bgMagentaBright, bgCyanBright, bgWhiteBright;
22550
+ }, reset, bold, dim, italic, underline, underlineDouble, underlineCurly, underlineDotted, underlineDashed, overline, inverse, hidden, strikethrough, black, red, green, yellow, blue, magenta, cyan, white, gray, bgBlack, bgRed, bgGreen, bgYellow, bgBlue, bgMagenta, bgCyan, bgWhite, bgGray, redBright, greenBright, yellowBright, blueBright, magentaBright, cyanBright, whiteBright, bgRedBright, bgGreenBright, bgYellowBright, bgBlueBright, bgMagentaBright, bgCyanBright, bgWhiteBright, underlineBlack, underlineRed, underlineGreen, underlineYellow, underlineBlue, underlineMagenta, underlineCyan, underlineWhite, underlineGray, underlineRedBright, underlineGreenBright, underlineYellowBright, underlineBlueBright, underlineMagentaBright, underlineCyanBright, underlineWhiteBright;
22551
22551
  var init_base = __esm(() => {
22552
22552
  hasColors = tty?.WriteStream?.prototype?.hasColors?.() ?? false;
22553
22553
  reset = format(0, 0);
@@ -22555,6 +22555,10 @@ var init_base = __esm(() => {
22555
22555
  dim = format(2, 22);
22556
22556
  italic = format(3, 23);
22557
22557
  underline = format(4, 24);
22558
+ underlineDouble = format("4:2", 24);
22559
+ underlineCurly = format("4:3", 24);
22560
+ underlineDotted = format("4:4", 24);
22561
+ underlineDashed = format("4:5", 24);
22558
22562
  overline = format(53, 55);
22559
22563
  inverse = format(7, 27);
22560
22564
  hidden = format(8, 28);
@@ -22591,9 +22595,25 @@ var init_base = __esm(() => {
22591
22595
  bgMagentaBright = format(105, 49);
22592
22596
  bgCyanBright = format(106, 49);
22593
22597
  bgWhiteBright = format(107, 49);
22594
- });
22595
-
22596
- // ../../node_modules/.bun/yoctocolors@2.1.2/node_modules/yoctocolors/index.js
22598
+ underlineBlack = format("58;5;0", 59);
22599
+ underlineRed = format("58;5;1", 59);
22600
+ underlineGreen = format("58;5;2", 59);
22601
+ underlineYellow = format("58;5;3", 59);
22602
+ underlineBlue = format("58;5;4", 59);
22603
+ underlineMagenta = format("58;5;5", 59);
22604
+ underlineCyan = format("58;5;6", 59);
22605
+ underlineWhite = format("58;5;7", 59);
22606
+ underlineGray = format("58;5;8", 59);
22607
+ underlineRedBright = format("58;5;9", 59);
22608
+ underlineGreenBright = format("58;5;10", 59);
22609
+ underlineYellowBright = format("58;5;11", 59);
22610
+ underlineBlueBright = format("58;5;12", 59);
22611
+ underlineMagentaBright = format("58;5;13", 59);
22612
+ underlineCyanBright = format("58;5;14", 59);
22613
+ underlineWhiteBright = format("58;5;15", 59);
22614
+ });
22615
+
22616
+ // ../../node_modules/.bun/yoctocolors@2.2.0/node_modules/yoctocolors/index.js
22597
22617
  var init_yoctocolors = __esm(() => {
22598
22618
  init_base();
22599
22619
  });
@@ -29101,7 +29121,7 @@ var init_execa = __esm(() => {
29101
29121
  } = getIpcExport());
29102
29122
  });
29103
29123
 
29104
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+3ba223a3e166c92f/node_modules/@gobing-ai/ts-runtime/dist/process-executor.js
29124
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+1d5c5fe73da9d0ae/node_modules/@gobing-ai/ts-runtime/dist/process-executor.js
29105
29125
  import { isatty } from "tty";
29106
29126
 
29107
29127
  class NodeProcessExecutor {
@@ -29371,12 +29391,13 @@ class BunPipeProcess {
29371
29391
  }
29372
29392
  }
29373
29393
  function buildExecaOptions(opts) {
29374
- const canStream = !opts.forceBuffered && opts.outputPolicy?.mode === "stream" && (opts.outputPolicy.isTTY ?? process.stdout.isTTY ?? isatty(1));
29394
+ const mode = opts.forceBuffered ? "buffered" : opts.outputPolicy?.mode ?? "buffered";
29395
+ const streamToTerminal = mode === "stream" && (opts.outputPolicy?.mode === "stream" ? opts.outputPolicy.isTTY ?? process.stdout.isTTY ?? isatty(1) : false);
29375
29396
  return {
29376
29397
  reject: opts.rejectOnError,
29377
29398
  stdin: "ignore",
29378
29399
  stripFinalNewline: true,
29379
- ...canStream ? { stdout: ["inherit", "pipe"], stderr: ["inherit", "pipe"] } : { all: true },
29400
+ ...mode === "pipe" ? { stdout: "pipe", stderr: "pipe" } : streamToTerminal ? { stdout: ["inherit", "pipe"], stderr: ["inherit", "pipe"] } : { all: true },
29380
29401
  ...opts.cwd !== undefined ? { cwd: opts.cwd } : {},
29381
29402
  ...opts.env !== undefined ? { env: opts.env } : {},
29382
29403
  ...opts.timeout !== undefined ? { timeout: opts.timeout } : {},
@@ -29439,7 +29460,7 @@ var init_process_executor = __esm(() => {
29439
29460
  init_execa();
29440
29461
  });
29441
29462
 
29442
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+3ba223a3e166c92f/node_modules/@gobing-ai/ts-runtime/dist/runtime-node-bun.js
29463
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+1d5c5fe73da9d0ae/node_modules/@gobing-ai/ts-runtime/dist/runtime-node-bun.js
29443
29464
  function getNodeFileSystem() {
29444
29465
  if (!_nodeFileSystem)
29445
29466
  _nodeFileSystem = createNodeFileSystem();
@@ -29499,7 +29520,7 @@ var init_runtime_node_bun = __esm(() => {
29499
29520
  };
29500
29521
  });
29501
29522
 
29502
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+3ba223a3e166c92f/node_modules/@gobing-ai/ts-runtime/dist/context.js
29523
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+1d5c5fe73da9d0ae/node_modules/@gobing-ai/ts-runtime/dist/context.js
29503
29524
  class RuntimeContext {
29504
29525
  scope;
29505
29526
  runtimeName;
@@ -29569,7 +29590,7 @@ var init_context = __esm(() => {
29569
29590
  init_runtime_node_bun();
29570
29591
  });
29571
29592
 
29572
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+3ba223a3e166c92f/node_modules/@gobing-ai/ts-runtime/dist/path.js
29593
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+1d5c5fe73da9d0ae/node_modules/@gobing-ai/ts-runtime/dist/path.js
29573
29594
  function normalizeSeparators(path6) {
29574
29595
  return path6.replaceAll("\\", "/");
29575
29596
  }
@@ -29630,17 +29651,17 @@ var init_path = __esm(() => {
29630
29651
  SEP = globalThis.process?.platform === "win32" ? "\\" : "/";
29631
29652
  });
29632
29653
 
29633
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+3ba223a3e166c92f/node_modules/@gobing-ai/ts-runtime/dist/schema-validation.js
29654
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+1d5c5fe73da9d0ae/node_modules/@gobing-ai/ts-runtime/dist/schema-validation.js
29634
29655
  var REMOTE_SCHEMA_MAX_BYTES;
29635
29656
  var init_schema_validation = __esm(() => {
29636
29657
  init_dist2();
29637
29658
  REMOTE_SCHEMA_MAX_BYTES = 5 * 1024 * 1024;
29638
29659
  });
29639
29660
 
29640
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+3ba223a3e166c92f/node_modules/@gobing-ai/ts-runtime/dist/types.js
29661
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+1d5c5fe73da9d0ae/node_modules/@gobing-ai/ts-runtime/dist/types.js
29641
29662
  var init_types = () => {};
29642
29663
 
29643
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+3ba223a3e166c92f/node_modules/@gobing-ai/ts-runtime/dist/index.js
29664
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+1d5c5fe73da9d0ae/node_modules/@gobing-ai/ts-runtime/dist/index.js
29644
29665
  var init_dist3 = __esm(() => {
29645
29666
  init_config();
29646
29667
  init_context();
@@ -29649,7 +29670,7 @@ var init_dist3 = __esm(() => {
29649
29670
  init_types();
29650
29671
  });
29651
29672
 
29652
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+3ba223a3e166c92f/node_modules/@gobing-ai/ts-runtime/dist/bun-sqlite.js
29673
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+1d5c5fe73da9d0ae/node_modules/@gobing-ai/ts-runtime/dist/bun-sqlite.js
29653
29674
  import { Database } from "bun:sqlite";
29654
29675
  var init_bun_sqlite = () => {};
29655
29676
 
@@ -33841,7 +33862,7 @@ var init_bun_sqlite2 = __esm(() => {
33841
33862
  init_session2();
33842
33863
  });
33843
33864
 
33844
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.18+c31add66cbc22fb3/node_modules/@gobing-ai/ts-db/dist/schema/inbox-messages.js
33865
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.19+035ffc9bc0428b94/node_modules/@gobing-ai/ts-db/dist/schema/inbox-messages.js
33845
33866
  var inboxMessages;
33846
33867
  var init_inbox_messages = __esm(() => {
33847
33868
  init_sqlite_core();
@@ -33860,7 +33881,7 @@ var init_inbox_messages = __esm(() => {
33860
33881
  }, (table2) => [index("idx_inbox_messages_to_status").on(table2.toId, table2.status)]);
33861
33882
  });
33862
33883
 
33863
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.18+c31add66cbc22fb3/node_modules/@gobing-ai/ts-db/dist/schema/common.js
33884
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.19+035ffc9bc0428b94/node_modules/@gobing-ai/ts-db/dist/schema/common.js
33864
33885
  function nowTimestamp() {
33865
33886
  return Date.now();
33866
33887
  }
@@ -33889,7 +33910,7 @@ var init_common3 = __esm(() => {
33889
33910
  appendOnlyColumns = buildAppendOnlyColumns();
33890
33911
  });
33891
33912
 
33892
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.18+c31add66cbc22fb3/node_modules/@gobing-ai/ts-db/dist/schema/queue-jobs.js
33913
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.19+035ffc9bc0428b94/node_modules/@gobing-ai/ts-db/dist/schema/queue-jobs.js
33893
33914
  var queueJobs;
33894
33915
  var init_queue_jobs = __esm(() => {
33895
33916
  init_sqlite_core();
@@ -33909,7 +33930,7 @@ var init_queue_jobs = __esm(() => {
33909
33930
  }, (table2) => [index("queue_jobs_ready_idx").on(table2.status, table2.nextRetryAt, table2.createdAt)]);
33910
33931
  });
33911
33932
 
33912
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.18+c31add66cbc22fb3/node_modules/@gobing-ai/ts-db/dist/schema/runtime.js
33933
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.19+035ffc9bc0428b94/node_modules/@gobing-ai/ts-db/dist/schema/runtime.js
33913
33934
  var exports_runtime = {};
33914
33935
  __export(exports_runtime, {
33915
33936
  queueJobs: () => queueJobs,
@@ -33920,7 +33941,7 @@ var init_runtime = __esm(() => {
33920
33941
  init_queue_jobs();
33921
33942
  });
33922
33943
 
33923
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.18+c31add66cbc22fb3/node_modules/@gobing-ai/ts-db/dist/adapters/bun-sqlite.js
33944
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.19+035ffc9bc0428b94/node_modules/@gobing-ai/ts-db/dist/adapters/bun-sqlite.js
33924
33945
  var exports_bun_sqlite = {};
33925
33946
  __export(exports_bun_sqlite, {
33926
33947
  BunSqliteAdapter: () => BunSqliteAdapter
@@ -34211,7 +34232,7 @@ var init_d1 = __esm(() => {
34211
34232
  init_session3();
34212
34233
  });
34213
34234
 
34214
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.18+c31add66cbc22fb3/node_modules/@gobing-ai/ts-db/dist/adapters/d1.js
34235
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.19+035ffc9bc0428b94/node_modules/@gobing-ai/ts-db/dist/adapters/d1.js
34215
34236
  var exports_d1 = {};
34216
34237
  __export(exports_d1, {
34217
34238
  D1Adapter: () => D1Adapter
@@ -34275,7 +34296,7 @@ var init_d12 = __esm(() => {
34275
34296
  init_runtime();
34276
34297
  });
34277
34298
 
34278
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.18+c31add66cbc22fb3/node_modules/@gobing-ai/ts-db/dist/adapter.js
34299
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.19+035ffc9bc0428b94/node_modules/@gobing-ai/ts-db/dist/adapter.js
34279
34300
  async function createDbAdapter(config3) {
34280
34301
  switch (config3.driver) {
34281
34302
  case "bun-sqlite": {
@@ -34315,7 +34336,7 @@ var init_drizzle_orm = __esm(() => {
34315
34336
  init_view_common();
34316
34337
  });
34317
34338
 
34318
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.18+c31add66cbc22fb3/node_modules/@gobing-ai/ts-db/dist/query-spec.js
34339
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.19+035ffc9bc0428b94/node_modules/@gobing-ai/ts-db/dist/query-spec.js
34319
34340
  function compilePredicate(predicate) {
34320
34341
  if ("and" in predicate) {
34321
34342
  const parts = predicate.and.map(compilePredicate).filter((p) => p !== undefined);
@@ -34353,7 +34374,7 @@ var init_query_spec = __esm(() => {
34353
34374
  };
34354
34375
  });
34355
34376
 
34356
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.18+c31add66cbc22fb3/node_modules/@gobing-ai/ts-db/dist/base-dao.js
34377
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.19+035ffc9bc0428b94/node_modules/@gobing-ai/ts-db/dist/base-dao.js
34357
34378
  function asSelectQuery(query) {
34358
34379
  return query;
34359
34380
  }
@@ -34395,7 +34416,7 @@ var init_base_dao = __esm(() => {
34395
34416
  init_query_spec();
34396
34417
  });
34397
34418
 
34398
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.18+c31add66cbc22fb3/node_modules/@gobing-ai/ts-db/dist/embedded-migrations.js
34419
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.19+035ffc9bc0428b94/node_modules/@gobing-ai/ts-db/dist/embedded-migrations.js
34399
34420
  var embeddedMigrations;
34400
34421
  var init_embedded_migrations = __esm(() => {
34401
34422
  embeddedMigrations = [
@@ -34427,7 +34448,7 @@ var init_embedded_migrations = __esm(() => {
34427
34448
  ];
34428
34449
  });
34429
34450
 
34430
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.18+c31add66cbc22fb3/node_modules/@gobing-ai/ts-db/dist/entity-dao.js
34451
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.19+035ffc9bc0428b94/node_modules/@gobing-ai/ts-db/dist/entity-dao.js
34431
34452
  var EntityDao;
34432
34453
  var init_entity_dao = __esm(() => {
34433
34454
  init_drizzle_orm();
@@ -34589,7 +34610,7 @@ var init_entity_dao = __esm(() => {
34589
34610
  };
34590
34611
  });
34591
34612
 
34592
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.18+c31add66cbc22fb3/node_modules/@gobing-ai/ts-db/dist/inbox-message-dao.js
34613
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.19+035ffc9bc0428b94/node_modules/@gobing-ai/ts-db/dist/inbox-message-dao.js
34593
34614
  function isPromiseLike(value) {
34594
34615
  return value !== null && (typeof value === "object" || typeof value === "function") && typeof value.then === "function";
34595
34616
  }
@@ -34762,7 +34783,7 @@ var init_migrator2 = __esm(() => {
34762
34783
  init_migrator();
34763
34784
  });
34764
34785
 
34765
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.18+c31add66cbc22fb3/node_modules/@gobing-ai/ts-db/dist/migrate.js
34786
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.19+035ffc9bc0428b94/node_modules/@gobing-ai/ts-db/dist/migrate.js
34766
34787
  async function ensureJournalTable(adapter, table3) {
34767
34788
  await adapter.exec(`CREATE TABLE IF NOT EXISTS "${table3}" (` + "id INTEGER PRIMARY KEY AUTOINCREMENT, " + "hash text NOT NULL, " + "created_at numeric" + ")");
34768
34789
  }
@@ -34837,7 +34858,7 @@ var init_migrate = __esm(() => {
34837
34858
  init_embedded_migrations();
34838
34859
  });
34839
34860
 
34840
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.18+c31add66cbc22fb3/node_modules/@gobing-ai/ts-db/dist/queue-job-dao.js
34861
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.19+035ffc9bc0428b94/node_modules/@gobing-ai/ts-db/dist/queue-job-dao.js
34841
34862
  var QueueJobDao;
34842
34863
  var init_queue_job_dao = __esm(() => {
34843
34864
  init_drizzle_orm();
@@ -34978,7 +34999,7 @@ var init_queue_job_dao = __esm(() => {
34978
34999
  };
34979
35000
  });
34980
35001
 
34981
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.18+c31add66cbc22fb3/node_modules/@gobing-ai/ts-db/dist/index.js
35002
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.19+035ffc9bc0428b94/node_modules/@gobing-ai/ts-db/dist/index.js
34982
35003
  var exports_dist = {};
34983
35004
  __export(exports_dist, {
34984
35005
  embeddedMigrations: () => embeddedMigrations,
@@ -37362,7 +37383,8 @@ var init_src = __esm(() => {
37362
37383
  executors: exports_external.array(AgentExecutorConfigSchema).optional(),
37363
37384
  "default-by-phase": exports_external.record(exports_external.string(), exports_external.string()).optional(),
37364
37385
  team: exports_external.record(exports_external.string(), TeamConfigSchema).optional(),
37365
- output: AgentOutputConfigSchema.optional()
37386
+ output: AgentOutputConfigSchema.optional(),
37387
+ sessionAffinity: exports_external.boolean().optional()
37366
37388
  }).superRefine((value, ctx) => {
37367
37389
  const executors = value.executors;
37368
37390
  if (executors !== undefined) {
@@ -37464,7 +37486,7 @@ var init_src = __esm(() => {
37464
37486
  });
37465
37487
  });
37466
37488
 
37467
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/config.js
37489
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/config.js
37468
37490
  function parseYamlObject(text3) {
37469
37491
  let parsed;
37470
37492
  try {
@@ -37591,7 +37613,7 @@ var init_config2 = __esm(() => {
37591
37613
  };
37592
37614
  });
37593
37615
 
37594
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/file-system-node.js
37616
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/file-system-node.js
37595
37617
  import { appendFileSync as appendFileSync3, cpSync as cpSync2, createReadStream as createReadStream3, createWriteStream as createWriteStream3, existsSync as existsSync2, mkdirSync as mkdirSync2, readdirSync as readdirSync2, readFileSync as readFileSync4, realpathSync as realpathSync2, renameSync as renameSync2, rmSync as rmSync2, statSync as statSync3, writeFileSync as writeFileSync3 } from "fs";
37596
37618
  import { dirname as dirname2, resolve as resolvePath3 } from "path";
37597
37619
  function createNodeFileSystem3(root, paths) {
@@ -37678,7 +37700,7 @@ function findProjectRoot3(startDir) {
37678
37700
  }
37679
37701
  var init_file_system_node2 = () => {};
37680
37702
 
37681
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/db-errors.js
37703
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/db-errors.js
37682
37704
  var D1NotConfiguredError2, DbModuleNotInstalledError3;
37683
37705
  var init_db_errors2 = __esm(() => {
37684
37706
  D1NotConfiguredError2 = class D1NotConfiguredError2 extends Error {
@@ -37695,7 +37717,7 @@ var init_db_errors2 = __esm(() => {
37695
37717
  };
37696
37718
  });
37697
37719
 
37698
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/file-system-cf.js
37720
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/file-system-cf.js
37699
37721
  function createCfFileSystem2() {
37700
37722
  return {
37701
37723
  getProjectRoot: () => "/bundle",
@@ -37734,7 +37756,7 @@ function createCfFileSystem2() {
37734
37756
  }
37735
37757
  var UNSUPPORTED = "FileSystem is not available on Cloudflare Workers. Use D1, KV, or R2 for persistent storage.";
37736
37758
 
37737
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/runtime-cf.js
37759
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/runtime-cf.js
37738
37760
  var exports_runtime_cf = {};
37739
37761
  __export(exports_runtime_cf, {
37740
37762
  cloudflareWorkersFactory: () => cloudflareWorkersFactory2
@@ -37772,7 +37794,7 @@ var init_runtime_cf = __esm(() => {
37772
37794
  };
37773
37795
  });
37774
37796
 
37775
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/process-executor.js
37797
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/process-executor.js
37776
37798
  import { isatty as isatty2 } from "tty";
37777
37799
 
37778
37800
  class NodeProcessExecutor3 {
@@ -38082,12 +38104,13 @@ class BunPipeProcessSpawner2 {
38082
38104
  }
38083
38105
  }
38084
38106
  function buildExecaOptions2(opts) {
38085
- const canStream = !opts.forceBuffered && opts.outputPolicy?.mode === "stream" && (opts.outputPolicy.isTTY ?? process.stdout.isTTY ?? isatty2(1));
38107
+ const mode = opts.forceBuffered ? "buffered" : opts.outputPolicy?.mode ?? "buffered";
38108
+ const streamToTerminal = mode === "stream" && (opts.outputPolicy?.mode === "stream" ? opts.outputPolicy.isTTY ?? process.stdout.isTTY ?? isatty2(1) : false);
38086
38109
  return {
38087
38110
  reject: opts.rejectOnError,
38088
38111
  stdin: "ignore",
38089
38112
  stripFinalNewline: true,
38090
- ...canStream ? { stdout: ["inherit", "pipe"], stderr: ["inherit", "pipe"] } : { all: true },
38113
+ ...mode === "pipe" ? { stdout: "pipe", stderr: "pipe" } : streamToTerminal ? { stdout: ["inherit", "pipe"], stderr: ["inherit", "pipe"] } : { all: true },
38091
38114
  ...opts.cwd !== undefined ? { cwd: opts.cwd } : {},
38092
38115
  ...opts.env !== undefined ? { env: opts.env } : {},
38093
38116
  ...opts.timeout !== undefined ? { timeout: opts.timeout } : {},
@@ -38157,7 +38180,7 @@ var init_process_executor2 = __esm(() => {
38157
38180
  ProcessExecutor2 = NodeProcessExecutor3;
38158
38181
  });
38159
38182
 
38160
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/runtime-node-bun.js
38183
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/runtime-node-bun.js
38161
38184
  var exports_runtime_node_bun = {};
38162
38185
  __export(exports_runtime_node_bun, {
38163
38186
  nodeBunFactory: () => nodeBunFactory3,
@@ -38225,7 +38248,7 @@ var init_runtime_node_bun2 = __esm(() => {
38225
38248
  };
38226
38249
  });
38227
38250
 
38228
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/platform.js
38251
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/platform.js
38229
38252
  function isCloudflareWorkerRuntime2() {
38230
38253
  return globalThis.navigator?.userAgent?.startsWith("Cloudflare-Workers") ?? false;
38231
38254
  }
@@ -38255,7 +38278,7 @@ function _resetRuntimeFactory2() {
38255
38278
  }
38256
38279
  var _factory, _runtimeName;
38257
38280
 
38258
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/context.js
38281
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/context.js
38259
38282
  class RuntimeContext2 {
38260
38283
  scope;
38261
38284
  runtimeName;
@@ -38345,7 +38368,7 @@ var init_context2 = __esm(() => {
38345
38368
  init_runtime_node_bun2();
38346
38369
  });
38347
38370
 
38348
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/path.js
38371
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/path.js
38349
38372
  function normalizeSeparators2(path7) {
38350
38373
  return path7.replaceAll("\\", "/");
38351
38374
  }
@@ -38468,7 +38491,7 @@ var init_path2 = __esm(() => {
38468
38491
  SEP2 = globalThis.process?.platform === "win32" ? "\\" : "/";
38469
38492
  });
38470
38493
 
38471
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/fs.js
38494
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/fs.js
38472
38495
  async function ensureDirForFile2(path7, fs2 = createNodeFileSystem3()) {
38473
38496
  await fs2.ensureDir(dirnamePath(path7));
38474
38497
  }
@@ -38519,7 +38542,7 @@ var init_fs = __esm(() => {
38519
38542
  init_path2();
38520
38543
  });
38521
38544
 
38522
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/process-registry.js
38545
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/process-registry.js
38523
38546
  function allocateId() {
38524
38547
  nextIdSeq += 1;
38525
38548
  return `pe_${Date.now().toString(36)}_${nextIdSeq.toString(36)}`;
@@ -38643,7 +38666,7 @@ function createInMemoryProcessRegistry2(options) {
38643
38666
  }
38644
38667
  var nextIdSeq = 0;
38645
38668
 
38646
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/runtime-paths.js
38669
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/runtime-paths.js
38647
38670
  function ambientRuntimePaths2() {
38648
38671
  const cwd = getProcessCwd2();
38649
38672
  return { cwd, home: getHomeDir() ?? cwd };
@@ -38653,7 +38676,7 @@ var init_runtime_paths = __esm(() => {
38653
38676
  init_path2();
38654
38677
  });
38655
38678
 
38656
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/schema-validation.js
38679
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/schema-validation.js
38657
38680
  async function loadStructuredConfig(path7, options = {}) {
38658
38681
  const content = await (options.fileSystem ?? createNodeFileSystem3()).readFile(path7);
38659
38682
  return await parseStructuredConfig(content, path7, options);
@@ -38930,10 +38953,10 @@ var init_schema_validation2 = __esm(() => {
38930
38953
  defaultResolve = typeof Bun !== "undefined" ? (specifier, from) => Bun.resolveSync(specifier, from) : undefined;
38931
38954
  });
38932
38955
 
38933
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/types.js
38956
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/types.js
38934
38957
  var init_types2 = () => {};
38935
38958
 
38936
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/index.js
38959
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/index.js
38937
38960
  var exports_dist2 = {};
38938
38961
  __export(exports_dist2, {
38939
38962
  writeJsonFile: () => writeJsonFile2,
@@ -41084,7 +41107,7 @@ var init_mod = __esm(() => {
41084
41107
  init_config3();
41085
41108
  });
41086
41109
 
41087
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/logger.js
41110
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/logger.js
41088
41111
  function toLogTapeLevel(level) {
41089
41112
  return level === "warn" ? "warning" : level;
41090
41113
  }
@@ -42637,7 +42660,7 @@ var require_src = __commonJS((exports) => {
42637
42660
  };
42638
42661
  });
42639
42662
 
42640
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/telemetry/sdk.js
42663
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/telemetry/sdk.js
42641
42664
  function getTelemetryConfig(configPartial = {}) {
42642
42665
  return {
42643
42666
  enabled: configPartial.enabled ?? CONFIG_DEFAULTS.enabled,
@@ -42673,7 +42696,7 @@ var init_sdk = __esm(() => {
42673
42696
  resolvedConfig = getTelemetryConfig();
42674
42697
  });
42675
42698
 
42676
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/telemetry/tracing.js
42699
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/telemetry/tracing.js
42677
42700
  function isSuppressed(tracer2) {
42678
42701
  return tracer2 === undefined && !getResolvedConfig().enabled;
42679
42702
  }
@@ -42713,7 +42736,7 @@ var init_tracing2 = __esm(() => {
42713
42736
  import_api2 = __toESM(require_src(), 1);
42714
42737
  });
42715
42738
 
42716
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/telemetry/metrics.js
42739
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/telemetry/metrics.js
42717
42740
  function getMeter() {
42718
42741
  return import_api3.metrics.getMeter(METER_NAME, METER_VERSION);
42719
42742
  }
@@ -42810,7 +42833,7 @@ var init_metrics = __esm(() => {
42810
42833
  instruments = {};
42811
42834
  });
42812
42835
 
42813
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/event-bus/event-bus.js
42836
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/event-bus/event-bus.js
42814
42837
  function busLogger() {
42815
42838
  if (!_busLogger)
42816
42839
  _busLogger = getLogger2("event-bus");
@@ -43055,7 +43078,7 @@ var init_event_bus = __esm(() => {
43055
43078
  init_metrics();
43056
43079
  });
43057
43080
 
43058
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/event-bus/default-observers.js
43081
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/event-bus/default-observers.js
43059
43082
  function obsLogger() {
43060
43083
  if (!_obsLogger)
43061
43084
  _obsLogger = getLogger2("event-bus.observers");
@@ -43119,7 +43142,7 @@ var init_default_observers = __esm(() => {
43119
43142
  init_event_bus();
43120
43143
  });
43121
43144
 
43122
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/event-bus/file-observer.js
43145
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/event-bus/file-observer.js
43123
43146
  function parentDir(filePath) {
43124
43147
  const idx = filePath.lastIndexOf("/");
43125
43148
  return idx <= 0 ? "." : filePath.slice(0, idx);
@@ -43217,7 +43240,7 @@ var init_file_observer = __esm(() => {
43217
43240
  init_logger3();
43218
43241
  });
43219
43242
 
43220
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/internals/drain.js
43243
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/internals/drain.js
43221
43244
  function settleWithin(promise2, deadline) {
43222
43245
  const remaining = deadline - Date.now();
43223
43246
  if (remaining <= 0)
@@ -43232,7 +43255,7 @@ function settleWithin(promise2, deadline) {
43232
43255
  return settled;
43233
43256
  }
43234
43257
 
43235
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/scheduler/node.js
43258
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/scheduler/node.js
43236
43259
  function parseInterval(cron) {
43237
43260
  const trimmed = cron.trim();
43238
43261
  const num = Number(trimmed);
@@ -43325,7 +43348,7 @@ var init_node3 = __esm(() => {
43325
43348
  init_metrics();
43326
43349
  });
43327
43350
 
43328
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/scheduler-node.js
43351
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/scheduler-node.js
43329
43352
  var exports_scheduler_node = {};
43330
43353
  __export(exports_scheduler_node, {
43331
43354
  NodeSchedulerAdapter: () => NodeSchedulerAdapter
@@ -51465,7 +51488,7 @@ var init_drizzle_zod = __esm(() => {
51465
51488
  };
51466
51489
  });
51467
51490
 
51468
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.18+c31add66cbc22fb3/node_modules/@gobing-ai/ts-db/dist/schema/drizzle-internals.js
51491
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.19+035ffc9bc0428b94/node_modules/@gobing-ai/ts-db/dist/schema/drizzle-internals.js
51469
51492
  function sqlExpressionToText(value) {
51470
51493
  if (typeof value !== "object" || value === null || !("queryChunks" in value)) {
51471
51494
  return;
@@ -51488,7 +51511,7 @@ function getDrizzleTableName(table3) {
51488
51511
  return String(table3[nameSym]);
51489
51512
  }
51490
51513
 
51491
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.18+c31add66cbc22fb3/node_modules/@gobing-ai/ts-db/dist/schema/ddl.js
51514
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.19+035ffc9bc0428b94/node_modules/@gobing-ai/ts-db/dist/schema/ddl.js
51492
51515
  function quoteIdent(name) {
51493
51516
  return `"${name.replace(/"/g, '""')}"`;
51494
51517
  }
@@ -51582,7 +51605,7 @@ var init_ddl = __esm(() => {
51582
51605
  init_sqlite_core();
51583
51606
  });
51584
51607
 
51585
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.18+c31add66cbc22fb3/node_modules/@gobing-ai/ts-db/dist/schema/define-table.js
51608
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.19+035ffc9bc0428b94/node_modules/@gobing-ai/ts-db/dist/schema/define-table.js
51586
51609
  function defineTable(name, columns2) {
51587
51610
  const table3 = sqliteTable(name, columns2);
51588
51611
  let insert2;
@@ -51616,7 +51639,7 @@ var init_define_table = __esm(() => {
51616
51639
  init_ddl();
51617
51640
  });
51618
51641
 
51619
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.18+c31add66cbc22fb3/node_modules/@gobing-ai/ts-db/dist/schema/index.js
51642
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.19+035ffc9bc0428b94/node_modules/@gobing-ai/ts-db/dist/schema/index.js
51620
51643
  var init_schema = __esm(() => {
51621
51644
  init_sqlite_core();
51622
51645
  init_define_table();
@@ -52241,7 +52264,7 @@ var init_dao = __esm(() => {
52241
52264
  init_workspace_dao();
52242
52265
  });
52243
52266
 
52244
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/errors.js
52267
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/errors.js
52245
52268
  var WorkflowValidationError, FSMError, RunCollisionError, WorkflowResumeError;
52246
52269
  var init_errors6 = __esm(() => {
52247
52270
  WorkflowValidationError = class WorkflowValidationError extends Error {
@@ -52276,12 +52299,12 @@ var init_errors6 = __esm(() => {
52276
52299
  };
52277
52300
  });
52278
52301
 
52279
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/event-bus/index.js
52302
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/event-bus/index.js
52280
52303
  var init_event_bus2 = __esm(() => {
52281
52304
  init_event_bus();
52282
52305
  });
52283
52306
 
52284
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/api-client.js
52307
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/api-client.js
52285
52308
  function sanitizeUrlForObservability(url2) {
52286
52309
  try {
52287
52310
  const parsed = new URL(url2);
@@ -52511,12 +52534,12 @@ var init_api_client = __esm(() => {
52511
52534
  };
52512
52535
  });
52513
52536
 
52514
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/telemetry/index.js
52537
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/telemetry/index.js
52515
52538
  var init_telemetry = __esm(() => {
52516
52539
  init_tracing2();
52517
52540
  });
52518
52541
 
52519
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/index.js
52542
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/index.js
52520
52543
  var init_dist6 = __esm(() => {
52521
52544
  init_api_client();
52522
52545
  init_event_bus2();
@@ -52524,7 +52547,7 @@ var init_dist6 = __esm(() => {
52524
52547
  init_telemetry();
52525
52548
  });
52526
52549
 
52527
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/run-lifecycle.js
52550
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/run-lifecycle.js
52528
52551
  function runtimeBuiltins(workflowName, stateOrNodeId, runId, transitionsTaken, mode) {
52529
52552
  return {
52530
52553
  workflow: workflowName,
@@ -52783,7 +52806,7 @@ var init_run_lifecycle = __esm(() => {
52783
52806
  ];
52784
52807
  });
52785
52808
 
52786
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/schema.js
52809
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/schema.js
52787
52810
  var RESERVED_VAR_NAMES, IDENTIFIER, VarsSchema, EnvSchema, ActionDefSchema, GuardDefSchema, StateMachineWorkflowDefSchema, TransitionFlowWorkflowDefSchema, WorkflowDefSchema;
52788
52811
  var init_schema2 = __esm(() => {
52789
52812
  init_zod();
@@ -52868,7 +52891,7 @@ var init_schema2 = __esm(() => {
52868
52891
  WorkflowDefSchema = exports_external.union([StateMachineWorkflowDefSchema, TransitionFlowWorkflowDefSchema]);
52869
52892
  });
52870
52893
 
52871
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/config.js
52894
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/config.js
52872
52895
  async function loadWorkflowDef(path9, options = {}) {
52873
52896
  return parseWorkflowDef(await loadStructuredConfig(path9, options), path9);
52874
52897
  }
@@ -53035,7 +53058,7 @@ var init_config4 = __esm(() => {
53035
53058
  RUNTIME_TEMPLATE_NAMESPACES = new Set(RUNTIME_BUILTIN_KEYS);
53036
53059
  });
53037
53060
 
53038
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/extension/capability-registry.js
53061
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/extension/capability-registry.js
53039
53062
  class CapabilityRegistry {
53040
53063
  kind;
53041
53064
  capabilities = new Map;
@@ -53066,7 +53089,7 @@ class CapabilityRegistry {
53066
53089
  }
53067
53090
  }
53068
53091
 
53069
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/extension/extension-path.js
53092
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/extension/extension-path.js
53070
53093
  function assertRelativeExtensionPath(path9, options = {}) {
53071
53094
  const where = options.sourceName !== undefined ? ` declared by "${options.sourceName}"` : "";
53072
53095
  if (/^([/\\]|[A-Za-z]:[/\\])/.test(path9)) {
@@ -53077,20 +53100,20 @@ function assertRelativeExtensionPath(path9, options = {}) {
53077
53100
  }
53078
53101
  }
53079
53102
 
53080
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/extension/extension-loader.js
53103
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/extension/extension-loader.js
53081
53104
  var init_extension_loader = () => {};
53082
53105
 
53083
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/extension/index.js
53106
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/extension/index.js
53084
53107
  var init_extension = __esm(() => {
53085
53108
  init_extension_loader();
53086
53109
  });
53087
53110
 
53088
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.18+0c3519262b4dbb18/node_modules/@gobing-ai/ts-runtime/dist/extension.js
53111
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.19+e40533aaad760d62/node_modules/@gobing-ai/ts-runtime/dist/extension.js
53089
53112
  var init_extension2 = __esm(() => {
53090
53113
  init_extension();
53091
53114
  });
53092
53115
 
53093
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/host.js
53116
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/host.js
53094
53117
  class WorkflowEngineHost {
53095
53118
  lifecycleBus;
53096
53119
  actions = new CapabilityRegistry("workflow action");
@@ -53259,7 +53282,7 @@ var init_host = __esm(() => {
53259
53282
  init_errors6();
53260
53283
  });
53261
53284
 
53262
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/schema-sql.js
53285
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/schema-sql.js
53263
53286
  var WORKFLOW_ENGINE_SCHEMA_SQL;
53264
53287
  var init_schema_sql = __esm(() => {
53265
53288
  WORKFLOW_ENGINE_SCHEMA_SQL = `
@@ -53332,7 +53355,7 @@ CREATE TABLE IF NOT EXISTS action_runs (
53332
53355
  `.trim();
53333
53356
  });
53334
53357
 
53335
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/persistence.js
53358
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/persistence.js
53336
53359
  async function applyWorkflowEngineSchema(db2) {
53337
53360
  for (const statement of WORKFLOW_ENGINE_SCHEMA_SQL.split(";")) {
53338
53361
  const sql4 = statement.trim();
@@ -53621,7 +53644,7 @@ var init_persistence = __esm(() => {
53621
53644
  init_schema_sql();
53622
53645
  });
53623
53646
 
53624
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/variables.js
53647
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/variables.js
53625
53648
  function mergeVars(workflowVars = {}, overrideVars = {}) {
53626
53649
  return { ...workflowVars, ...overrideVars };
53627
53650
  }
@@ -53681,7 +53704,7 @@ var init_variables = __esm(() => {
53681
53704
  TEMPLATE_REF = /\$\{([^}]+)\}/g;
53682
53705
  });
53683
53706
 
53684
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/action-step.js
53707
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/action-step.js
53685
53708
  async function runActionStep(action, vars, deps) {
53686
53709
  const { host, persistence, lifecycle, stateOrNodeId, runId } = deps;
53687
53710
  const resolved = resolveTemplates(action.options ?? {}, {
@@ -53739,7 +53762,7 @@ var init_action_step = __esm(() => {
53739
53762
  init_variables();
53740
53763
  });
53741
53764
 
53742
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/state-machine.js
53765
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/state-machine.js
53743
53766
  class StateMachineDriver {
53744
53767
  options;
53745
53768
  constructor(options) {
@@ -53875,7 +53898,7 @@ var init_state_machine = __esm(() => {
53875
53898
  EMPTY_OUTCOME = { outcome: "completed", result: undefined };
53876
53899
  });
53877
53900
 
53878
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/transition-flow.js
53901
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/transition-flow.js
53879
53902
  class TransitionFlowDriver {
53880
53903
  options;
53881
53904
  constructor(options) {
@@ -53994,7 +54017,7 @@ var init_transition_flow = __esm(() => {
53994
54017
  init_variables();
53995
54018
  });
53996
54019
 
53997
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/service.js
54020
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/service.js
53998
54021
  class WorkflowService {
53999
54022
  host;
54000
54023
  persistence;
@@ -54211,7 +54234,7 @@ var init_service = __esm(() => {
54211
54234
  init_variables();
54212
54235
  });
54213
54236
 
54214
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/index.js
54237
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/index.js
54215
54238
  var init_dist7 = __esm(() => {
54216
54239
  init_config4();
54217
54240
  init_host();
@@ -54220,7 +54243,7 @@ var init_dist7 = __esm(() => {
54220
54243
  init_service();
54221
54244
  });
54222
54245
 
54223
- // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.18+d5c29f764bf0e6e0/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/hash.js
54246
+ // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.19+d5c29f764bf0e6e0/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/hash.js
54224
54247
  import { createHash } from "crypto";
54225
54248
  function stableJson(value) {
54226
54249
  if (Array.isArray(value)) {
@@ -54237,7 +54260,7 @@ function sha256(value) {
54237
54260
  }
54238
54261
  var init_hash = () => {};
54239
54262
 
54240
- // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.18+d5c29f764bf0e6e0/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/errors.js
54263
+ // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.19+d5c29f764bf0e6e0/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/errors.js
54241
54264
  var HistoryImportError;
54242
54265
  var init_errors7 = __esm(() => {
54243
54266
  HistoryImportError = class HistoryImportError extends Error {
@@ -54250,7 +54273,7 @@ var init_errors7 = __esm(() => {
54250
54273
  };
54251
54274
  });
54252
54275
 
54253
- // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.18+d5c29f764bf0e6e0/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/schema-sql.js
54276
+ // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.19+d5c29f764bf0e6e0/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/schema-sql.js
54254
54277
  var HISTORY_IMPORT_SCHEMA_SQL;
54255
54278
  var init_schema_sql2 = __esm(() => {
54256
54279
  HISTORY_IMPORT_SCHEMA_SQL = `
@@ -54337,7 +54360,7 @@ CREATE TABLE IF NOT EXISTS history_etl_openclaw (
54337
54360
  `.trim();
54338
54361
  });
54339
54362
 
54340
- // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.18+d5c29f764bf0e6e0/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/sources.js
54363
+ // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.19+d5c29f764bf0e6e0/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/sources.js
54341
54364
  function firstString(...values) {
54342
54365
  for (const value of values) {
54343
54366
  if (typeof value === "string" && value.length > 0)
@@ -54474,7 +54497,7 @@ var init_sources = __esm(() => {
54474
54497
  };
54475
54498
  });
54476
54499
 
54477
- // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.18+d5c29f764bf0e6e0/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/jsonl-importer-dao.js
54500
+ // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.19+d5c29f764bf0e6e0/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/jsonl-importer-dao.js
54478
54501
  function targetTableFor(table3) {
54479
54502
  if (!VALID_TABLE_NAME.test(table3)) {
54480
54503
  throw new HistoryImportError(`Invalid history ETL target table: ${table3}`, { table: table3 });
@@ -54547,7 +54570,7 @@ var init_jsonl_importer_dao = __esm(() => {
54547
54570
  init_sources();
54548
54571
  });
54549
54572
 
54550
- // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.18+d5c29f764bf0e6e0/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/redaction.js
54573
+ // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.19+d5c29f764bf0e6e0/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/redaction.js
54551
54574
  function redactValue(value, rules = DEFAULT_REDACTION_RULES) {
54552
54575
  if (typeof value === "string") {
54553
54576
  return rules.reduce((current, rule) => current.replace(rule.pattern, rule.replacement), value);
@@ -54584,7 +54607,7 @@ var init_redaction = __esm(() => {
54584
54607
  ];
54585
54608
  });
54586
54609
 
54587
- // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.18+d5c29f764bf0e6e0/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/importer.js
54610
+ // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.19+d5c29f764bf0e6e0/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/importer.js
54588
54611
  async function runJsonlImport(source, options) {
54589
54612
  const definition = resolveSourceDefinition(source);
54590
54613
  const resolvedSource = definition.source;
@@ -54774,13 +54797,13 @@ var init_importer = __esm(() => {
54774
54797
  init_sources();
54775
54798
  });
54776
54799
 
54777
- // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.18+d5c29f764bf0e6e0/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/index.js
54800
+ // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.19+d5c29f764bf0e6e0/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/index.js
54778
54801
  var init_dist8 = __esm(() => {
54779
54802
  init_importer();
54780
54803
  init_schema_sql2();
54781
54804
  });
54782
54805
 
54783
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/config/extensions.js
54806
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/config/extensions.js
54784
54807
  function collectExtensions(sourceName, sourceDir, extensions) {
54785
54808
  if (extensions === undefined)
54786
54809
  return [];
@@ -54796,7 +54819,7 @@ var init_extensions = __esm(() => {
54796
54819
  init_dist5();
54797
54820
  });
54798
54821
 
54799
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/types.js
54822
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/types.js
54800
54823
  function createFinding(rule, message, filePath, extras = {}) {
54801
54824
  return {
54802
54825
  ruleId: rule.id,
@@ -54867,7 +54890,7 @@ var init_types3 = __esm(() => {
54867
54890
  });
54868
54891
  });
54869
54892
 
54870
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/config/loader.js
54893
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/config/loader.js
54871
54894
  async function loadPreset(name, options) {
54872
54895
  const merged = await buildMergedRoots(options.roots.map((root) => resolvePath4(root)), options.fileSystem);
54873
54896
  const presetPath = findMergedPreset(merged, name);
@@ -55082,7 +55105,7 @@ var init_loader2 = __esm(() => {
55082
55105
  FIX_MODE_AUTHORITY = { none: 0, suggest: 1, auto: 2 };
55083
55106
  });
55084
55107
 
55085
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/fixers/test-stub-fixer.js
55108
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/fixers/test-stub-fixer.js
55086
55109
  function normalizeFindingPath(filePath) {
55087
55110
  if (!filePath || isAbsolutePath2(filePath))
55088
55111
  return null;
@@ -55147,7 +55170,7 @@ var init_test_stub_fixer = __esm(() => {
55147
55170
  realFileSystem = createNodeFileSystem3();
55148
55171
  });
55149
55172
 
55150
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/fixers/fixers.js
55173
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/fixers/fixers.js
55151
55174
  function registerBuiltinFixers(host, exec) {
55152
55175
  const regexFixer = new RegexFixerProvider;
55153
55176
  const pathFixer = new PathFixerProvider;
@@ -55350,7 +55373,10 @@ var init_fixers = __esm(() => {
55350
55373
  };
55351
55374
  });
55352
55375
 
55353
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.18+aa81d3e2be8bffb2/node_modules/@gobing-ai/ts-ai-runner/dist/agents/shims.js
55376
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.19+15c6896e8ddc6ea7/node_modules/@gobing-ai/ts-ai-runner/dist/agents/shims.js
55377
+ function getAgentSessionCapability(agent) {
55378
+ return AGENT_SESSION_CAPABILITY[agent];
55379
+ }
55354
55380
  function resolveAgentName(input) {
55355
55381
  if (isCanonicalName(input))
55356
55382
  return input;
@@ -55387,7 +55413,7 @@ function warnDeprecatedOrAlias(input, canonical) {
55387
55413
  logger2.warn(`agent '${input}' is an alias; resolving to canonical '${canonical}'`, { input, canonical });
55388
55414
  }
55389
55415
  }
55390
- var claudeShim, codexShim, geminiShim, piShim, opencodeShim, antigravityCliShim, openclawShim, hermesShim, ompShim, grokShim, AGENT_SHIMS, TIER1_PRIORITY, DISPLAY_ORDER, TIER2_AGENTS, logger2, ALIAS_TO_CANONICAL;
55416
+ var claudeShim, codexShim, geminiShim, piShim, opencodeShim, antigravityCliShim, openclawShim, hermesShim, ompShim, grokShim, AGENT_SHIMS, AGENT_SESSION_CAPABILITY, TIER1_PRIORITY, DISPLAY_ORDER, TIER2_AGENTS, logger2, ALIAS_TO_CANONICAL;
55391
55417
  var init_shims = __esm(() => {
55392
55418
  init_dist6();
55393
55419
  claudeShim = {
@@ -55398,8 +55424,13 @@ var init_shims = __esm(() => {
55398
55424
  getVersionCommand: () => ({ command: "claude", args: ["--version"] }),
55399
55425
  getPromptCommand: (options) => {
55400
55426
  const args = ["-p", options.input ?? ""];
55401
- if (options.continue === true)
55427
+ const hasSession = options.sessionId !== undefined || options.sessionDir !== undefined;
55428
+ if (hasSession) {
55429
+ if (options.sessionId !== undefined)
55430
+ args.push("--resume", options.sessionId);
55431
+ } else if (options.continue === true) {
55402
55432
  args.push("--continue");
55433
+ }
55403
55434
  if (options.model !== undefined)
55404
55435
  args.push("--model", options.model);
55405
55436
  args.push("--output-format", options.mode ?? "text");
@@ -55414,10 +55445,11 @@ var init_shims = __esm(() => {
55414
55445
  getHelpCommand: () => ({ command: "codex", args: ["--help"] }),
55415
55446
  getVersionCommand: () => ({ command: "codex", args: ["--version"] }),
55416
55447
  getPromptCommand: (options) => {
55417
- if (options.continue === true && options.input !== undefined) {
55448
+ const hasSession = options.sessionId !== undefined || options.sessionDir !== undefined;
55449
+ if (options.continue === true && !hasSession && options.input !== undefined) {
55418
55450
  throw new Error("Codex resume mode does not accept a new prompt");
55419
55451
  }
55420
- const args = options.continue === true ? ["exec", "resume", "--last"] : ["exec", options.input ?? ""];
55452
+ const args = options.continue === true && !hasSession ? ["exec", "resume", "--last"] : ["exec", options.input ?? ""];
55421
55453
  if (options.model !== undefined)
55422
55454
  args.push("-m", options.model);
55423
55455
  if ((options.mode ?? "text") === "json")
@@ -55452,11 +55484,16 @@ var init_shims = __esm(() => {
55452
55484
  getVersionCommand: () => ({ command: "pi", args: ["--version"] }),
55453
55485
  getPromptCommand: (options) => {
55454
55486
  const args = [];
55455
- if (options.continue !== true)
55487
+ const hasSession = options.sessionId !== undefined || options.sessionDir !== undefined;
55488
+ if (!hasSession && options.continue !== true)
55456
55489
  args.push("--no-session");
55457
55490
  args.push("-p", options.input ?? "");
55458
- if (options.continue === true)
55491
+ if (!hasSession && options.continue === true)
55459
55492
  args.push("-c");
55493
+ if (options.sessionDir !== undefined)
55494
+ args.push("--session-dir", options.sessionDir);
55495
+ if (options.sessionId !== undefined)
55496
+ args.push("-r", options.sessionId);
55460
55497
  if (options.model !== undefined)
55461
55498
  args.push("--model", options.model);
55462
55499
  args.push("--mode", options.mode ?? "text");
@@ -55491,8 +55528,13 @@ var init_shims = __esm(() => {
55491
55528
  getVersionCommand: () => ({ command: "agy", args: ["--version"] }),
55492
55529
  getPromptCommand: (options) => {
55493
55530
  const args = ["-p", options.input ?? ""];
55494
- if (options.continue === true)
55531
+ const hasSession = options.sessionId !== undefined || options.sessionDir !== undefined;
55532
+ if (hasSession) {
55533
+ if (options.sessionId !== undefined)
55534
+ args.push("--conversation", options.sessionId);
55535
+ } else if (options.continue === true) {
55495
55536
  args.push("--continue");
55537
+ }
55496
55538
  if (options.model !== undefined)
55497
55539
  args.push("--model", options.model);
55498
55540
  return { command: "agy", args };
@@ -55532,11 +55574,16 @@ var init_shims = __esm(() => {
55532
55574
  getVersionCommand: () => ({ command: "omp", args: ["--version"] }),
55533
55575
  getPromptCommand: (options) => {
55534
55576
  const args = [];
55535
- if (options.continue !== true)
55577
+ const hasSession = options.sessionId !== undefined || options.sessionDir !== undefined;
55578
+ if (!hasSession && options.continue !== true)
55536
55579
  args.push("--no-session");
55537
55580
  args.push("-p", options.input ?? "");
55538
- if (options.continue === true)
55581
+ if (!hasSession && options.continue === true)
55539
55582
  args.push("-c");
55583
+ if (options.sessionDir !== undefined)
55584
+ args.push("--session-dir", options.sessionDir);
55585
+ if (options.sessionId !== undefined)
55586
+ args.push("-r", options.sessionId);
55540
55587
  if (options.model !== undefined)
55541
55588
  args.push("--model", options.model);
55542
55589
  args.push("--mode", options.mode ?? "text");
@@ -55552,8 +55599,13 @@ var init_shims = __esm(() => {
55552
55599
  getVersionCommand: () => ({ command: "grok", args: ["--version"] }),
55553
55600
  getPromptCommand: (options) => {
55554
55601
  const args = ["-p", options.input ?? ""];
55555
- if (options.continue === true)
55602
+ const hasSession = options.sessionId !== undefined || options.sessionDir !== undefined;
55603
+ if (hasSession) {
55604
+ if (options.sessionId !== undefined)
55605
+ args.push("--resume", options.sessionId);
55606
+ } else if (options.continue === true) {
55556
55607
  args.push("-c");
55608
+ }
55557
55609
  if (options.model !== undefined)
55558
55610
  args.push("-m", options.model);
55559
55611
  const format2 = (options.mode ?? "text") === "json" ? "json" : "plain";
@@ -55574,6 +55626,18 @@ var init_shims = __esm(() => {
55574
55626
  omp: ompShim,
55575
55627
  grok: grokShim
55576
55628
  };
55629
+ AGENT_SESSION_CAPABILITY = {
55630
+ omp: { supportsResumeById: true, supportsSessionDir: true },
55631
+ pi: { supportsResumeById: true, supportsSessionDir: true },
55632
+ claude: { supportsResumeById: true, supportsSessionDir: false },
55633
+ codex: { supportsResumeById: false, supportsSessionDir: false },
55634
+ "antigravity-cli": { supportsResumeById: true, supportsSessionDir: false },
55635
+ grok: { supportsResumeById: true, supportsSessionDir: false },
55636
+ gemini: { supportsResumeById: false, supportsSessionDir: false },
55637
+ opencode: { supportsResumeById: false, supportsSessionDir: false },
55638
+ openclaw: { supportsResumeById: false, supportsSessionDir: false },
55639
+ hermes: { supportsResumeById: false, supportsSessionDir: false }
55640
+ };
55577
55641
  TIER1_PRIORITY = [
55578
55642
  "pi",
55579
55643
  "omp",
@@ -55601,7 +55665,7 @@ var init_shims = __esm(() => {
55601
55665
  ALIAS_TO_CANONICAL = Object.fromEntries(Object.values(AGENT_SHIMS).flatMap((shim) => (shim.aliases ?? []).map((alias3) => [alias3, shim.name])));
55602
55666
  });
55603
55667
 
55604
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.18+aa81d3e2be8bffb2/node_modules/@gobing-ai/ts-ai-runner/dist/identity.js
55668
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.19+15c6896e8ddc6ea7/node_modules/@gobing-ai/ts-ai-runner/dist/identity.js
55605
55669
  function buildIdentityPreamble(ctx) {
55606
55670
  const sections = [
55607
55671
  `You are agent \`${ctx.agentId}\` (${ctx.agentType}) in workspace \`${ctx.workspace}\`.`
@@ -55661,7 +55725,7 @@ var init_identity = __esm(() => {
55661
55725
  init_dist5();
55662
55726
  });
55663
55727
 
55664
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.18+aa81d3e2be8bffb2/node_modules/@gobing-ai/ts-ai-runner/dist/slash-command.js
55728
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.19+15c6896e8ddc6ea7/node_modules/@gobing-ai/ts-ai-runner/dist/slash-command.js
55665
55729
  function isClaudeStyleSlashCommand(input) {
55666
55730
  return SLASH_COMMAND_RE.test(input);
55667
55731
  }
@@ -55689,7 +55753,7 @@ var init_slash_command = __esm(() => {
55689
55753
  SLASH_COMMAND_RE = /^\/([a-zA-Z0-9._-]+):([a-zA-Z0-9._-]+)(\s.*)?$/;
55690
55754
  });
55691
55755
 
55692
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.18+aa81d3e2be8bffb2/node_modules/@gobing-ai/ts-ai-runner/dist/ai-runner.js
55756
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.19+15c6896e8ddc6ea7/node_modules/@gobing-ai/ts-ai-runner/dist/ai-runner.js
55693
55757
  function buildCorrelationEnv(correlation) {
55694
55758
  return {
55695
55759
  [AGENT_RUN_ID_ENV]: correlation.runId,
@@ -55825,7 +55889,7 @@ var init_ai_runner = __esm(() => {
55825
55889
  init_slash_command();
55826
55890
  });
55827
55891
 
55828
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.18+aa81d3e2be8bffb2/node_modules/@gobing-ai/ts-ai-runner/dist/agent-detector.js
55892
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.19+15c6896e8ddc6ea7/node_modules/@gobing-ai/ts-ai-runner/dist/agent-detector.js
55829
55893
  class AgentDetector {
55830
55894
  runner;
55831
55895
  timeout;
@@ -55901,7 +55965,7 @@ var init_agent_detector = __esm(() => {
55901
55965
  VERSION_PATTERN = /(?<version>\d+\.\d+(?:\.\d+)?)/;
55902
55966
  });
55903
55967
 
55904
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.18+aa81d3e2be8bffb2/node_modules/@gobing-ai/ts-ai-runner/dist/agent-spec.js
55968
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.19+15c6896e8ddc6ea7/node_modules/@gobing-ai/ts-ai-runner/dist/agent-spec.js
55905
55969
  function validateAgentId(id) {
55906
55970
  if (!/^[a-z][a-z0-9_-]{1,63}$/.test(id)) {
55907
55971
  throw new ValueError(`Invalid agent id "${id}": expected 2-64 chars, lowercase alphanumeric, "_" or "-"`);
@@ -55998,7 +56062,7 @@ var init_agent_spec = __esm(() => {
55998
56062
  };
55999
56063
  });
56000
56064
 
56001
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.18+aa81d3e2be8bffb2/node_modules/@gobing-ai/ts-ai-runner/dist/agents/auth-shims.js
56065
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.19+15c6896e8ddc6ea7/node_modules/@gobing-ai/ts-ai-runner/dist/agents/auth-shims.js
56002
56066
  function isNonEmpty(value) {
56003
56067
  return value !== undefined && value.trim().length > 0;
56004
56068
  }
@@ -56103,7 +56167,7 @@ var init_auth_shims = __esm(() => {
56103
56167
  };
56104
56168
  });
56105
56169
 
56106
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.18+aa81d3e2be8bffb2/node_modules/@gobing-ai/ts-ai-runner/dist/model-health-probe.js
56170
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.19+15c6896e8ddc6ea7/node_modules/@gobing-ai/ts-ai-runner/dist/model-health-probe.js
56107
56171
  class ModelHealthProbeRegistry {
56108
56172
  probes = new Map;
56109
56173
  register(providerPrefix, probe) {
@@ -56211,7 +56275,7 @@ var init_model_health_probe = __esm(() => {
56211
56275
  };
56212
56276
  });
56213
56277
 
56214
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.18+aa81d3e2be8bffb2/node_modules/@gobing-ai/ts-ai-runner/dist/doctor-runner.js
56278
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.19+15c6896e8ddc6ea7/node_modules/@gobing-ai/ts-ai-runner/dist/doctor-runner.js
56215
56279
  class DoctorRunner {
56216
56280
  detector;
56217
56281
  runner;
@@ -56348,15 +56412,15 @@ var init_doctor_runner = __esm(() => {
56348
56412
  init_model_health_probe();
56349
56413
  });
56350
56414
 
56351
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.18+aa81d3e2be8bffb2/node_modules/@gobing-ai/ts-ai-runner/dist/events.js
56415
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.19+15c6896e8ddc6ea7/node_modules/@gobing-ai/ts-ai-runner/dist/events.js
56352
56416
  var init_events = () => {};
56353
56417
 
56354
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.18+aa81d3e2be8bffb2/node_modules/@gobing-ai/ts-ai-runner/dist/messages.js
56418
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.19+15c6896e8ddc6ea7/node_modules/@gobing-ai/ts-ai-runner/dist/messages.js
56355
56419
  function formatMessage(msg) {
56356
56420
  return `[task from=${msg.fromId ?? "operator"} id=${msg.id}] ${msg.body}`;
56357
56421
  }
56358
56422
 
56359
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.18+aa81d3e2be8bffb2/node_modules/@gobing-ai/ts-ai-runner/dist/team-agent-process.js
56423
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.19+15c6896e8ddc6ea7/node_modules/@gobing-ai/ts-ai-runner/dist/team-agent-process.js
56360
56424
  import { Buffer as Buffer5 } from "buffer";
56361
56425
 
56362
56426
  class TeamAgentProcess {
@@ -56490,7 +56554,7 @@ var init_team_agent_process = __esm(() => {
56490
56554
  init_dist5();
56491
56555
  });
56492
56556
 
56493
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.18+aa81d3e2be8bffb2/node_modules/@gobing-ai/ts-ai-runner/dist/team-orchestrator.js
56557
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.19+15c6896e8ddc6ea7/node_modules/@gobing-ai/ts-ai-runner/dist/team-orchestrator.js
56494
56558
  class TeamOrchestrator {
56495
56559
  configDir;
56496
56560
  inbox;
@@ -56619,7 +56683,7 @@ var init_team_orchestrator = __esm(() => {
56619
56683
  init_team_agent_process();
56620
56684
  });
56621
56685
 
56622
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.18+aa81d3e2be8bffb2/node_modules/@gobing-ai/ts-ai-runner/dist/index.js
56686
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.19+15c6896e8ddc6ea7/node_modules/@gobing-ai/ts-ai-runner/dist/index.js
56623
56687
  var exports_dist3 = {};
56624
56688
  __export(exports_dist3, {
56625
56689
  validateAgentId: () => validateAgentId,
@@ -56632,6 +56696,7 @@ __export(exports_dist3, {
56632
56696
  isAgentName: () => isAgentName,
56633
56697
  getGitContext: () => getGitContext,
56634
56698
  getAgentShim: () => getAgentShim,
56699
+ getAgentSessionCapability: () => getAgentSessionCapability,
56635
56700
  formatMessage: () => formatMessage,
56636
56701
  extractProvider: () => extractProvider,
56637
56702
  extractModelName: () => extractModelName,
@@ -56670,7 +56735,7 @@ var init_dist9 = __esm(() => {
56670
56735
  init_team_orchestrator();
56671
56736
  });
56672
56737
 
56673
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/config-access.js
56738
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/config-access.js
56674
56739
  function stringArray(value) {
56675
56740
  return Array.isArray(value) && value.every((item) => typeof item === "string") ? value : undefined;
56676
56741
  }
@@ -56708,7 +56773,7 @@ function parseInlineFlags(source) {
56708
56773
  return { flags, rest: source.slice(match[0].length) };
56709
56774
  }
56710
56775
 
56711
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/glob-match.js
56776
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/glob-match.js
56712
56777
  function matchesAny(path9, patterns) {
56713
56778
  if (patterns === undefined || patterns.length === 0)
56714
56779
  return true;
@@ -56756,7 +56821,7 @@ function escapeRegExp(value) {
56756
56821
  return value.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
56757
56822
  }
56758
56823
 
56759
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/file-discovery.js
56824
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/file-discovery.js
56760
56825
  async function discoverFiles2(options) {
56761
56826
  const fs3 = options.fs ?? createNodeFileSystem3();
56762
56827
  const allFiles = await walkDir2(options.workdir, fs3, DEFAULT_EXCLUDES);
@@ -56784,12 +56849,12 @@ var init_file_discovery = __esm(() => {
56784
56849
  DEFAULT_EXCLUDES = new Set([".git", "node_modules", "dist", ".coverage", ".astro", ".wrangler"]);
56785
56850
  });
56786
56851
 
56787
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/file-utils.js
56852
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/file-utils.js
56788
56853
  var init_file_utils = __esm(() => {
56789
56854
  init_file_discovery();
56790
56855
  });
56791
56856
 
56792
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/agent-detection-evaluator.js
56857
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/agent-detection-evaluator.js
56793
56858
  class AgentDetectionEvaluator {
56794
56859
  detector;
56795
56860
  constructor(detector = new AgentDetector) {
@@ -56817,7 +56882,7 @@ var init_agent_detection_evaluator = __esm(() => {
56817
56882
  init_file_utils();
56818
56883
  });
56819
56884
 
56820
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/coverage-gate-evaluator.js
56885
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/coverage-gate-evaluator.js
56821
56886
  class CoverageGateEvaluator {
56822
56887
  constructor() {}
56823
56888
  async evaluate(rule, context4) {
@@ -56901,7 +56966,7 @@ var init_coverage_gate_evaluator = __esm(() => {
56901
56966
  init_file_utils();
56902
56967
  });
56903
56968
 
56904
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/exit-code-evaluator.js
56969
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/exit-code-evaluator.js
56905
56970
  class ExitCodeEvaluator {
56906
56971
  executor;
56907
56972
  constructor(executor = nodeBunFactory3.createProcessExecutor()) {
@@ -56937,7 +57002,7 @@ var init_exit_code_evaluator = __esm(() => {
56937
57002
  init_file_utils();
56938
57003
  });
56939
57004
 
56940
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/forbidden-import-evaluator.js
57005
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/forbidden-import-evaluator.js
56941
57006
  class ForbiddenImportEvaluator {
56942
57007
  constructor() {}
56943
57008
  async evaluate(rule, context4) {
@@ -57018,7 +57083,7 @@ var init_forbidden_import_evaluator = __esm(() => {
57018
57083
  init_file_utils();
57019
57084
  });
57020
57085
 
57021
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/import-boundary-evaluator.js
57086
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/import-boundary-evaluator.js
57022
57087
  class ImportBoundaryEvaluator {
57023
57088
  async evaluate(rule, context4) {
57024
57089
  const config4 = rule.evaluator.config ?? {};
@@ -57111,7 +57176,7 @@ var init_import_boundary_evaluator = __esm(() => {
57111
57176
  init_file_utils();
57112
57177
  });
57113
57178
 
57114
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/path-evaluator.js
57179
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/path-evaluator.js
57115
57180
  class PathEvaluator {
57116
57181
  constructor() {}
57117
57182
  async evaluate(rule, context4) {
@@ -57172,7 +57237,7 @@ var init_path_evaluator = __esm(() => {
57172
57237
  init_file_utils();
57173
57238
  });
57174
57239
 
57175
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/regex-evaluator.js
57240
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/regex-evaluator.js
57176
57241
  class RegexEvaluator {
57177
57242
  constructor() {}
57178
57243
  async evaluate(rule, context4) {
@@ -57250,7 +57315,7 @@ var init_regex_evaluator = __esm(() => {
57250
57315
  init_file_utils();
57251
57316
  });
57252
57317
 
57253
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/ripgrep-evaluator.js
57318
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/ripgrep-evaluator.js
57254
57319
  class RipgrepEvaluator {
57255
57320
  executor;
57256
57321
  constructor(executor = nodeBunFactory3.createProcessExecutor()) {
@@ -57343,7 +57408,7 @@ var init_ripgrep_evaluator = __esm(() => {
57343
57408
  init_file_utils();
57344
57409
  });
57345
57410
 
57346
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/schema-artifact-evaluator.js
57411
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/schema-artifact-evaluator.js
57347
57412
  class SchemaArtifactEvaluator {
57348
57413
  constructor() {}
57349
57414
  async evaluate(rule, context4) {
@@ -57421,7 +57486,7 @@ var init_schema_artifact_evaluator = __esm(() => {
57421
57486
  init_file_utils();
57422
57487
  });
57423
57488
 
57424
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/secrets-scanner-evaluator.js
57489
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/secrets-scanner-evaluator.js
57425
57490
  class SecretsScannerEvaluator {
57426
57491
  constructor() {}
57427
57492
  async evaluate(rule, context4) {
@@ -57489,7 +57554,7 @@ var init_secrets_scanner_evaluator = __esm(() => {
57489
57554
  ALL_CATEGORIES = Object.keys(BUILTIN_PATTERNS);
57490
57555
  });
57491
57556
 
57492
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/sg-evaluator.js
57557
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/sg-evaluator.js
57493
57558
  class SgEvaluator {
57494
57559
  executor;
57495
57560
  constructor(executor = nodeBunFactory3.createProcessExecutor()) {
@@ -57586,7 +57651,7 @@ var init_sg_evaluator = __esm(() => {
57586
57651
  init_file_utils();
57587
57652
  });
57588
57653
 
57589
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/resolvers/test-path-resolver.js
57654
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/resolvers/test-path-resolver.js
57590
57655
  class TypeScriptTestPathResolver {
57591
57656
  name = "typescript";
57592
57657
  constructor() {}
@@ -57669,7 +57734,7 @@ function testify(rel) {
57669
57734
  return `${dir}test_${base2}`;
57670
57735
  }
57671
57736
 
57672
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/test-location-evaluator.js
57737
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/test-location-evaluator.js
57673
57738
  class TestLocationEvaluator {
57674
57739
  resolvers;
57675
57740
  constructor(resolvers) {
@@ -57744,7 +57809,7 @@ var init_test_location_evaluator = __esm(() => {
57744
57809
  TYPESCRIPT_FALLBACK = new TypeScriptTestPathResolver;
57745
57810
  });
57746
57811
 
57747
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/tsdoc-export-evaluator.js
57812
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/tsdoc-export-evaluator.js
57748
57813
  class TsdocExportEvaluator {
57749
57814
  constructor() {}
57750
57815
  async evaluate(rule, context4) {
@@ -57829,7 +57894,7 @@ var init_tsdoc_export_evaluator = __esm(() => {
57829
57894
  };
57830
57895
  });
57831
57896
 
57832
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/formatters/json.js
57897
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/formatters/json.js
57833
57898
  class JsonFormatter {
57834
57899
  constructor() {}
57835
57900
  format(result) {
@@ -57837,7 +57902,7 @@ class JsonFormatter {
57837
57902
  }
57838
57903
  }
57839
57904
 
57840
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/formatters/text.js
57905
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/formatters/text.js
57841
57906
  class TextFormatter {
57842
57907
  constructor() {}
57843
57908
  format(result) {
@@ -57851,7 +57916,7 @@ class TextFormatter {
57851
57916
  }
57852
57917
  }
57853
57918
 
57854
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/host/builtins.js
57919
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/host/builtins.js
57855
57920
  function registerBuiltins(host, executor) {
57856
57921
  const path9 = new PathEvaluator;
57857
57922
  host.evaluators.register("regex", new RegexEvaluator, "builtin");
@@ -57891,7 +57956,7 @@ var init_builtins = __esm(() => {
57891
57956
  init_tsdoc_export_evaluator();
57892
57957
  });
57893
57958
 
57894
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/host/rule-engine-host.js
57959
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/host/rule-engine-host.js
57895
57960
  class RuleEngineHost {
57896
57961
  evaluators;
57897
57962
  formatters;
@@ -57908,7 +57973,7 @@ var init_rule_engine_host = __esm(() => {
57908
57973
  init_extension2();
57909
57974
  });
57910
57975
 
57911
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/engine.js
57976
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/engine.js
57912
57977
  class RuleEngine {
57913
57978
  host;
57914
57979
  events;
@@ -58079,7 +58144,7 @@ var init_engine = __esm(() => {
58079
58144
  init_types3();
58080
58145
  });
58081
58146
 
58082
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/host/bundled-rules.js
58147
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/host/bundled-rules.js
58083
58148
  async function bundledRulesRoot() {
58084
58149
  if (cachedRoot2 !== undefined)
58085
58150
  return cachedRoot2;
@@ -58130,7 +58195,7 @@ var init_bundled_rules = __esm(() => {
58130
58195
  init_dist5();
58131
58196
  });
58132
58197
 
58133
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/persistence/db-adapter.js
58198
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/persistence/db-adapter.js
58134
58199
  class DbRulePersistenceAdapter {
58135
58200
  db;
58136
58201
  constructor(db2) {
@@ -58164,7 +58229,7 @@ class DbRulePersistenceAdapter {
58164
58229
  }
58165
58230
  }
58166
58231
 
58167
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/persistence/schema.js
58232
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/persistence/schema.js
58168
58233
  var RULE_ENGINE_SCHEMA_SQL = `
58169
58234
  CREATE TABLE IF NOT EXISTS rule_runs (
58170
58235
  id TEXT PRIMARY KEY,
@@ -58210,10 +58275,10 @@ CREATE TABLE IF NOT EXISTS rule_eval_runs (
58210
58275
  CREATE INDEX IF NOT EXISTS idx_rule_eval_runs_run_id ON rule_eval_runs (run_id);
58211
58276
  `;
58212
58277
 
58213
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/persistence/index.js
58278
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/persistence/index.js
58214
58279
  var init_persistence2 = () => {};
58215
58280
 
58216
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.18+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/index.js
58281
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.19+eb8900f44f4776f9/node_modules/@gobing-ai/ts-rule-engine/dist/index.js
58217
58282
  var init_dist10 = __esm(() => {
58218
58283
  init_extensions();
58219
58284
  init_loader2();
@@ -58433,7 +58498,7 @@ ${SYSTEM_EVENTS_SCHEMA_SQL}
58433
58498
  ];
58434
58499
  });
58435
58500
 
58436
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/job-queue/db-job-queue.js
58501
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/job-queue/db-job-queue.js
58437
58502
  function queueLogger() {
58438
58503
  if (!_queueLogger)
58439
58504
  _queueLogger = getLogger2("job-queue");
@@ -58710,7 +58775,7 @@ var init_db_job_queue = __esm(() => {
58710
58775
  init_tracing2();
58711
58776
  });
58712
58777
 
58713
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/job-queue-db.js
58778
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/job-queue-db.js
58714
58779
  var exports_job_queue_db = {};
58715
58780
  __export(exports_job_queue_db, {
58716
58781
  DBQueueConsumer: () => DBQueueConsumer,
@@ -61083,8 +61148,7 @@ class AgentService {
61083
61148
  return { ok: false, exitCode: 2, message: "Prompt is required" };
61084
61149
  }
61085
61150
  const jsonOutput = silent || booleanFlag(flags, "json");
61086
- const forceBuffered = silent || nonInteractive;
61087
- const outputPolicy = forceBuffered ? { mode: "buffered" } : jsonOutput ? { mode: "buffered" } : { mode: "stream", isTTY: isatty3(1) };
61151
+ const outputPolicy = nonInteractive ? { mode: "pipe" } : silent || jsonOutput ? { mode: "buffered" } : { mode: "stream", isTTY: isatty3(1) };
61088
61152
  const outputMode = outputPolicy.mode;
61089
61153
  let publishPid;
61090
61154
  const runner = deps?.runner ?? new AiRunner({
@@ -61135,6 +61199,8 @@ class AgentService {
61135
61199
  const model = explicitModel ?? currentModel;
61136
61200
  const translated = prompt !== undefined && isClaudeStyleSlashCommand(prompt) ? translateSlashCommand(agent, prompt) : undefined;
61137
61201
  const input = translated ?? prompt;
61202
+ const sessionDir = stringFlag(flags, "session-dir", "") || stringFlag(flags, "sessionDir", "") || undefined;
61203
+ const sessionId = stringFlag(flags, "session-id", "") || stringFlag(flags, "sessionId", "") || undefined;
61138
61204
  const promptOptions = {
61139
61205
  input,
61140
61206
  continue: continueFlag || undefined,
@@ -61143,7 +61209,9 @@ class AgentService {
61143
61209
  ...purpose !== undefined ? { purpose } : {},
61144
61210
  ...tags !== undefined ? { tags } : {},
61145
61211
  ...systemPrompt !== undefined ? { systemPrompt } : {},
61146
- ...taskId !== undefined ? { taskId } : {}
61212
+ ...taskId !== undefined ? { taskId } : {},
61213
+ ...sessionDir !== undefined ? { sessionDir } : {},
61214
+ ...sessionId !== undefined ? { sessionId } : {}
61147
61215
  };
61148
61216
  let shimCommand;
61149
61217
  try {
@@ -61179,6 +61247,7 @@ class AgentService {
61179
61247
  continue: continueFlag,
61180
61248
  stdinInteractive: false,
61181
61249
  ...model !== undefined ? { model } : {},
61250
+ ...sessionId !== undefined ? { sessionId } : {},
61182
61251
  ...translated !== undefined && prompt !== undefined ? { translatedFrom: traceSafePrompt(prompt) } : {}
61183
61252
  };
61184
61253
  if (attempt === 0) {
@@ -61284,13 +61353,8 @@ class AgentService {
61284
61353
  const raw = stringFlag(flags, "agent", "auto");
61285
61354
  if (raw === "auto")
61286
61355
  return this.resolveAgentAuto(prompt, flags, doctorRunner);
61287
- if (raw === "inline") {
61288
- return {
61289
- ok: false,
61290
- exitCode: 2,
61291
- message: "'inline' selects in-session execution and cannot be passed to 'spur agent run', which always starts a subprocess. Run the backing skill directly in the current session, or redirect pipeline stages via agent.default / '--agent auto' / '--agent <name>' (ADR-046)."
61292
- };
61293
- }
61356
+ if (raw === "inline")
61357
+ return this.resolveAgentAuto(prompt, flags, doctorRunner);
61294
61358
  return this.resolveExecutorSelector(raw, doctorRunner, "explicit");
61295
61359
  }
61296
61360
  async resolveAgentAuto(prompt, flags, doctorRunner) {
@@ -69072,14 +69136,33 @@ class AgentRunActionRunner {
69072
69136
  async execute(options, context4) {
69073
69137
  const input = asOptionalString(options.input);
69074
69138
  const agent = asOptionalString(options.agent);
69139
+ const cfg = context4.config;
69140
+ const dispatchAgent = agent === "inline" ? cfg?.agent?.default ?? undefined : agent;
69075
69141
  const model = asOptionalString(options.model);
69076
69142
  const mode = asOptionalString(options.mode) ?? "text";
69077
69143
  const cwd = asOptionalString(options.cwd) ?? context4.workdir ?? ".";
69144
+ const sessionAffinityVar = context4.vars.sessionAffinity;
69145
+ const affinityDisabled = sessionAffinityVar === "false" || typeof sessionAffinityVar === "boolean" && !sessionAffinityVar || options.sessionAffinity === false || cfg?.agent?.sessionAffinity === false;
69146
+ const affinityOn = !affinityDisabled;
69147
+ const agentLabel = dispatchAgent ?? "<default>";
69148
+ const targetAgentDir = dispatchAgent ?? cfg?.agent?.default ?? "omp";
69149
+ const prevAgent = asOptionalString(context4.vars.__agentSessionAgent);
69150
+ let sessionDir = asOptionalString(context4.vars.__agentSessionDir);
69151
+ if (affinityOn) {
69152
+ if (!sessionDir || prevAgent && prevAgent !== targetAgentDir) {
69153
+ sessionDir = join15(cwd, ".spur", "run", context4.runId, "agent-sessions", targetAgentDir);
69154
+ }
69155
+ }
69156
+ const storedSessionId = asOptionalString(context4.vars.__agentSessionId);
69078
69157
  let continueFlag = asOptionalBoolean(options.continue);
69079
69158
  const latch = context4.vars.__agentSession;
69080
69159
  const latchAutoContinued = continueFlag === undefined && latch === "open";
69081
69160
  if (latchAutoContinued) {
69082
- continueFlag = true;
69161
+ if (affinityOn) {
69162
+ continueFlag = true;
69163
+ } else {
69164
+ continueFlag = undefined;
69165
+ }
69083
69166
  }
69084
69167
  if (input === undefined && !continueFlag) {
69085
69168
  return {
@@ -69088,13 +69171,19 @@ class AgentRunActionRunner {
69088
69171
  };
69089
69172
  }
69090
69173
  const flags = {};
69091
- if (agent !== undefined)
69092
- flags.agent = agent;
69174
+ if (dispatchAgent !== undefined)
69175
+ flags.agent = dispatchAgent;
69093
69176
  if (model !== undefined)
69094
69177
  flags.model = model;
69095
69178
  flags.mode = mode;
69096
69179
  if (cwd !== "")
69097
69180
  flags.cwd = cwd;
69181
+ if (affinityOn && sessionDir) {
69182
+ flags.sessionDir = sessionDir;
69183
+ if (storedSessionId) {
69184
+ flags.sessionId = storedSessionId;
69185
+ }
69186
+ }
69098
69187
  const timeoutMs = asOptionalNumber(options.timeoutMs);
69099
69188
  if (timeoutMs !== undefined && timeoutMs <= 0) {
69100
69189
  return {
@@ -69110,7 +69199,6 @@ class AgentRunActionRunner {
69110
69199
  const expectFile = asOptionalString(options.expectFile);
69111
69200
  const requireDiff = asOptionalBoolean(options.requireDiff);
69112
69201
  const capture = asOptionalBoolean(options.capture) || answerFile !== undefined;
69113
- const agentLabel = agent ?? "<default>";
69114
69202
  const observer = this.observabilityBus === undefined ? undefined : (event2) => {
69115
69203
  this.observabilityBus?.emit("workflow.agent", event2);
69116
69204
  };
@@ -69193,18 +69281,63 @@ class AgentRunActionRunner {
69193
69281
  }
69194
69282
  const partialWorkHint = `partial work (if any) preserved at .spur/run/${context4.runId}-${stepLabel}-partial.md; resume from that tree per the timed-out-implement runbook (plugins/sp/skills/spur-dev/references/execution-workflow.md)`;
69195
69283
  const error51 = ok ? undefined : traced.signal !== undefined ? timeoutMs !== undefined ? `agent.run '${stepLabel}' (${agentLabel}) terminated by signal ${traced.signal} (configured timeout: ${timeoutMs}ms; timeout or cancellation); ${partialWorkHint}` : `agent.run '${stepLabel}' (${agentLabel}) was cancelled by signal ${traced.signal}; ${partialWorkHint}` : traced.message !== undefined ? `agent.run '${stepLabel}' (${agentLabel}) dispatch failed: ${traced.message}` : `agent.run '${stepLabel}' (${agentLabel}) exited with code ${exitCode}; ${partialWorkHint}`;
69284
+ let discoveredSessionId = storedSessionId;
69285
+ if (ok && affinityOn && sessionDir && !discoveredSessionId) {
69286
+ discoveredSessionId = await discoverSessionId(sessionDir);
69287
+ }
69288
+ if (ok && affinityOn && sessionDir) {
69289
+ try {
69290
+ const sidecarPath = join15(cwd, ".spur", "run", `${context4.runId}-agent-session.json`);
69291
+ const fs3 = createNodeFileSystem3(cwd);
69292
+ await fs3.ensureDir(dirname12(sidecarPath));
69293
+ await fs3.writeFile(sidecarPath, JSON.stringify({
69294
+ agent: agentLabel,
69295
+ sessionId: discoveredSessionId ?? null,
69296
+ sessionDir,
69297
+ openedAt: new Date().toISOString()
69298
+ }, null, 2));
69299
+ } catch {}
69300
+ }
69196
69301
  return {
69197
69302
  ok,
69198
69303
  data: buildResultData(exitCode, agentLabel, capture, answer, invocation),
69199
69304
  error: error51,
69200
69305
  setVars: ok ? {
69201
69306
  __agentSession: resumeRetried ? "no-resume" : "open",
69307
+ ...affinityOn && sessionDir ? { __agentSessionDir: sessionDir } : {},
69308
+ ...affinityOn && (discoveredSessionId || storedSessionId) ? { __agentSessionId: discoveredSessionId || storedSessionId } : {},
69309
+ ...affinityOn ? { __agentSessionAgent: targetAgentDir } : {},
69202
69310
  ...steeringNote !== undefined ? { __steeringNote: steeringNote } : {}
69203
69311
  } : undefined
69204
69312
  };
69205
69313
  } finally {}
69206
69314
  }
69207
69315
  }
69316
+ async function discoverSessionId(sessionDir) {
69317
+ try {
69318
+ const fs3 = createNodeFileSystem3();
69319
+ if (!await fs3.exists(sessionDir))
69320
+ return;
69321
+ const entries = await fs3.readDir(sessionDir);
69322
+ if (entries.length === 0)
69323
+ return;
69324
+ let newestFile;
69325
+ let newestMtime = 0;
69326
+ for (const entry of entries) {
69327
+ const fullPath = join15(sessionDir, entry);
69328
+ const st = await fs3.stat(fullPath);
69329
+ if (st?.isFile() && st.mtimeMs > newestMtime) {
69330
+ newestMtime = st.mtimeMs;
69331
+ newestFile = entry;
69332
+ }
69333
+ }
69334
+ if (!newestFile)
69335
+ return;
69336
+ return newestFile.replace(/\.json$/i, "");
69337
+ } catch {
69338
+ return;
69339
+ }
69340
+ }
69208
69341
  function buildResultData(exitCode, agentLabel, capture, answer, invocation) {
69209
69342
  const data = { exitCode, agent: agentLabel };
69210
69343
  if (capture)
@@ -71030,19 +71163,19 @@ var {
71030
71163
  init_src();
71031
71164
  init_loader();
71032
71165
 
71033
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/application-node.js
71166
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/application-node.js
71034
71167
  init_dist4();
71035
71168
  init_dist5();
71036
71169
  import { appendFileSync as appendFileSync4, mkdirSync as mkdirSync3, readFileSync as readFileSync5 } from "fs";
71037
71170
  import { dirname as dirname5 } from "path";
71038
71171
 
71039
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/application/index.js
71172
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/application/index.js
71040
71173
  init_default_observers();
71041
71174
  init_event_bus();
71042
71175
  init_file_observer();
71043
71176
  init_logger3();
71044
71177
 
71045
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/scheduler/noop.js
71178
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/scheduler/noop.js
71046
71179
  class NoopSchedulerAdapter {
71047
71180
  constructor() {}
71048
71181
  register(_cron, _action) {}
@@ -71050,7 +71183,7 @@ class NoopSchedulerAdapter {
71050
71183
  async stop() {}
71051
71184
  }
71052
71185
 
71053
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/scheduler/factory.js
71186
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/scheduler/factory.js
71054
71187
  function initScheduler(adapter, cronEntries) {
71055
71188
  const resolved = adapter ?? new NoopSchedulerAdapter;
71056
71189
  if (cronEntries) {
@@ -71061,7 +71194,7 @@ function initScheduler(adapter, cronEntries) {
71061
71194
  return resolved;
71062
71195
  }
71063
71196
 
71064
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/application/plugins/builtins.js
71197
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/application/plugins/builtins.js
71065
71198
  init_logger3();
71066
71199
  init_metrics();
71067
71200
  init_sdk();
@@ -71154,7 +71287,7 @@ function dbPlugin(db2) {
71154
71287
  };
71155
71288
  }
71156
71289
 
71157
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/application/plugins/host.js
71290
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/application/plugins/host.js
71158
71291
  init_logger3();
71159
71292
 
71160
71293
  class PluginHost {
@@ -71242,7 +71375,7 @@ class PluginHost {
71242
71375
  }
71243
71376
  }
71244
71377
 
71245
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/application/index.js
71378
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/application/index.js
71246
71379
  async function performShutdown(state, reason) {
71247
71380
  if (state.stopped)
71248
71381
  return;
@@ -71353,10 +71486,10 @@ async function runApplication(options) {
71353
71486
  }
71354
71487
  }
71355
71488
 
71356
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/application-node.js
71489
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/application-node.js
71357
71490
  init_scheduler_node();
71358
71491
 
71359
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/telemetry/otel-node.js
71492
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/telemetry/otel-node.js
71360
71493
  var import_api14 = __toESM(require_src(), 1);
71361
71494
 
71362
71495
  // ../../node_modules/.bun/@opentelemetry+exporter-metrics-otlp-http@0.218.0+e40b0dfdd726a224/node_modules/@opentelemetry/exporter-metrics-otlp-http/build/esm/OTLPMetricExporterBase.js
@@ -74372,7 +74505,7 @@ class OTLPTraceExporter extends import_otlp_exporter_base2.OTLPExporterBase {
74372
74505
  }), JsonTraceSerializer));
74373
74506
  }
74374
74507
  }
74375
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/telemetry/otel-node.js
74508
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/telemetry/otel-node.js
74376
74509
  var import_resources2 = __toESM(require_src4(), 1);
74377
74510
  var import_sdk_trace_node = __toESM(require_src8(), 1);
74378
74511
  var import_semantic_conventions = __toESM(require_src2(), 1);
@@ -74423,7 +74556,7 @@ async function shutdownNodeTelemetry() {
74423
74556
  await Promise.all(pending);
74424
74557
  }
74425
74558
 
74426
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.18+863f28addc1a7cdc/node_modules/@gobing-ai/ts-infra/dist/application-node.js
74559
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.19+79868827d1ab596b/node_modules/@gobing-ai/ts-infra/dist/application-node.js
74427
74560
  class ConfigValidationError extends Error {
74428
74561
  constructor(message) {
74429
74562
  super(message);
@@ -79031,7 +79164,7 @@ import { join as join19, resolve as resolve6 } from "path";
79031
79164
  var CLI_CONFIG = {
79032
79165
  binaryName: "spur",
79033
79166
  binaryLabel: "spur",
79034
- binaryVersion: "0.3.32",
79167
+ binaryVersion: "0.3.33",
79035
79168
  configDir: ".spur",
79036
79169
  configFile: ".spur/config.yaml",
79037
79170
  databaseFile: ".spur/spur.db"