@gobing-ai/spur 0.3.70 → 0.3.71

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 (71) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/config/workflow-composition-baseline.json +7 -7
  3. package/config/workflows/idea-pipeline.yaml +4 -3
  4. package/config/workflows/task-pipeline.yaml +31 -11
  5. package/config/workflows/wrapup-pipeline.yaml +10 -4
  6. package/package.json +9 -9
  7. package/plugins/sp/commands/dev-fixall.md +4 -3
  8. package/plugins/sp/plugin.json +1 -1
  9. package/plugins/sp/scripts/verify-answer-lint.ts +12 -3
  10. package/plugins/sp/skills/code-implementation/SKILL.md +1 -1
  11. package/plugins/sp/skills/spec-decomposition/SKILL.md +1 -1
  12. package/plugins/sp/skills/spur-cli/references/history.md +7 -6
  13. package/plugins/sp/skills/spur-dev/references/dev-operations.md +2 -2
  14. package/plugins/sp/skills/spur-dev/references/execution-workflow.md +8 -1
  15. package/plugins/sp/skills/spur-dev/references/gate-checklists.md +1 -1
  16. package/plugins/sp/skills/spur-dev/references/inline-pipeline-driver.md +25 -0
  17. package/spur.js +313 -221
  18. package/web/_astro/BoardApp.BnjsI80-.js +178 -0
  19. package/web/_astro/BoardApp.SJcrHBZp.js +1 -0
  20. package/web/_astro/{TaskDetail.DKzpkDj5.js → TaskDetail.BvkKvo57.js} +1 -1
  21. package/web/_astro/{arc.Bsa0gprH.js → arc.DuEIzPMi.js} +1 -1
  22. package/web/_astro/{architectureDiagram-3BPJPVTR.LOUZCDBC.js → architectureDiagram-3BPJPVTR.D0dUxCjA.js} +1 -1
  23. package/web/_astro/{blockDiagram-GPEHLZMM.CGee4isG.js → blockDiagram-GPEHLZMM.Cv60iOpM.js} +1 -1
  24. package/web/_astro/{c4Diagram-AAUBKEIU.B2CrQJ_O.js → c4Diagram-AAUBKEIU.Ddx7WGhb.js} +1 -1
  25. package/web/_astro/channel.tWfETQvX.js +1 -0
  26. package/web/_astro/{chunk-2J33WTMH.DJvf8RiP.js → chunk-2J33WTMH.BGKzU_1t.js} +1 -1
  27. package/web/_astro/{chunk-4BX2VUAB.B_l35O-Y.js → chunk-4BX2VUAB.FlApjIIH.js} +1 -1
  28. package/web/_astro/{chunk-55IACEB6.DqbxMswU.js → chunk-55IACEB6.CDfmvDeW.js} +1 -1
  29. package/web/_astro/{chunk-727SXJPM.D_7ZGNjE.js → chunk-727SXJPM.T9bc-xir.js} +1 -1
  30. package/web/_astro/{chunk-AQP2D5EJ.Cq6yZ0s8.js → chunk-AQP2D5EJ.BiTc-MQo.js} +1 -1
  31. package/web/_astro/{chunk-FMBD7UC4.BWrlUPYi.js → chunk-FMBD7UC4.he4KrHni.js} +1 -1
  32. package/web/_astro/{chunk-ND2GUHAM.BPLaXFZH.js → chunk-ND2GUHAM.D05XuUuJ.js} +1 -1
  33. package/web/_astro/{chunk-QZHKN3VN.BtmAEAwZ.js → chunk-QZHKN3VN.CA2NThIE.js} +1 -1
  34. package/web/_astro/{classDiagram-4FO5ZUOK.CWycT7Ia.js → classDiagram-4FO5ZUOK.Couj-zYZ.js} +1 -1
  35. package/web/_astro/{classDiagram-v2-Q7XG4LA2.CWycT7Ia.js → classDiagram-v2-Q7XG4LA2.Couj-zYZ.js} +1 -1
  36. package/web/_astro/{cose-bilkent-S5V4N54A.DyxjSWon.js → cose-bilkent-S5V4N54A.B8YYW7NG.js} +1 -1
  37. package/web/_astro/{cynefin-OW5HDTMX.DnNfLBpX.js → cynefin-OW5HDTMX.BExFdiin.js} +1 -1
  38. package/web/_astro/{dagre-BM42HDAG.BFAvnjKD.js → dagre-BM42HDAG.BybKbz3q.js} +1 -1
  39. package/web/_astro/{diagram-2AECGRRQ.BAoNCFeB.js → diagram-2AECGRRQ.UyRTSl9n.js} +1 -1
  40. package/web/_astro/{diagram-5GNKFQAL.DiiKe7BP.js → diagram-5GNKFQAL.BrxCucBf.js} +1 -1
  41. package/web/_astro/{diagram-KO2AKTUF.t_uOQWVP.js → diagram-KO2AKTUF.CdE5oy5J.js} +1 -1
  42. package/web/_astro/{diagram-LMA3HP47.SB9997cP.js → diagram-LMA3HP47.BJLgdosK.js} +1 -1
  43. package/web/_astro/{diagram-OG6HWLK6.Bgsxgf5G.js → diagram-OG6HWLK6.CUynieTU.js} +1 -1
  44. package/web/_astro/{erDiagram-TEJ5UH35.DO9OAOAc.js → erDiagram-TEJ5UH35.C0vS6DJv.js} +1 -1
  45. package/web/_astro/{flowDiagram-I6XJVG4X.CIb41ZyL.js → flowDiagram-I6XJVG4X.T3QLi_en.js} +1 -1
  46. package/web/_astro/{ganttDiagram-6RSMTGT7.Dc8Lk0fV.js → ganttDiagram-6RSMTGT7.BNsk3w9Z.js} +1 -1
  47. package/web/_astro/{gitGraphDiagram-PVQCEYII.CpPmMWrl.js → gitGraphDiagram-PVQCEYII.Mwe2I4V6.js} +1 -1
  48. package/web/_astro/index.9npdrEIr.css +1 -0
  49. package/web/_astro/{infoDiagram-5YYISTIA.DxBXfQSf.js → infoDiagram-5YYISTIA.BlcjLmtc.js} +1 -1
  50. package/web/_astro/{ishikawaDiagram-YF4QCWOH.gA6OKtXq.js → ishikawaDiagram-YF4QCWOH.js8qeS0h.js} +1 -1
  51. package/web/_astro/{journeyDiagram-JHISSGLW.CMEyLMmm.js → journeyDiagram-JHISSGLW.CM6UK0a4.js} +1 -1
  52. package/web/_astro/{kanban-definition-UN3LZRKU.CKXlUNCr.js → kanban-definition-UN3LZRKU.a6ihOzMd.js} +1 -1
  53. package/web/_astro/{linear.CpTGdVx3.js → linear.CsIB2jFu.js} +1 -1
  54. package/web/_astro/{mermaid.core.c8SSCsE5.js → mermaid.core.Br2Fo22q.js} +4 -4
  55. package/web/_astro/{mindmap-definition-RKZ34NQL.BH59HDw6.js → mindmap-definition-RKZ34NQL.29inC1Mk.js} +1 -1
  56. package/web/_astro/{pieDiagram-4H26LBE5.DmgFXkZR.js → pieDiagram-4H26LBE5.C9CxG_Kf.js} +1 -1
  57. package/web/_astro/{quadrantDiagram-W4KKPZXB.DyfB7N4J.js → quadrantDiagram-W4KKPZXB.6qo9MOJM.js} +1 -1
  58. package/web/_astro/{requirementDiagram-4Y6WPE33.DosszoFo.js → requirementDiagram-4Y6WPE33.DN07zrP5.js} +1 -1
  59. package/web/_astro/{sankeyDiagram-5OEKKPKP.pBkHhvVN.js → sankeyDiagram-5OEKKPKP.BSw5o173.js} +1 -1
  60. package/web/_astro/{sequenceDiagram-3UESZ5HK.BE8tmkNR.js → sequenceDiagram-3UESZ5HK.LJPzySKw.js} +1 -1
  61. package/web/_astro/{stateDiagram-AJRCARHV.C4n7vDiG.js → stateDiagram-AJRCARHV.ClNjEiKV.js} +1 -1
  62. package/web/_astro/{stateDiagram-v2-BHNVJYJU.BpgwYlRy.js → stateDiagram-v2-BHNVJYJU.c6Z-_WfX.js} +1 -1
  63. package/web/_astro/{timeline-definition-PNZ67QCA.DvcVKc-W.js → timeline-definition-PNZ67QCA.CIMR-87j.js} +1 -1
  64. package/web/_astro/{vennDiagram-CIIHVFJN.BLOk-UOl.js → vennDiagram-CIIHVFJN.BnRSRI9I.js} +1 -1
  65. package/web/_astro/{wardleyDiagram-YWT4CUSO.CIzB7M2o.js → wardleyDiagram-YWT4CUSO.uN08C3gv.js} +1 -1
  66. package/web/_astro/{xychartDiagram-2RQKCTM6.CGC_lZ19.js → xychartDiagram-2RQKCTM6.BjbEvfuq.js} +1 -1
  67. package/web/index.html +2 -2
  68. package/web/_astro/BoardApp.DHj-03Dp.js +0 -1
  69. package/web/_astro/BoardApp.DOadeEJV.js +0 -178
  70. package/web/_astro/channel.BGL7KSHC.js +0 -1
  71. package/web/_astro/index.C-t8kB0T.css +0 -1
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.49/node_modules/@gobing-ai/ts-utils/dist/errors.js
50
+ // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.50/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.49/node_modules/@gobing-ai/ts-utils/dist/api-response.js
61
+ // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.50/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,13 +81,13 @@ 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.49/node_modules/@gobing-ai/ts-utils/dist/cursor.js
84
+ // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.50/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.49/node_modules/@gobing-ai/ts-utils/dist/event-severity.js
87
+ // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.50/node_modules/@gobing-ai/ts-utils/dist/event-severity.js
88
88
  var init_event_severity = () => {};
89
89
 
90
- // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.49/node_modules/@gobing-ai/ts-utils/dist/object.js
90
+ // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.50/node_modules/@gobing-ai/ts-utils/dist/object.js
91
91
  function isPlainObject(value) {
92
92
  return typeof value === "object" && value !== null && !Array.isArray(value);
93
93
  }
@@ -105,7 +105,7 @@ function deepMerge(target, source) {
105
105
  return result;
106
106
  }
107
107
 
108
- // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.49/node_modules/@gobing-ai/ts-utils/dist/output.js
108
+ // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.50/node_modules/@gobing-ai/ts-utils/dist/output.js
109
109
  function processStream(name) {
110
110
  const proc = globalThis.process;
111
111
  const stream = proc?.[name];
@@ -126,7 +126,7 @@ function echoError(message, target = defaultStderrTarget ?? processStream("stder
126
126
  }
127
127
  var defaultStdoutTarget, defaultStderrTarget;
128
128
 
129
- // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.49/node_modules/@gobing-ai/ts-utils/dist/index.js
129
+ // ../../node_modules/.bun/@gobing-ai+ts-utils@0.4.50/node_modules/@gobing-ai/ts-utils/dist/index.js
130
130
  var init_dist = __esm(() => {
131
131
  init_api_response();
132
132
  init_cursor();
@@ -21749,7 +21749,7 @@ var init_zod = __esm(() => {
21749
21749
  init_external();
21750
21750
  });
21751
21751
 
21752
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+bb68c2431f6fedc6/node_modules/@gobing-ai/ts-runtime/dist/config.js
21752
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+2749503d16def146/node_modules/@gobing-ai/ts-runtime/dist/config.js
21753
21753
  function getProcessEnv() {
21754
21754
  return process.env;
21755
21755
  }
@@ -21827,7 +21827,7 @@ var init_config = __esm(() => {
21827
21827
  };
21828
21828
  });
21829
21829
 
21830
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+bb68c2431f6fedc6/node_modules/@gobing-ai/ts-runtime/dist/file-system-node.js
21830
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+2749503d16def146/node_modules/@gobing-ai/ts-runtime/dist/file-system-node.js
21831
21831
  import { appendFileSync, cpSync, createReadStream, createWriteStream, existsSync, mkdirSync, readdirSync, readFileSync, realpathSync, renameSync, rmSync, statSync, writeFileSync } from "fs";
21832
21832
  import { dirname, resolve as resolvePath } from "path";
21833
21833
  function createNodeFileSystem(root, paths) {
@@ -21914,7 +21914,7 @@ function findProjectRoot(startDir) {
21914
21914
  }
21915
21915
  var init_file_system_node = () => {};
21916
21916
 
21917
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+bb68c2431f6fedc6/node_modules/@gobing-ai/ts-runtime/dist/db-errors.js
21917
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+2749503d16def146/node_modules/@gobing-ai/ts-runtime/dist/db-errors.js
21918
21918
  var DbModuleNotInstalledError;
21919
21919
  var init_db_errors = __esm(() => {
21920
21920
  DbModuleNotInstalledError = class DbModuleNotInstalledError extends Error {
@@ -29125,7 +29125,7 @@ var init_execa = __esm(() => {
29125
29125
  } = getIpcExport());
29126
29126
  });
29127
29127
 
29128
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+bb68c2431f6fedc6/node_modules/@gobing-ai/ts-runtime/dist/process-executor.js
29128
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+2749503d16def146/node_modules/@gobing-ai/ts-runtime/dist/process-executor.js
29129
29129
  import { isatty } from "tty";
29130
29130
  function processEventSeverity(reason, exitCode) {
29131
29131
  if (reason === "error")
@@ -29489,7 +29489,7 @@ var init_process_executor = __esm(() => {
29489
29489
  init_config();
29490
29490
  });
29491
29491
 
29492
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+bb68c2431f6fedc6/node_modules/@gobing-ai/ts-runtime/dist/runtime-node-bun.js
29492
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+2749503d16def146/node_modules/@gobing-ai/ts-runtime/dist/runtime-node-bun.js
29493
29493
  function getNodeFileSystem() {
29494
29494
  if (!_nodeFileSystem)
29495
29495
  _nodeFileSystem = createNodeFileSystem();
@@ -29549,7 +29549,7 @@ var init_runtime_node_bun = __esm(() => {
29549
29549
  };
29550
29550
  });
29551
29551
 
29552
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+bb68c2431f6fedc6/node_modules/@gobing-ai/ts-runtime/dist/context.js
29552
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+2749503d16def146/node_modules/@gobing-ai/ts-runtime/dist/context.js
29553
29553
  class RuntimeContext {
29554
29554
  scope;
29555
29555
  runtimeName;
@@ -29619,7 +29619,7 @@ var init_context = __esm(() => {
29619
29619
  init_runtime_node_bun();
29620
29620
  });
29621
29621
 
29622
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+bb68c2431f6fedc6/node_modules/@gobing-ai/ts-runtime/dist/path.js
29622
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+2749503d16def146/node_modules/@gobing-ai/ts-runtime/dist/path.js
29623
29623
  function normalizeSeparators(path6) {
29624
29624
  return path6.replaceAll("\\", "/");
29625
29625
  }
@@ -29680,17 +29680,17 @@ var init_path = __esm(() => {
29680
29680
  SEP = globalThis.process?.platform === "win32" ? "\\" : "/";
29681
29681
  });
29682
29682
 
29683
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+bb68c2431f6fedc6/node_modules/@gobing-ai/ts-runtime/dist/schema-validation.js
29683
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+2749503d16def146/node_modules/@gobing-ai/ts-runtime/dist/schema-validation.js
29684
29684
  var REMOTE_SCHEMA_MAX_BYTES;
29685
29685
  var init_schema_validation = __esm(() => {
29686
29686
  init_dist2();
29687
29687
  REMOTE_SCHEMA_MAX_BYTES = 5 * 1024 * 1024;
29688
29688
  });
29689
29689
 
29690
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+bb68c2431f6fedc6/node_modules/@gobing-ai/ts-runtime/dist/types.js
29690
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+2749503d16def146/node_modules/@gobing-ai/ts-runtime/dist/types.js
29691
29691
  var init_types = () => {};
29692
29692
 
29693
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+bb68c2431f6fedc6/node_modules/@gobing-ai/ts-runtime/dist/index.js
29693
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+2749503d16def146/node_modules/@gobing-ai/ts-runtime/dist/index.js
29694
29694
  var init_dist3 = __esm(() => {
29695
29695
  init_config();
29696
29696
  init_context();
@@ -29699,7 +29699,7 @@ var init_dist3 = __esm(() => {
29699
29699
  init_types();
29700
29700
  });
29701
29701
 
29702
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+bb68c2431f6fedc6/node_modules/@gobing-ai/ts-runtime/dist/bun-sqlite.js
29702
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+2749503d16def146/node_modules/@gobing-ai/ts-runtime/dist/bun-sqlite.js
29703
29703
  import { Database } from "bun:sqlite";
29704
29704
  var init_bun_sqlite = () => {};
29705
29705
 
@@ -34129,7 +34129,7 @@ var init_bun_sqlite2 = __esm(() => {
34129
34129
  init_session2();
34130
34130
  });
34131
34131
 
34132
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.49+4d63c5444243fb3e/node_modules/@gobing-ai/ts-db/dist/schema/inbox-messages.js
34132
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.50+dad0306531cee459/node_modules/@gobing-ai/ts-db/dist/schema/inbox-messages.js
34133
34133
  var inboxMessages;
34134
34134
  var init_inbox_messages = __esm(() => {
34135
34135
  init_sqlite_core();
@@ -34148,7 +34148,7 @@ var init_inbox_messages = __esm(() => {
34148
34148
  }, (table2) => [index("idx_inbox_messages_to_status").on(table2.toId, table2.status)]);
34149
34149
  });
34150
34150
 
34151
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.49+4d63c5444243fb3e/node_modules/@gobing-ai/ts-db/dist/schema/common.js
34151
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.50+dad0306531cee459/node_modules/@gobing-ai/ts-db/dist/schema/common.js
34152
34152
  function nowTimestamp() {
34153
34153
  return Date.now();
34154
34154
  }
@@ -34177,7 +34177,7 @@ var init_common3 = __esm(() => {
34177
34177
  appendOnlyColumns = buildAppendOnlyColumns();
34178
34178
  });
34179
34179
 
34180
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.49+4d63c5444243fb3e/node_modules/@gobing-ai/ts-db/dist/schema/queue-jobs.js
34180
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.50+dad0306531cee459/node_modules/@gobing-ai/ts-db/dist/schema/queue-jobs.js
34181
34181
  var queueJobs;
34182
34182
  var init_queue_jobs = __esm(() => {
34183
34183
  init_sqlite_core();
@@ -34197,7 +34197,7 @@ var init_queue_jobs = __esm(() => {
34197
34197
  }, (table2) => [index("queue_jobs_ready_idx").on(table2.status, table2.nextRetryAt, table2.createdAt)]);
34198
34198
  });
34199
34199
 
34200
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.49+4d63c5444243fb3e/node_modules/@gobing-ai/ts-db/dist/schema/runtime.js
34200
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.50+dad0306531cee459/node_modules/@gobing-ai/ts-db/dist/schema/runtime.js
34201
34201
  var exports_runtime = {};
34202
34202
  __export(exports_runtime, {
34203
34203
  queueJobs: () => queueJobs,
@@ -34208,7 +34208,7 @@ var init_runtime = __esm(() => {
34208
34208
  init_queue_jobs();
34209
34209
  });
34210
34210
 
34211
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.49+4d63c5444243fb3e/node_modules/@gobing-ai/ts-db/dist/adapters/bun-sqlite.js
34211
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.50+dad0306531cee459/node_modules/@gobing-ai/ts-db/dist/adapters/bun-sqlite.js
34212
34212
  var exports_bun_sqlite = {};
34213
34213
  __export(exports_bun_sqlite, {
34214
34214
  BunSqliteAdapter: () => BunSqliteAdapter
@@ -34519,7 +34519,7 @@ var init_d1 = __esm(() => {
34519
34519
  init_session3();
34520
34520
  });
34521
34521
 
34522
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.49+4d63c5444243fb3e/node_modules/@gobing-ai/ts-db/dist/adapters/d1.js
34522
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.50+dad0306531cee459/node_modules/@gobing-ai/ts-db/dist/adapters/d1.js
34523
34523
  var exports_d1 = {};
34524
34524
  __export(exports_d1, {
34525
34525
  D1Adapter: () => D1Adapter
@@ -34583,7 +34583,7 @@ var init_d12 = __esm(() => {
34583
34583
  init_runtime();
34584
34584
  });
34585
34585
 
34586
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.49+4d63c5444243fb3e/node_modules/@gobing-ai/ts-db/dist/adapter.js
34586
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.50+dad0306531cee459/node_modules/@gobing-ai/ts-db/dist/adapter.js
34587
34587
  async function createDbAdapter(config3) {
34588
34588
  switch (config3.driver) {
34589
34589
  case "bun-sqlite": {
@@ -34617,7 +34617,7 @@ var init_drizzle_orm = __esm(() => {
34617
34617
  init_view_common();
34618
34618
  });
34619
34619
 
34620
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.49+4d63c5444243fb3e/node_modules/@gobing-ai/ts-db/dist/query-spec.js
34620
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.50+dad0306531cee459/node_modules/@gobing-ai/ts-db/dist/query-spec.js
34621
34621
  function compilePredicate(predicate) {
34622
34622
  if ("and" in predicate) {
34623
34623
  const parts = predicate.and.map(compilePredicate).filter((p) => p !== undefined);
@@ -34655,7 +34655,7 @@ var init_query_spec = __esm(() => {
34655
34655
  };
34656
34656
  });
34657
34657
 
34658
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.49+4d63c5444243fb3e/node_modules/@gobing-ai/ts-db/dist/base-dao.js
34658
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.50+dad0306531cee459/node_modules/@gobing-ai/ts-db/dist/base-dao.js
34659
34659
  function asSelectQuery(query) {
34660
34660
  return query;
34661
34661
  }
@@ -34697,7 +34697,7 @@ var init_base_dao = __esm(() => {
34697
34697
  init_query_spec();
34698
34698
  });
34699
34699
 
34700
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.49+4d63c5444243fb3e/node_modules/@gobing-ai/ts-db/dist/embedded-migrations.js
34700
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.50+dad0306531cee459/node_modules/@gobing-ai/ts-db/dist/embedded-migrations.js
34701
34701
  var embeddedMigrations;
34702
34702
  var init_embedded_migrations = __esm(() => {
34703
34703
  embeddedMigrations = [
@@ -34729,7 +34729,7 @@ var init_embedded_migrations = __esm(() => {
34729
34729
  ];
34730
34730
  });
34731
34731
 
34732
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.49+4d63c5444243fb3e/node_modules/@gobing-ai/ts-db/dist/entity-dao.js
34732
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.50+dad0306531cee459/node_modules/@gobing-ai/ts-db/dist/entity-dao.js
34733
34733
  var EntityDao;
34734
34734
  var init_entity_dao = __esm(() => {
34735
34735
  init_drizzle_orm();
@@ -34891,7 +34891,7 @@ var init_entity_dao = __esm(() => {
34891
34891
  };
34892
34892
  });
34893
34893
 
34894
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.49+4d63c5444243fb3e/node_modules/@gobing-ai/ts-db/dist/inbox-message-dao.js
34894
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.50+dad0306531cee459/node_modules/@gobing-ai/ts-db/dist/inbox-message-dao.js
34895
34895
  function isPromiseLike(value) {
34896
34896
  return value !== null && (typeof value === "object" || typeof value === "function") && typeof value.then === "function";
34897
34897
  }
@@ -35069,7 +35069,7 @@ var init_migrator2 = __esm(() => {
35069
35069
  init_migrator();
35070
35070
  });
35071
35071
 
35072
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.49+4d63c5444243fb3e/node_modules/@gobing-ai/ts-db/dist/migrate.js
35072
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.50+dad0306531cee459/node_modules/@gobing-ai/ts-db/dist/migrate.js
35073
35073
  async function ensureJournalTable(adapter, table3) {
35074
35074
  await adapter.exec(`CREATE TABLE IF NOT EXISTS "${table3}" (` + "id INTEGER PRIMARY KEY AUTOINCREMENT, " + "hash text NOT NULL, " + "created_at numeric" + ")");
35075
35075
  }
@@ -35144,7 +35144,7 @@ var init_migrate = __esm(() => {
35144
35144
  init_embedded_migrations();
35145
35145
  });
35146
35146
 
35147
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.49+4d63c5444243fb3e/node_modules/@gobing-ai/ts-db/dist/queue-job-dao.js
35147
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.50+dad0306531cee459/node_modules/@gobing-ai/ts-db/dist/queue-job-dao.js
35148
35148
  var QueueJobDao;
35149
35149
  var init_queue_job_dao = __esm(() => {
35150
35150
  init_drizzle_orm();
@@ -35285,7 +35285,7 @@ var init_queue_job_dao = __esm(() => {
35285
35285
  };
35286
35286
  });
35287
35287
 
35288
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.49+4d63c5444243fb3e/node_modules/@gobing-ai/ts-db/dist/index.js
35288
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.50+dad0306531cee459/node_modules/@gobing-ai/ts-db/dist/index.js
35289
35289
  var exports_dist = {};
35290
35290
  __export(exports_dist, {
35291
35291
  embeddedMigrations: () => embeddedMigrations,
@@ -37418,7 +37418,7 @@ var require_extra_typings = __commonJS((exports, module) => {
37418
37418
  exports.createArgument = (name, description) => new commander.Argument(name, description);
37419
37419
  });
37420
37420
 
37421
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/config.js
37421
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/config.js
37422
37422
  function parseYamlObject(text3) {
37423
37423
  let parsed;
37424
37424
  try {
@@ -37545,7 +37545,7 @@ var init_config2 = __esm(() => {
37545
37545
  };
37546
37546
  });
37547
37547
 
37548
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/file-system-node.js
37548
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/file-system-node.js
37549
37549
  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";
37550
37550
  import { dirname as dirname2, resolve as resolvePath3 } from "path";
37551
37551
  function createNodeFileSystem3(root, paths) {
@@ -37632,7 +37632,7 @@ function findProjectRoot3(startDir) {
37632
37632
  }
37633
37633
  var init_file_system_node2 = () => {};
37634
37634
 
37635
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/db-errors.js
37635
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/db-errors.js
37636
37636
  var D1NotConfiguredError2, DbModuleNotInstalledError3;
37637
37637
  var init_db_errors2 = __esm(() => {
37638
37638
  D1NotConfiguredError2 = class D1NotConfiguredError2 extends Error {
@@ -37649,7 +37649,7 @@ var init_db_errors2 = __esm(() => {
37649
37649
  };
37650
37650
  });
37651
37651
 
37652
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/file-system-cf.js
37652
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/file-system-cf.js
37653
37653
  function createCfFileSystem2() {
37654
37654
  return {
37655
37655
  getProjectRoot: () => "/bundle",
@@ -37688,7 +37688,7 @@ function createCfFileSystem2() {
37688
37688
  }
37689
37689
  var UNSUPPORTED = "FileSystem is not available on Cloudflare Workers. Use D1, KV, or R2 for persistent storage.";
37690
37690
 
37691
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/runtime-cf.js
37691
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/runtime-cf.js
37692
37692
  var exports_runtime_cf = {};
37693
37693
  __export(exports_runtime_cf, {
37694
37694
  cloudflareWorkersFactory: () => cloudflareWorkersFactory2
@@ -37726,7 +37726,7 @@ var init_runtime_cf = __esm(() => {
37726
37726
  };
37727
37727
  });
37728
37728
 
37729
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/process-executor.js
37729
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/process-executor.js
37730
37730
  import { isatty as isatty2 } from "tty";
37731
37731
  function processEventSeverity2(reason, exitCode) {
37732
37732
  if (reason === "error")
@@ -38137,7 +38137,7 @@ var init_process_executor2 = __esm(() => {
38137
38137
  ProcessExecutor2 = NodeProcessExecutor3;
38138
38138
  });
38139
38139
 
38140
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/runtime-node-bun.js
38140
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/runtime-node-bun.js
38141
38141
  var exports_runtime_node_bun = {};
38142
38142
  __export(exports_runtime_node_bun, {
38143
38143
  nodeBunFactory: () => nodeBunFactory3,
@@ -38205,7 +38205,7 @@ var init_runtime_node_bun2 = __esm(() => {
38205
38205
  };
38206
38206
  });
38207
38207
 
38208
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/platform.js
38208
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/platform.js
38209
38209
  function isCloudflareWorkerRuntime2() {
38210
38210
  return globalThis.navigator?.userAgent?.startsWith("Cloudflare-Workers") ?? false;
38211
38211
  }
@@ -38235,7 +38235,7 @@ function _resetRuntimeFactory2() {
38235
38235
  }
38236
38236
  var _factory, _runtimeName;
38237
38237
 
38238
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/context.js
38238
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/context.js
38239
38239
  class RuntimeContext2 {
38240
38240
  scope;
38241
38241
  runtimeName;
@@ -38325,7 +38325,7 @@ var init_context2 = __esm(() => {
38325
38325
  init_runtime_node_bun2();
38326
38326
  });
38327
38327
 
38328
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/path.js
38328
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/path.js
38329
38329
  function normalizeSeparators2(path7) {
38330
38330
  return path7.replaceAll("\\", "/");
38331
38331
  }
@@ -38448,7 +38448,7 @@ var init_path2 = __esm(() => {
38448
38448
  SEP2 = globalThis.process?.platform === "win32" ? "\\" : "/";
38449
38449
  });
38450
38450
 
38451
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/fs.js
38451
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/fs.js
38452
38452
  async function ensureDirForFile2(path7, fs2 = createNodeFileSystem3()) {
38453
38453
  await fs2.ensureDir(dirnamePath(path7));
38454
38454
  }
@@ -38516,7 +38516,7 @@ var init_fs = __esm(() => {
38516
38516
  init_path2();
38517
38517
  });
38518
38518
 
38519
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/process-registry.js
38519
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/process-registry.js
38520
38520
  function allocateId() {
38521
38521
  nextIdSeq += 1;
38522
38522
  return `pe_${Date.now().toString(36)}_${nextIdSeq.toString(36)}`;
@@ -38640,7 +38640,7 @@ function createInMemoryProcessRegistry2(options) {
38640
38640
  }
38641
38641
  var nextIdSeq = 0;
38642
38642
 
38643
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/runtime-paths.js
38643
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/runtime-paths.js
38644
38644
  function ambientRuntimePaths2() {
38645
38645
  const cwd = getProcessCwd2();
38646
38646
  return { cwd, home: getHomeDir() ?? cwd };
@@ -38650,7 +38650,7 @@ var init_runtime_paths = __esm(() => {
38650
38650
  init_path2();
38651
38651
  });
38652
38652
 
38653
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/schema-validation.js
38653
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/schema-validation.js
38654
38654
  async function loadStructuredConfig(path7, options = {}) {
38655
38655
  const content = await (options.fileSystem ?? createNodeFileSystem3()).readFile(path7);
38656
38656
  return await parseStructuredConfig(content, path7, options);
@@ -38933,10 +38933,10 @@ var init_schema_validation2 = __esm(() => {
38933
38933
  defaultResolve = typeof Bun !== "undefined" ? (specifier, from) => Bun.resolveSync(specifier, from) : undefined;
38934
38934
  });
38935
38935
 
38936
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/types.js
38936
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/types.js
38937
38937
  var init_types2 = () => {};
38938
38938
 
38939
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/index.js
38939
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/index.js
38940
38940
  var exports_dist2 = {};
38941
38941
  __export(exports_dist2, {
38942
38942
  writeJsonFile: () => writeJsonFile2,
@@ -41821,7 +41821,7 @@ var init_mod = __esm(() => {
41821
41821
  init_config3();
41822
41822
  });
41823
41823
 
41824
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/logger.js
41824
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/logger.js
41825
41825
  function toLogTapeLevel(level) {
41826
41826
  return level === "warn" ? "warning" : level;
41827
41827
  }
@@ -43374,7 +43374,7 @@ var require_src = __commonJS((exports) => {
43374
43374
  };
43375
43375
  });
43376
43376
 
43377
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/telemetry/sdk.js
43377
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/telemetry/sdk.js
43378
43378
  function getTelemetryConfig(configPartial = {}) {
43379
43379
  return {
43380
43380
  enabled: configPartial.enabled ?? CONFIG_DEFAULTS.enabled,
@@ -43410,7 +43410,7 @@ var init_sdk = __esm(() => {
43410
43410
  resolvedConfig = getTelemetryConfig();
43411
43411
  });
43412
43412
 
43413
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/telemetry/tracing.js
43413
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/telemetry/tracing.js
43414
43414
  function isSuppressed(tracer2) {
43415
43415
  return tracer2 === undefined && !getResolvedConfig().enabled;
43416
43416
  }
@@ -43450,7 +43450,7 @@ var init_tracing2 = __esm(() => {
43450
43450
  import_api2 = __toESM(require_src(), 1);
43451
43451
  });
43452
43452
 
43453
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/telemetry/metrics.js
43453
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/telemetry/metrics.js
43454
43454
  function getMeter() {
43455
43455
  return import_api3.metrics.getMeter(METER_NAME, METER_VERSION);
43456
43456
  }
@@ -43547,7 +43547,7 @@ var init_metrics = __esm(() => {
43547
43547
  instruments = {};
43548
43548
  });
43549
43549
 
43550
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/event-bus/event-bus.js
43550
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/event-bus/event-bus.js
43551
43551
  function busLogger() {
43552
43552
  if (!_busLogger)
43553
43553
  _busLogger = getLogger2("event-bus");
@@ -43800,7 +43800,7 @@ var init_event_bus = __esm(() => {
43800
43800
  init_metrics();
43801
43801
  });
43802
43802
 
43803
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/event-bus/default-observers.js
43803
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/event-bus/default-observers.js
43804
43804
  function obsLogger() {
43805
43805
  if (!_obsLogger)
43806
43806
  _obsLogger = getLogger2("event-bus.observers");
@@ -43864,7 +43864,7 @@ var init_default_observers = __esm(() => {
43864
43864
  init_event_bus();
43865
43865
  });
43866
43866
 
43867
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/event-bus/file-observer.js
43867
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/event-bus/file-observer.js
43868
43868
  function parentDir(filePath) {
43869
43869
  const idx = filePath.lastIndexOf("/");
43870
43870
  return idx <= 0 ? "." : filePath.slice(0, idx);
@@ -43962,7 +43962,7 @@ var init_file_observer = __esm(() => {
43962
43962
  init_logger3();
43963
43963
  });
43964
43964
 
43965
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/internals/drain.js
43965
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/internals/drain.js
43966
43966
  function settleWithin(promise2, deadline) {
43967
43967
  const remaining = deadline - Date.now();
43968
43968
  if (remaining <= 0)
@@ -43977,7 +43977,7 @@ function settleWithin(promise2, deadline) {
43977
43977
  return settled;
43978
43978
  }
43979
43979
 
43980
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/scheduler/node.js
43980
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/scheduler/node.js
43981
43981
  function parseInterval(cron) {
43982
43982
  const trimmed = cron.trim();
43983
43983
  const num = Number(trimmed);
@@ -44071,7 +44071,7 @@ var init_node3 = __esm(() => {
44071
44071
  init_metrics();
44072
44072
  });
44073
44073
 
44074
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/scheduler-node.js
44074
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/scheduler-node.js
44075
44075
  var exports_scheduler_node = {};
44076
44076
  __export(exports_scheduler_node, {
44077
44077
  NodeSchedulerAdapter: () => NodeSchedulerAdapter
@@ -51609,11 +51609,14 @@ async function toolSequenceQuery(db2, scope, filters = {}, limit = 5000) {
51609
51609
  var MESSAGE_DEDUP = `(m.rowid IN (
51610
51610
  SELECT MAX(rowid) FROM history_message WHERE request_id IS NOT NULL GROUP BY request_id
51611
51611
  ) OR m.request_id IS NULL)`, CACHE_WASTE_MIN_INPUT_TOKENS = 1e5, CACHE_WASTE_MAX_REUSE_FRACTION = 0.1, BUCKET_SECONDS, HISTORY_SKILL_NAME_SQL = `CASE
51612
- WHEN LOWER(tc.tool_name) IN ('skill', 'use_skill', 'invoke_skill') AND json_valid(tc.args_raw)
51612
+ WHEN LOWER(tc.tool_name) IN ('skill', 'use_skill', 'invoke_skill', 'slashcommand', 'slash_command', 'run_skill', 'call_skill', 'execute_skill') AND json_valid(tc.args_raw)
51613
51613
  THEN COALESCE(
51614
51614
  CAST(json_extract(tc.args_raw, '$.skill') AS TEXT),
51615
51615
  CAST(json_extract(tc.args_raw, '$.skill_name') AS TEXT),
51616
+ CAST(json_extract(tc.args_raw, '$.skillName') AS TEXT),
51616
51617
  CAST(json_extract(tc.args_raw, '$.name') AS TEXT),
51618
+ CAST(json_extract(tc.args_raw, '$.command') AS TEXT),
51619
+ CAST(json_extract(tc.args_raw, '$.command_name') AS TEXT),
51617
51620
  CAST(json_extract(tc.args_raw, '$') AS TEXT),
51618
51621
  ''
51619
51622
  )
@@ -52233,11 +52236,14 @@ async function historyBoardKpiTrendFromRollup(db2, sel) {
52233
52236
  var MESSAGE_DEDUP2 = `(m.rowid IN (
52234
52237
  SELECT MIN(rowid) FROM history_message WHERE request_id IS NOT NULL GROUP BY request_id
52235
52238
  ) OR m.request_id IS NULL)`, SKILL_NAME_SQL = `CASE
52236
- WHEN LOWER(tc.tool_name) IN ('skill', 'use_skill', 'invoke_skill') AND json_valid(tc.args_raw)
52239
+ WHEN LOWER(tc.tool_name) IN ('skill', 'use_skill', 'invoke_skill', 'slashcommand', 'slash_command', 'run_skill', 'call_skill', 'execute_skill') AND json_valid(tc.args_raw)
52237
52240
  THEN COALESCE(
52238
52241
  CAST(json_extract(tc.args_raw, '$.skill') AS TEXT),
52239
52242
  CAST(json_extract(tc.args_raw, '$.skill_name') AS TEXT),
52243
+ CAST(json_extract(tc.args_raw, '$.skillName') AS TEXT),
52240
52244
  CAST(json_extract(tc.args_raw, '$.name') AS TEXT),
52245
+ CAST(json_extract(tc.args_raw, '$.command') AS TEXT),
52246
+ CAST(json_extract(tc.args_raw, '$.command_name') AS TEXT),
52241
52247
  CAST(json_extract(tc.args_raw, '$') AS TEXT),
52242
52248
  ''
52243
52249
  )
@@ -54797,7 +54803,7 @@ class ActionRunDao {
54797
54803
  }
54798
54804
  }
54799
54805
 
54800
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.49+4d63c5444243fb3e/node_modules/@gobing-ai/ts-db/dist/schema/drizzle-internals.js
54806
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.50+dad0306531cee459/node_modules/@gobing-ai/ts-db/dist/schema/drizzle-internals.js
54801
54807
  function sqlExpressionToText(value) {
54802
54808
  if (typeof value !== "object" || value === null || !("queryChunks" in value)) {
54803
54809
  return;
@@ -54820,7 +54826,7 @@ function getDrizzleTableName(table3) {
54820
54826
  return String(table3[nameSym]);
54821
54827
  }
54822
54828
 
54823
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.49+4d63c5444243fb3e/node_modules/@gobing-ai/ts-db/dist/schema/ddl.js
54829
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.50+dad0306531cee459/node_modules/@gobing-ai/ts-db/dist/schema/ddl.js
54824
54830
  function quoteIdent(name) {
54825
54831
  return `"${name.replace(/"/g, '""')}"`;
54826
54832
  }
@@ -55192,7 +55198,7 @@ var init_drizzle_zod = __esm(() => {
55192
55198
  };
55193
55199
  });
55194
55200
 
55195
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.49+4d63c5444243fb3e/node_modules/@gobing-ai/ts-db/dist/schema/define-table.js
55201
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.50+dad0306531cee459/node_modules/@gobing-ai/ts-db/dist/schema/define-table.js
55196
55202
  function defineTable(name, columns2) {
55197
55203
  const table3 = sqliteTable(name, columns2);
55198
55204
  let insert2;
@@ -55226,7 +55232,7 @@ var init_define_table = __esm(() => {
55226
55232
  init_ddl();
55227
55233
  });
55228
55234
 
55229
- // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.49+4d63c5444243fb3e/node_modules/@gobing-ai/ts-db/dist/schema/index.js
55235
+ // ../../node_modules/.bun/@gobing-ai+ts-db@0.4.50+dad0306531cee459/node_modules/@gobing-ai/ts-db/dist/schema/index.js
55230
55236
  var exports_schema = {};
55231
55237
  __export(exports_schema, {
55232
55238
  text: () => text,
@@ -55907,7 +55913,7 @@ var init_dao = __esm(() => {
55907
55913
  init_workspace_dao();
55908
55914
  });
55909
55915
 
55910
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/errors.js
55916
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/errors.js
55911
55917
  var WorkflowValidationError, FSMError, RunCollisionError, WorkflowResumeError;
55912
55918
  var init_errors5 = __esm(() => {
55913
55919
  WorkflowValidationError = class WorkflowValidationError extends Error {
@@ -55942,12 +55948,12 @@ var init_errors5 = __esm(() => {
55942
55948
  };
55943
55949
  });
55944
55950
 
55945
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/event-bus/index.js
55951
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/event-bus/index.js
55946
55952
  var init_event_bus2 = __esm(() => {
55947
55953
  init_event_bus();
55948
55954
  });
55949
55955
 
55950
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/api-client.js
55956
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/api-client.js
55951
55957
  function sanitizeUrlForObservability(url2) {
55952
55958
  try {
55953
55959
  const parsed = new URL(url2);
@@ -56178,12 +56184,12 @@ var init_api_client = __esm(() => {
56178
56184
  };
56179
56185
  });
56180
56186
 
56181
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/telemetry/index.js
56187
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/telemetry/index.js
56182
56188
  var init_telemetry = __esm(() => {
56183
56189
  init_tracing2();
56184
56190
  });
56185
56191
 
56186
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/index.js
56192
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/index.js
56187
56193
  var init_dist6 = __esm(() => {
56188
56194
  init_api_client();
56189
56195
  init_event_bus2();
@@ -56191,7 +56197,7 @@ var init_dist6 = __esm(() => {
56191
56197
  init_telemetry();
56192
56198
  });
56193
56199
 
56194
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/run-lifecycle.js
56200
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/run-lifecycle.js
56195
56201
  function runtimeBuiltins(workflowName, stateOrNodeId, runId, transitionsTaken, mode) {
56196
56202
  return {
56197
56203
  workflow: workflowName,
@@ -56475,7 +56481,7 @@ var init_run_lifecycle = __esm(() => {
56475
56481
  ];
56476
56482
  });
56477
56483
 
56478
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/extension/capability-registry.js
56484
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/extension/capability-registry.js
56479
56485
  class CapabilityRegistry {
56480
56486
  kind;
56481
56487
  capabilities = new Map;
@@ -56506,7 +56512,7 @@ class CapabilityRegistry {
56506
56512
  }
56507
56513
  }
56508
56514
 
56509
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/extension/extension-path.js
56515
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/extension/extension-path.js
56510
56516
  function assertRelativeExtensionPath(path9, options = {}) {
56511
56517
  const where = options.sourceName !== undefined ? ` declared by "${options.sourceName}"` : "";
56512
56518
  if (/^([/\\]|[A-Za-z]:[/\\])/.test(path9)) {
@@ -56517,7 +56523,7 @@ function assertRelativeExtensionPath(path9, options = {}) {
56517
56523
  }
56518
56524
  }
56519
56525
 
56520
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/extension/extension-loader.js
56526
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/extension/extension-loader.js
56521
56527
  import { isAbsolute, resolve } from "path";
56522
56528
  async function loadExtensionModules(refs, options, register) {
56523
56529
  if (refs.length === 0)
@@ -56556,17 +56562,17 @@ async function loadExtensionModules(refs, options, register) {
56556
56562
  }
56557
56563
  var init_extension_loader = () => {};
56558
56564
 
56559
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/extension/index.js
56565
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/extension/index.js
56560
56566
  var init_extension = __esm(() => {
56561
56567
  init_extension_loader();
56562
56568
  });
56563
56569
 
56564
- // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.49+25494994f190a870/node_modules/@gobing-ai/ts-runtime/dist/extension.js
56570
+ // ../../node_modules/.bun/@gobing-ai+ts-runtime@0.4.50+abb1690621baaa2b/node_modules/@gobing-ai/ts-runtime/dist/extension.js
56565
56571
  var init_extension2 = __esm(() => {
56566
56572
  init_extension();
56567
56573
  });
56568
56574
 
56569
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/schema.js
56575
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/schema.js
56570
56576
  var RESERVED_VAR_NAMES, IDENTIFIER, VarsSchema, EnvSchema, relativeExtensionPath, WorkflowExtensionsSchema, ActionDefSchema, GuardDefSchema, StateMachineWorkflowDefSchema, TransitionFlowWorkflowDefSchema, WorkflowDefSchema;
56571
56577
  var init_schema2 = __esm(() => {
56572
56578
  init_extension2();
@@ -56668,7 +56674,7 @@ var init_schema2 = __esm(() => {
56668
56674
  WorkflowDefSchema = exports_external.union([StateMachineWorkflowDefSchema, TransitionFlowWorkflowDefSchema]);
56669
56675
  });
56670
56676
 
56671
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/config.js
56677
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/config.js
56672
56678
  async function loadWorkflowDef(path9, options = {}) {
56673
56679
  return parseWorkflowDef(await loadStructuredConfig(path9, options), path9);
56674
56680
  }
@@ -56835,7 +56841,7 @@ var init_config4 = __esm(() => {
56835
56841
  RUNTIME_TEMPLATE_NAMESPACES = new Set(RUNTIME_BUILTIN_KEYS);
56836
56842
  });
56837
56843
 
56838
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/extensions.js
56844
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/extensions.js
56839
56845
  function collectWorkflowExtensions(sourceName, sourceDir, extensions) {
56840
56846
  if (extensions === undefined)
56841
56847
  return [];
@@ -56899,7 +56905,7 @@ var init_extensions = __esm(() => {
56899
56905
  init_errors5();
56900
56906
  });
56901
56907
 
56902
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/host.js
56908
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/host.js
56903
56909
  class WorkflowEngineHost {
56904
56910
  lifecycleBus;
56905
56911
  actions = new CapabilityRegistry("workflow action");
@@ -57069,7 +57075,7 @@ var init_host = __esm(() => {
57069
57075
  init_errors5();
57070
57076
  });
57071
57077
 
57072
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/schema-sql.js
57078
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/schema-sql.js
57073
57079
  var WORKFLOW_ENGINE_SCHEMA_SQL;
57074
57080
  var init_schema_sql = __esm(() => {
57075
57081
  WORKFLOW_ENGINE_SCHEMA_SQL = `
@@ -57142,7 +57148,7 @@ CREATE TABLE IF NOT EXISTS action_runs (
57142
57148
  `.trim();
57143
57149
  });
57144
57150
 
57145
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/persistence.js
57151
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/persistence.js
57146
57152
  async function applyWorkflowEngineSchema(db2) {
57147
57153
  for (const statement of WORKFLOW_ENGINE_SCHEMA_SQL.split(";")) {
57148
57154
  const sql4 = statement.trim();
@@ -57458,7 +57464,7 @@ var init_persistence = __esm(() => {
57458
57464
  init_schema_sql();
57459
57465
  });
57460
57466
 
57461
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/variables.js
57467
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/variables.js
57462
57468
  function mergeVars(workflowVars = {}, overrideVars = {}) {
57463
57469
  return { ...workflowVars, ...overrideVars };
57464
57470
  }
@@ -57518,7 +57524,7 @@ var init_variables = __esm(() => {
57518
57524
  TEMPLATE_REF = /\$\{([^}]+)\}/g;
57519
57525
  });
57520
57526
 
57521
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/action-step.js
57527
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/action-step.js
57522
57528
  async function runActionStep(action, vars, deps) {
57523
57529
  const { host, persistence, lifecycle, stateOrNodeId, runId } = deps;
57524
57530
  const resolved = resolveTemplates(action.options ?? {}, {
@@ -57582,7 +57588,7 @@ var init_action_step = __esm(() => {
57582
57588
  init_variables();
57583
57589
  });
57584
57590
 
57585
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/state-machine.js
57591
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/state-machine.js
57586
57592
  class StateMachineDriver {
57587
57593
  options;
57588
57594
  constructor(options) {
@@ -57718,7 +57724,7 @@ var init_state_machine = __esm(() => {
57718
57724
  EMPTY_OUTCOME = { outcome: "completed", result: undefined, setVars: undefined };
57719
57725
  });
57720
57726
 
57721
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/transition-flow.js
57727
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/transition-flow.js
57722
57728
  class TransitionFlowDriver {
57723
57729
  options;
57724
57730
  constructor(options) {
@@ -57837,7 +57843,7 @@ var init_transition_flow = __esm(() => {
57837
57843
  init_variables();
57838
57844
  });
57839
57845
 
57840
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/service.js
57846
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/service.js
57841
57847
  class WorkflowService {
57842
57848
  host;
57843
57849
  persistence;
@@ -58062,7 +58068,7 @@ var init_service = __esm(() => {
58062
58068
  init_variables();
58063
58069
  });
58064
58070
 
58065
- // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/index.js
58071
+ // ../../node_modules/.bun/@gobing-ai+ts-dual-workflow-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-dual-workflow-engine/dist/index.js
58066
58072
  var init_dist7 = __esm(() => {
58067
58073
  init_config4();
58068
58074
  init_extensions();
@@ -58072,7 +58078,7 @@ var init_dist7 = __esm(() => {
58072
58078
  init_service();
58073
58079
  });
58074
58080
 
58075
- // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.49+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/hash.js
58081
+ // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.50+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/hash.js
58076
58082
  import { createHash as createHash3 } from "crypto";
58077
58083
  function stableJson(value) {
58078
58084
  if (Array.isArray(value)) {
@@ -58089,7 +58095,7 @@ function sha256(value) {
58089
58095
  }
58090
58096
  var init_hash = () => {};
58091
58097
 
58092
- // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.49+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/errors.js
58098
+ // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.50+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/errors.js
58093
58099
  var HistoryImportError;
58094
58100
  var init_errors6 = __esm(() => {
58095
58101
  HistoryImportError = class HistoryImportError extends Error {
@@ -58102,7 +58108,7 @@ var init_errors6 = __esm(() => {
58102
58108
  };
58103
58109
  });
58104
58110
 
58105
- // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.49+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/schema-sql.js
58111
+ // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.50+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/schema-sql.js
58106
58112
  var HISTORY_IMPORT_SCHEMA_SQL;
58107
58113
  var init_schema_sql2 = __esm(() => {
58108
58114
  HISTORY_IMPORT_SCHEMA_SQL = `
@@ -58189,7 +58195,7 @@ CREATE INDEX IF NOT EXISTS idx_history_tool_call_message_hash
58189
58195
  `.trim();
58190
58196
  });
58191
58197
 
58192
- // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.49+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/mappers.js
58198
+ // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.50+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/mappers.js
58193
58199
  function identityFieldMap(keys) {
58194
58200
  const map2 = {};
58195
58201
  for (const key of keys) {
@@ -58223,30 +58229,70 @@ function redactArgs(args) {
58223
58229
  function bashCommandOf(args) {
58224
58230
  if (args === null || typeof args !== "object")
58225
58231
  return;
58226
- const command = args.command;
58232
+ const rec = args;
58233
+ const command = rec.command ?? rec.CommandLine ?? rec.cmd ?? rec.script;
58227
58234
  if (typeof command === "string")
58228
58235
  return command;
58229
58236
  if (Array.isArray(command))
58230
58237
  return command.map(String).join(" ");
58231
58238
  return;
58232
58239
  }
58233
- function maybeArgsRaw(source, toolName, args) {
58234
- const todo = TODO_TOOL_ALLOWLIST[source];
58235
- if (todo?.includes(toolName)) {
58236
- if (typeof args === "string")
58237
- return args;
58238
- if (args === undefined || args === null)
58239
- return;
58240
- return JSON.stringify(args);
58240
+ function normalizeKey(key) {
58241
+ return key.toLowerCase().replace(/[^a-z0-9]/g, "");
58242
+ }
58243
+ function isShellTool(toolName) {
58244
+ return /^(?:bash|shell|cmd|command|exec|execcommand|executecommand|runcommand|shellcommand|runshellcommand)$/.test(normalizeKey(toolName));
58245
+ }
58246
+ function sanitizeValue(value) {
58247
+ if (typeof value === "string") {
58248
+ return value.length > 1000 ? `${value.slice(0, 1000)}[truncated ${value.length} chars]` : value;
58241
58249
  }
58242
- const bash = BASH_TOOL_ALLOWLIST[source];
58243
- if (bash?.includes(toolName)) {
58244
- const command = bashCommandOf(args);
58245
- if (command === undefined)
58246
- return;
58247
- return command.length > BASH_COMMAND_MAX_CHARS ? command.slice(0, BASH_COMMAND_MAX_CHARS) : command;
58250
+ if (Array.isArray(value))
58251
+ return value.map(sanitizeValue);
58252
+ if (value !== null && typeof value === "object") {
58253
+ const out = {};
58254
+ for (const [key, entry] of Object.entries(value)) {
58255
+ out[key] = typeof entry === "string" && entry.length > 120 && BULKY_PAYLOAD_KEYS.has(normalizeKey(key)) ? `[omitted ${entry.length} chars]` : sanitizeValue(entry);
58256
+ }
58257
+ return out;
58248
58258
  }
58249
- return;
58259
+ return value;
58260
+ }
58261
+ function serializeBounded(value) {
58262
+ const serialized = JSON.stringify(sanitizeValue(value));
58263
+ if (serialized.length <= GENERIC_ARGS_MAX_CHARS)
58264
+ return serialized;
58265
+ let preview = serialized;
58266
+ for (;; ) {
58267
+ const wrapper = JSON.stringify({
58268
+ _truncated: true,
58269
+ omittedChars: serialized.length - preview.length,
58270
+ preview
58271
+ });
58272
+ if (wrapper.length <= GENERIC_ARGS_MAX_CHARS)
58273
+ return wrapper;
58274
+ preview = preview.slice(0, preview.length - (wrapper.length - GENERIC_ARGS_MAX_CHARS));
58275
+ }
58276
+ }
58277
+ function maybeArgsRaw(_source, toolName, args) {
58278
+ if (args === undefined || args === null)
58279
+ return;
58280
+ let value = args;
58281
+ if (typeof args === "string") {
58282
+ try {
58283
+ value = JSON.parse(args);
58284
+ } catch {
58285
+ return args.length > BASH_COMMAND_MAX_CHARS ? args.slice(0, BASH_COMMAND_MAX_CHARS) : args;
58286
+ }
58287
+ }
58288
+ if (value !== null && typeof value === "object") {
58289
+ const cmd = bashCommandOf(value);
58290
+ if (cmd !== undefined && isShellTool(toolName)) {
58291
+ return cmd.length > BASH_COMMAND_MAX_CHARS ? cmd.slice(0, BASH_COMMAND_MAX_CHARS) : cmd;
58292
+ }
58293
+ return serializeBounded(value);
58294
+ }
58295
+ return JSON.stringify(value);
58250
58296
  }
58251
58297
  function claudeSplit(raw) {
58252
58298
  const entries = [];
@@ -59379,7 +59425,7 @@ function extractContentText(content) {
59379
59425
  function stableFieldShape(raw) {
59380
59426
  return Object.keys(raw).map((k) => k.toLowerCase()).sort().join("+");
59381
59427
  }
59382
- var MESSAGE_MAPPER_KEYS, TOOL_CALL_MAPPER_KEYS, TODO_TOOL_ALLOWLIST, BASH_TOOL_ALLOWLIST, BASH_COMMAND_MAX_CHARS = 8192, UUID_PATTERN = "[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}", AGY_BRAIN_REGEX, CODEX_ROLLOUT_REGEX, GROK_META_TYPES, CLAUDE_FIELD_MAP, PI_FIELD_MAP, OMP_FIELD_MAP, CODEX_FIELD_MAP, AGY_FIELD_MAP, GROK_FIELD_MAP, GEMINI_FIELD_MAP, passthroughSchema, CLAUDE_SCHEMA, PI_SCHEMA, OMP_SCHEMA, CODEX_SCHEMA, AGY_SCHEMA, GROK_SCHEMA, GEMINI_SCHEMA;
59428
+ var MESSAGE_MAPPER_KEYS, TOOL_CALL_MAPPER_KEYS, BASH_COMMAND_MAX_CHARS = 8192, GENERIC_ARGS_MAX_CHARS = 8192, BULKY_PAYLOAD_KEYS, UUID_PATTERN = "[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}", AGY_BRAIN_REGEX, CODEX_ROLLOUT_REGEX, GROK_META_TYPES, CLAUDE_FIELD_MAP, PI_FIELD_MAP, OMP_FIELD_MAP, CODEX_FIELD_MAP, AGY_FIELD_MAP, GROK_FIELD_MAP, GEMINI_FIELD_MAP, passthroughSchema, CLAUDE_SCHEMA, PI_SCHEMA, OMP_SCHEMA, CODEX_SCHEMA, AGY_SCHEMA, GROK_SCHEMA, GEMINI_SCHEMA;
59383
59429
  var init_mappers = __esm(() => {
59384
59430
  init_zod();
59385
59431
  init_hash();
@@ -59421,26 +59467,17 @@ var init_mappers = __esm(() => {
59421
59467
  "result_bytes",
59422
59468
  "error_text"
59423
59469
  ];
59424
- TODO_TOOL_ALLOWLIST = {
59425
- claude: ["TodoWrite"],
59426
- opencode: ["todowrite", "todoread"],
59427
- codex: ["update_plan"],
59428
- omp: ["TodoWrite", "todo", "todo_write"],
59429
- grok: ["todo_write"],
59430
- pi: ["todo", "manage_todo_list"],
59431
- agy: [],
59432
- gemini: []
59433
- };
59434
- BASH_TOOL_ALLOWLIST = {
59435
- claude: ["Bash"],
59436
- opencode: ["bash"],
59437
- codex: [],
59438
- omp: [],
59439
- grok: [],
59440
- pi: ["bash"],
59441
- agy: [],
59442
- gemini: []
59443
- };
59470
+ BULKY_PAYLOAD_KEYS = new Set([
59471
+ "content",
59472
+ "codecontent",
59473
+ "replacementcontent",
59474
+ "targetcontent",
59475
+ "filedata",
59476
+ "buffer",
59477
+ "blob",
59478
+ "image",
59479
+ "imagebase64"
59480
+ ]);
59444
59481
  AGY_BRAIN_REGEX = new RegExp(`(?:^|\\/)brain\\/(${UUID_PATTERN})(?:\\/|$)`, "i");
59445
59482
  CODEX_ROLLOUT_REGEX = new RegExp(`(?:^|-|_)(${UUID_PATTERN})$`, "i");
59446
59483
  GROK_META_TYPES = new Set([
@@ -59490,7 +59527,7 @@ var init_mappers = __esm(() => {
59490
59527
  GEMINI_SCHEMA = passthroughSchema;
59491
59528
  });
59492
59529
 
59493
- // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.49+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/sources.js
59530
+ // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.50+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/sources.js
59494
59531
  function firstString(...values) {
59495
59532
  for (const value of values) {
59496
59533
  if (typeof value === "string" && value.length > 0)
@@ -59647,7 +59684,7 @@ var init_sources = __esm(() => {
59647
59684
  };
59648
59685
  });
59649
59686
 
59650
- // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.49+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/jsonl-importer-dao.js
59687
+ // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.50+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/jsonl-importer-dao.js
59651
59688
  function targetTableFor(table3) {
59652
59689
  if (!VALID_TABLE_NAME.test(table3)) {
59653
59690
  throw new HistoryImportError(`Invalid history ETL target table: ${table3}`, { table: table3 });
@@ -59979,7 +60016,7 @@ var init_jsonl_importer_dao = __esm(() => {
59979
60016
  TYPED_IGNORED_KEYS = new Set(["_meta", "split_index"]);
59980
60017
  });
59981
60018
 
59982
- // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.49+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/redaction.js
60019
+ // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.50+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/redaction.js
59983
60020
  function redactValue(value, rules = DEFAULT_REDACTION_RULES) {
59984
60021
  if (typeof value === "string") {
59985
60022
  return rules.reduce((current, rule) => current.replace(rule.pattern, rule.replacement), value);
@@ -60031,7 +60068,7 @@ var init_redaction = __esm(() => {
60031
60068
  ];
60032
60069
  });
60033
60070
 
60034
- // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.49+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/importer.js
60071
+ // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.50+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/importer.js
60035
60072
  function toolCallKey(source, sessionId, callId) {
60036
60073
  return `${source}${TOOL_CALL_KEY_SEP}${sessionId}${TOOL_CALL_KEY_SEP}${callId}`;
60037
60074
  }
@@ -60435,7 +60472,7 @@ var init_importer = __esm(() => {
60435
60472
  init_sources();
60436
60473
  });
60437
60474
 
60438
- // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.49+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/opencode-importer.js
60475
+ // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.50+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/opencode-importer.js
60439
60476
  async function runOpenCodeImport(options) {
60440
60477
  const paths = options.paths ?? ambientRuntimePaths2();
60441
60478
  const sourceDatabase = options.sourceDatabase ?? joinPath2(paths.home, ".local/share/opencode/opencode.db");
@@ -60692,7 +60729,7 @@ var init_opencode_importer = __esm(() => {
60692
60729
  init_redaction();
60693
60730
  });
60694
60731
 
60695
- // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.49+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/index.js
60732
+ // ../../node_modules/.bun/@gobing-ai+ts-llm-jsonl-importer@0.4.50+f66f1d7f0d37c145/node_modules/@gobing-ai/ts-llm-jsonl-importer/dist/index.js
60696
60733
  var init_dist8 = __esm(() => {
60697
60734
  init_importer();
60698
60735
  init_mappers();
@@ -60701,7 +60738,7 @@ var init_dist8 = __esm(() => {
60701
60738
  init_sources();
60702
60739
  });
60703
60740
 
60704
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/config/extensions.js
60741
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/config/extensions.js
60705
60742
  function collectExtensions(sourceName, sourceDir, extensions) {
60706
60743
  if (extensions === undefined)
60707
60744
  return [];
@@ -60715,7 +60752,7 @@ function collectExtensions(sourceName, sourceDir, extensions) {
60715
60752
  }
60716
60753
  var init_extensions2 = () => {};
60717
60754
 
60718
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/types.js
60755
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/types.js
60719
60756
  function createFinding(rule, message, filePath, extras = {}) {
60720
60757
  return {
60721
60758
  ruleId: rule.id,
@@ -60786,7 +60823,7 @@ var init_types3 = __esm(() => {
60786
60823
  });
60787
60824
  });
60788
60825
 
60789
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/config/loader.js
60826
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/config/loader.js
60790
60827
  async function loadPreset(name, options) {
60791
60828
  const merged = await buildMergedRoots(options.roots.map((root) => resolvePath4(root)), options.fileSystem);
60792
60829
  const presetPath = findMergedPreset(merged, name);
@@ -61001,7 +61038,7 @@ var init_loader2 = __esm(() => {
61001
61038
  FIX_MODE_AUTHORITY = { none: 0, suggest: 1, auto: 2 };
61002
61039
  });
61003
61040
 
61004
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/fixers/test-stub-fixer.js
61041
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/fixers/test-stub-fixer.js
61005
61042
  function normalizeFindingPath(filePath) {
61006
61043
  if (!filePath || isAbsolutePath2(filePath))
61007
61044
  return null;
@@ -61066,7 +61103,7 @@ var init_test_stub_fixer = __esm(() => {
61066
61103
  realFileSystem = createNodeFileSystem3();
61067
61104
  });
61068
61105
 
61069
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/fixers/fixers.js
61106
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/fixers/fixers.js
61070
61107
  function registerBuiltinFixers(host, exec) {
61071
61108
  const regexFixer = new RegexFixerProvider;
61072
61109
  const pathFixer = new PathFixerProvider;
@@ -61269,7 +61306,7 @@ var init_fixers = __esm(() => {
61269
61306
  };
61270
61307
  });
61271
61308
 
61272
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.49+c0cc17f5724c5012/node_modules/@gobing-ai/ts-ai-runner/dist/agents/shims.js
61309
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.50+b8485e60079be134/node_modules/@gobing-ai/ts-ai-runner/dist/agents/shims.js
61273
61310
  function getAgentSessionCapability(agent) {
61274
61311
  return AGENT_SESSION_CAPABILITY[agent];
61275
61312
  }
@@ -61565,7 +61602,7 @@ var init_shims = __esm(() => {
61565
61602
  ALIAS_TO_CANONICAL = Object.fromEntries(Object.values(AGENT_SHIMS).flatMap((shim) => (shim.aliases ?? []).map((alias3) => [alias3, shim.name])));
61566
61603
  });
61567
61604
 
61568
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.49+c0cc17f5724c5012/node_modules/@gobing-ai/ts-ai-runner/dist/identity.js
61605
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.50+b8485e60079be134/node_modules/@gobing-ai/ts-ai-runner/dist/identity.js
61569
61606
  function buildIdentityPreamble(ctx) {
61570
61607
  const sections = [
61571
61608
  `You are agent \`${ctx.agentId}\` (${ctx.agentType}) in workspace \`${ctx.workspace}\`.`
@@ -61641,7 +61678,7 @@ var init_identity = __esm(() => {
61641
61678
  init_dist5();
61642
61679
  });
61643
61680
 
61644
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.49+c0cc17f5724c5012/node_modules/@gobing-ai/ts-ai-runner/dist/slash-command.js
61681
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.50+b8485e60079be134/node_modules/@gobing-ai/ts-ai-runner/dist/slash-command.js
61645
61682
  function isClaudeStyleSlashCommand(input) {
61646
61683
  return SLASH_COMMAND_RE2.test(input);
61647
61684
  }
@@ -61669,7 +61706,7 @@ var init_slash_command = __esm(() => {
61669
61706
  SLASH_COMMAND_RE2 = /^\/([a-zA-Z0-9._-]+):([a-zA-Z0-9._-]+)(\s.*)?$/;
61670
61707
  });
61671
61708
 
61672
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.49+c0cc17f5724c5012/node_modules/@gobing-ai/ts-ai-runner/dist/ai-runner.js
61709
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.50+b8485e60079be134/node_modules/@gobing-ai/ts-ai-runner/dist/ai-runner.js
61673
61710
  function buildCorrelationEnv(correlation) {
61674
61711
  return {
61675
61712
  [AGENT_RUN_ID_ENV]: correlation.runId,
@@ -61813,7 +61850,7 @@ var init_ai_runner = __esm(() => {
61813
61850
  init_slash_command();
61814
61851
  });
61815
61852
 
61816
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.49+c0cc17f5724c5012/node_modules/@gobing-ai/ts-ai-runner/dist/agent-detector.js
61853
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.50+b8485e60079be134/node_modules/@gobing-ai/ts-ai-runner/dist/agent-detector.js
61817
61854
  class AgentDetector {
61818
61855
  runner;
61819
61856
  timeout;
@@ -61889,7 +61926,7 @@ var init_agent_detector = __esm(() => {
61889
61926
  VERSION_PATTERN = /(?<version>\d+\.\d+(?:\.\d+)?)/;
61890
61927
  });
61891
61928
 
61892
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.49+c0cc17f5724c5012/node_modules/@gobing-ai/ts-ai-runner/dist/agent-spec.js
61929
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.50+b8485e60079be134/node_modules/@gobing-ai/ts-ai-runner/dist/agent-spec.js
61893
61930
  function validateAgentId(id) {
61894
61931
  if (!/^[a-z][a-z0-9_-]{1,63}$/.test(id)) {
61895
61932
  throw new ValueError(`Invalid agent id "${id}": expected 2-64 chars, lowercase alphanumeric, "_" or "-"`);
@@ -61988,7 +62025,7 @@ var init_agent_spec = __esm(() => {
61988
62025
  };
61989
62026
  });
61990
62027
 
61991
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.49+c0cc17f5724c5012/node_modules/@gobing-ai/ts-ai-runner/dist/agents/auth-shims.js
62028
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.50+b8485e60079be134/node_modules/@gobing-ai/ts-ai-runner/dist/agents/auth-shims.js
61992
62029
  function isNonEmpty(value) {
61993
62030
  return value !== undefined && value.trim().length > 0;
61994
62031
  }
@@ -62113,7 +62150,7 @@ var init_auth_shims = __esm(() => {
62113
62150
  };
62114
62151
  });
62115
62152
 
62116
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.49+c0cc17f5724c5012/node_modules/@gobing-ai/ts-ai-runner/dist/model-health-probe.js
62153
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.50+b8485e60079be134/node_modules/@gobing-ai/ts-ai-runner/dist/model-health-probe.js
62117
62154
  class ModelHealthProbeRegistry {
62118
62155
  probes = new Map;
62119
62156
  register(providerPrefix, probe) {
@@ -62221,7 +62258,7 @@ var init_model_health_probe = __esm(() => {
62221
62258
  };
62222
62259
  });
62223
62260
 
62224
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.49+c0cc17f5724c5012/node_modules/@gobing-ai/ts-ai-runner/dist/doctor-runner.js
62261
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.50+b8485e60079be134/node_modules/@gobing-ai/ts-ai-runner/dist/doctor-runner.js
62225
62262
  class DoctorRunner {
62226
62263
  detector;
62227
62264
  runner;
@@ -62361,15 +62398,15 @@ var init_doctor_runner = __esm(() => {
62361
62398
  init_model_health_probe();
62362
62399
  });
62363
62400
 
62364
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.49+c0cc17f5724c5012/node_modules/@gobing-ai/ts-ai-runner/dist/events.js
62401
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.50+b8485e60079be134/node_modules/@gobing-ai/ts-ai-runner/dist/events.js
62365
62402
  var init_events = () => {};
62366
62403
 
62367
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.49+c0cc17f5724c5012/node_modules/@gobing-ai/ts-ai-runner/dist/messages.js
62404
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.50+b8485e60079be134/node_modules/@gobing-ai/ts-ai-runner/dist/messages.js
62368
62405
  function formatMessage(msg) {
62369
62406
  return `[task from=${msg.fromId ?? "operator"} id=${msg.id}] ${msg.body}`;
62370
62407
  }
62371
62408
 
62372
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.49+c0cc17f5724c5012/node_modules/@gobing-ai/ts-ai-runner/dist/team-agent-process.js
62409
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.50+b8485e60079be134/node_modules/@gobing-ai/ts-ai-runner/dist/team-agent-process.js
62373
62410
  import { Buffer as Buffer5 } from "buffer";
62374
62411
 
62375
62412
  class TeamAgentProcess {
@@ -62503,7 +62540,7 @@ var init_team_agent_process = __esm(() => {
62503
62540
  init_dist5();
62504
62541
  });
62505
62542
 
62506
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.49+c0cc17f5724c5012/node_modules/@gobing-ai/ts-ai-runner/dist/team-orchestrator.js
62543
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.50+b8485e60079be134/node_modules/@gobing-ai/ts-ai-runner/dist/team-orchestrator.js
62507
62544
  class TeamOrchestrator {
62508
62545
  configDir;
62509
62546
  inbox;
@@ -62644,7 +62681,7 @@ var init_team_orchestrator = __esm(() => {
62644
62681
  init_team_agent_process();
62645
62682
  });
62646
62683
 
62647
- // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.49+c0cc17f5724c5012/node_modules/@gobing-ai/ts-ai-runner/dist/index.js
62684
+ // ../../node_modules/.bun/@gobing-ai+ts-ai-runner@0.4.50+b8485e60079be134/node_modules/@gobing-ai/ts-ai-runner/dist/index.js
62648
62685
  var exports_dist3 = {};
62649
62686
  __export(exports_dist3, {
62650
62687
  validateAgentId: () => validateAgentId,
@@ -62697,7 +62734,7 @@ var init_dist9 = __esm(() => {
62697
62734
  init_team_orchestrator();
62698
62735
  });
62699
62736
 
62700
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/config-access.js
62737
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/config-access.js
62701
62738
  function stringArray(value) {
62702
62739
  return Array.isArray(value) && value.every((item) => typeof item === "string") ? value : undefined;
62703
62740
  }
@@ -62735,7 +62772,7 @@ function parseInlineFlags(source) {
62735
62772
  return { flags, rest: source.slice(match[0].length) };
62736
62773
  }
62737
62774
 
62738
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/glob-match.js
62775
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/glob-match.js
62739
62776
  function matchesAny(path9, patterns) {
62740
62777
  if (patterns === undefined || patterns.length === 0)
62741
62778
  return true;
@@ -62783,7 +62820,7 @@ function escapeRegExp(value) {
62783
62820
  return value.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
62784
62821
  }
62785
62822
 
62786
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/file-discovery.js
62823
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/file-discovery.js
62787
62824
  async function discoverFiles2(options) {
62788
62825
  const fs3 = options.fs ?? createNodeFileSystem3();
62789
62826
  const allFiles = await walkDir2(options.workdir, fs3, DEFAULT_EXCLUDES);
@@ -62814,12 +62851,12 @@ var init_file_discovery = __esm(() => {
62814
62851
  DEFAULT_EXCLUDES = new Set([".git", "node_modules", "dist", ".coverage", ".astro", ".wrangler"]);
62815
62852
  });
62816
62853
 
62817
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/file-utils.js
62854
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/file-utils.js
62818
62855
  var init_file_utils = __esm(() => {
62819
62856
  init_file_discovery();
62820
62857
  });
62821
62858
 
62822
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/agent-detection-evaluator.js
62859
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/agent-detection-evaluator.js
62823
62860
  class AgentDetectionEvaluator {
62824
62861
  detector;
62825
62862
  constructor(detector = new AgentDetector) {
@@ -62847,7 +62884,7 @@ var init_agent_detection_evaluator = __esm(() => {
62847
62884
  init_file_utils();
62848
62885
  });
62849
62886
 
62850
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/coverage-gate-evaluator.js
62887
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/coverage-gate-evaluator.js
62851
62888
  class CoverageGateEvaluator {
62852
62889
  constructor() {}
62853
62890
  async evaluate(rule, context4) {
@@ -62931,7 +62968,7 @@ var init_coverage_gate_evaluator = __esm(() => {
62931
62968
  init_file_utils();
62932
62969
  });
62933
62970
 
62934
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/exit-code-evaluator.js
62971
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/exit-code-evaluator.js
62935
62972
  class ExitCodeEvaluator {
62936
62973
  executor;
62937
62974
  constructor(executor = nodeBunFactory3.createProcessExecutor()) {
@@ -62967,7 +63004,7 @@ var init_exit_code_evaluator = __esm(() => {
62967
63004
  init_file_utils();
62968
63005
  });
62969
63006
 
62970
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/forbidden-import-evaluator.js
63007
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/forbidden-import-evaluator.js
62971
63008
  class ForbiddenImportEvaluator {
62972
63009
  constructor() {}
62973
63010
  async evaluate(rule, context4) {
@@ -63048,7 +63085,7 @@ var init_forbidden_import_evaluator = __esm(() => {
63048
63085
  init_file_utils();
63049
63086
  });
63050
63087
 
63051
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/import-boundary-evaluator.js
63088
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/import-boundary-evaluator.js
63052
63089
  class ImportBoundaryEvaluator {
63053
63090
  async evaluate(rule, context4) {
63054
63091
  const config4 = rule.evaluator.config ?? {};
@@ -63141,7 +63178,7 @@ var init_import_boundary_evaluator = __esm(() => {
63141
63178
  init_file_utils();
63142
63179
  });
63143
63180
 
63144
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/path-evaluator.js
63181
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/path-evaluator.js
63145
63182
  class PathEvaluator {
63146
63183
  constructor() {}
63147
63184
  async evaluate(rule, context4) {
@@ -63202,7 +63239,7 @@ var init_path_evaluator = __esm(() => {
63202
63239
  init_file_utils();
63203
63240
  });
63204
63241
 
63205
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/regex-evaluator.js
63242
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/regex-evaluator.js
63206
63243
  class RegexEvaluator {
63207
63244
  constructor() {}
63208
63245
  async evaluate(rule, context4) {
@@ -63280,7 +63317,7 @@ var init_regex_evaluator = __esm(() => {
63280
63317
  init_file_utils();
63281
63318
  });
63282
63319
 
63283
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/ripgrep-evaluator.js
63320
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/ripgrep-evaluator.js
63284
63321
  class RipgrepEvaluator {
63285
63322
  executor;
63286
63323
  constructor(executor = nodeBunFactory3.createProcessExecutor()) {
@@ -63373,7 +63410,7 @@ var init_ripgrep_evaluator = __esm(() => {
63373
63410
  init_file_utils();
63374
63411
  });
63375
63412
 
63376
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/schema-artifact-evaluator.js
63413
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/schema-artifact-evaluator.js
63377
63414
  class SchemaArtifactEvaluator {
63378
63415
  constructor() {}
63379
63416
  async evaluate(rule, context4) {
@@ -63451,7 +63488,7 @@ var init_schema_artifact_evaluator = __esm(() => {
63451
63488
  init_file_utils();
63452
63489
  });
63453
63490
 
63454
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/secrets-scanner-evaluator.js
63491
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/secrets-scanner-evaluator.js
63455
63492
  class SecretsScannerEvaluator {
63456
63493
  constructor() {}
63457
63494
  async evaluate(rule, context4) {
@@ -63519,7 +63556,7 @@ var init_secrets_scanner_evaluator = __esm(() => {
63519
63556
  ALL_CATEGORIES = Object.keys(BUILTIN_PATTERNS);
63520
63557
  });
63521
63558
 
63522
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/sg-evaluator.js
63559
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/sg-evaluator.js
63523
63560
  class SgEvaluator {
63524
63561
  executor;
63525
63562
  constructor(executor = nodeBunFactory3.createProcessExecutor()) {
@@ -63616,7 +63653,7 @@ var init_sg_evaluator = __esm(() => {
63616
63653
  init_file_utils();
63617
63654
  });
63618
63655
 
63619
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/resolvers/test-path-resolver.js
63656
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/resolvers/test-path-resolver.js
63620
63657
  class TypeScriptTestPathResolver {
63621
63658
  name = "typescript";
63622
63659
  constructor() {}
@@ -63699,7 +63736,7 @@ function testify(rel) {
63699
63736
  return `${dir}test_${base2}`;
63700
63737
  }
63701
63738
 
63702
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/test-location-evaluator.js
63739
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/test-location-evaluator.js
63703
63740
  class TestLocationEvaluator {
63704
63741
  resolvers;
63705
63742
  constructor(resolvers) {
@@ -63774,7 +63811,7 @@ var init_test_location_evaluator = __esm(() => {
63774
63811
  TYPESCRIPT_FALLBACK = new TypeScriptTestPathResolver;
63775
63812
  });
63776
63813
 
63777
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/tsdoc-export-evaluator.js
63814
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/evaluators/tsdoc-export-evaluator.js
63778
63815
  class TsdocExportEvaluator {
63779
63816
  constructor() {}
63780
63817
  async evaluate(rule, context4) {
@@ -63859,7 +63896,7 @@ var init_tsdoc_export_evaluator = __esm(() => {
63859
63896
  };
63860
63897
  });
63861
63898
 
63862
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/formatters/json.js
63899
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/formatters/json.js
63863
63900
  class JsonFormatter {
63864
63901
  constructor() {}
63865
63902
  format(result) {
@@ -63867,7 +63904,7 @@ class JsonFormatter {
63867
63904
  }
63868
63905
  }
63869
63906
 
63870
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/formatters/text.js
63907
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/formatters/text.js
63871
63908
  class TextFormatter {
63872
63909
  constructor() {}
63873
63910
  format(result) {
@@ -63881,7 +63918,7 @@ class TextFormatter {
63881
63918
  }
63882
63919
  }
63883
63920
 
63884
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/host/builtins.js
63921
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/host/builtins.js
63885
63922
  function registerBuiltins(host, executor) {
63886
63923
  const path9 = new PathEvaluator;
63887
63924
  host.evaluators.register("regex", new RegexEvaluator, "builtin");
@@ -63921,7 +63958,7 @@ var init_builtins = __esm(() => {
63921
63958
  init_tsdoc_export_evaluator();
63922
63959
  });
63923
63960
 
63924
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/host/rule-engine-host.js
63961
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/host/rule-engine-host.js
63925
63962
  class RuleEngineHost {
63926
63963
  evaluators;
63927
63964
  formatters;
@@ -63938,7 +63975,7 @@ var init_rule_engine_host = __esm(() => {
63938
63975
  init_extension2();
63939
63976
  });
63940
63977
 
63941
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/engine.js
63978
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/engine.js
63942
63979
  class RuleEngine {
63943
63980
  host;
63944
63981
  events;
@@ -64124,7 +64161,7 @@ var init_engine = __esm(() => {
64124
64161
  init_types3();
64125
64162
  });
64126
64163
 
64127
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/host/bundled-rules.js
64164
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/host/bundled-rules.js
64128
64165
  async function bundledRulesRoot() {
64129
64166
  if (cachedRoot2 !== undefined)
64130
64167
  return cachedRoot2;
@@ -64175,7 +64212,7 @@ var init_bundled_rules = __esm(() => {
64175
64212
  init_dist5();
64176
64213
  });
64177
64214
 
64178
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/persistence/db-adapter.js
64215
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/persistence/db-adapter.js
64179
64216
  class DbRulePersistenceAdapter {
64180
64217
  db;
64181
64218
  constructor(db2) {
@@ -64209,7 +64246,7 @@ class DbRulePersistenceAdapter {
64209
64246
  }
64210
64247
  }
64211
64248
 
64212
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/persistence/schema.js
64249
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/persistence/schema.js
64213
64250
  var RULE_ENGINE_SCHEMA_SQL = `
64214
64251
  CREATE TABLE IF NOT EXISTS rule_runs (
64215
64252
  id TEXT PRIMARY KEY,
@@ -64255,10 +64292,10 @@ CREATE TABLE IF NOT EXISTS rule_eval_runs (
64255
64292
  CREATE INDEX IF NOT EXISTS idx_rule_eval_runs_run_id ON rule_eval_runs (run_id);
64256
64293
  `;
64257
64294
 
64258
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/persistence/index.js
64295
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/persistence/index.js
64259
64296
  var init_persistence2 = () => {};
64260
64297
 
64261
- // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.49+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/index.js
64298
+ // ../../node_modules/.bun/@gobing-ai+ts-rule-engine@0.4.50+df32fe902834add3/node_modules/@gobing-ai/ts-rule-engine/dist/index.js
64262
64299
  var init_dist10 = __esm(() => {
64263
64300
  init_extensions2();
64264
64301
  init_loader2();
@@ -64939,7 +64976,7 @@ ${HISTORY_TASK_SESSION_SCHEMA_SQL}
64939
64976
  ];
64940
64977
  });
64941
64978
 
64942
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/job-queue/db-job-queue.js
64979
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/job-queue/db-job-queue.js
64943
64980
  function queueLogger() {
64944
64981
  if (!_queueLogger)
64945
64982
  _queueLogger = getLogger2("job-queue");
@@ -65242,7 +65279,7 @@ var init_db_job_queue = __esm(() => {
65242
65279
  init_tracing2();
65243
65280
  });
65244
65281
 
65245
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/job-queue-db.js
65282
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/job-queue-db.js
65246
65283
  var exports_job_queue_db = {};
65247
65284
  __export(exports_job_queue_db, {
65248
65285
  DBQueueConsumer: () => DBQueueConsumer,
@@ -77638,7 +77675,7 @@ class MockHistoryBoardService {
77638
77675
  const totalTokensWithCache = totalBilled + totalCacheSaved;
77639
77676
  const cacheSavedPercent = totalTokensWithCache > 0 ? Math.round(totalCacheSaved / totalTokensWithCache * 100) : 0;
77640
77677
  const errorRate = totalTools > 0 ? Math.round(totalErrors / totalTools * 1000) / 10 : 0;
77641
- const bucket = filter?.bucket === "auto" || filter?.bucket === undefined ? filter?.range === "1h" ? "5m" : filter?.range === "4h" || filter?.range === "24h" ? "10m" : filter?.range === "7d" ? "30m" : "1d" : filter.bucket;
77678
+ const bucket = filter?.bucket === "auto" || filter?.bucket === undefined ? filter?.range === "1h" || filter?.range === "4h" ? "5m" : filter?.range === "24h" ? "10m" : filter?.range === "7d" ? "30m" : "1d" : filter.bucket;
77642
77679
  const bucketInterval = {
77643
77680
  "5m": 5 * 60000,
77644
77681
  "10m": 10 * 60000,
@@ -77649,17 +77686,42 @@ class MockHistoryBoardService {
77649
77686
  }[bucket];
77650
77687
  const dimension = filter?.dimension ?? "model";
77651
77688
  const buckets = {};
77689
+ const modelBuckets = {};
77690
+ const sourceBuckets = {};
77691
+ const toolBuckets = {};
77652
77692
  const skillBuckets = {};
77653
77693
  for (const s3 of matching) {
77654
77694
  const bKey = new Date(Math.floor(s3.start / bucketInterval) * bucketInterval).toISOString();
77655
77695
  if (!buckets[bKey])
77656
77696
  buckets[bKey] = { total: 0, cacheRead: 0, series: {} };
77697
+ if (!modelBuckets[bKey])
77698
+ modelBuckets[bKey] = { total: 0, cacheRead: 0, series: {} };
77699
+ if (!sourceBuckets[bKey])
77700
+ sourceBuckets[bKey] = { total: 0, cacheRead: 0, series: {} };
77701
+ if (!toolBuckets[bKey])
77702
+ toolBuckets[bKey] = { total: 0, cacheRead: 0, series: {} };
77657
77703
  if (!skillBuckets[bKey])
77658
77704
  skillBuckets[bKey] = { total: 0, cacheRead: 0, series: {} };
77659
77705
  buckets[bKey].total += s3.tokens.billedTokens;
77660
77706
  buckets[bKey].cacheRead += s3.tokens.cacheReadTokens;
77707
+ modelBuckets[bKey].total += s3.tokens.billedTokens;
77708
+ modelBuckets[bKey].cacheRead += s3.tokens.cacheReadTokens;
77709
+ sourceBuckets[bKey].total += s3.tokens.billedTokens;
77710
+ sourceBuckets[bKey].cacheRead += s3.tokens.cacheReadTokens;
77711
+ toolBuckets[bKey].total += s3.tokens.billedTokens;
77712
+ toolBuckets[bKey].cacheRead += s3.tokens.cacheReadTokens;
77661
77713
  skillBuckets[bKey].total += s3.tokens.billedTokens;
77662
77714
  skillBuckets[bKey].cacheRead += s3.tokens.cacheReadTokens;
77715
+ modelBuckets[bKey].series[s3.model] = (modelBuckets[bKey].series[s3.model] ?? 0) + s3.tokens.billedTokens;
77716
+ sourceBuckets[bKey].series[s3.source] = (sourceBuckets[bKey].series[s3.source] ?? 0) + s3.tokens.billedTokens;
77717
+ const toolWeight = Object.values(s3.toolMix).reduce((sum, count3) => sum + count3, 0);
77718
+ for (const [tool, count3] of Object.entries(s3.toolMix)) {
77719
+ toolBuckets[bKey].series[tool] = (toolBuckets[bKey].series[tool] ?? 0) + (toolWeight > 0 ? s3.tokens.billedTokens * count3 / toolWeight : 0);
77720
+ }
77721
+ const skillWeight = Object.values(s3.skillMix).reduce((sum, count3) => sum + count3, 0);
77722
+ for (const [skill, count3] of Object.entries(s3.skillMix)) {
77723
+ skillBuckets[bKey].series[skill] = (skillBuckets[bKey].series[skill] ?? 0) + (skillWeight > 0 ? s3.tokens.billedTokens * count3 / skillWeight : 0);
77724
+ }
77663
77725
  const dimensions = dimension === "model" ? [[s3.model, s3.tokens.billedTokens]] : dimension === "source" ? [[s3.source, s3.tokens.billedTokens]] : Object.entries(dimension === "tool" ? s3.toolMix : s3.skillMix).map(([key2, count3]) => [
77664
77726
  key2,
77665
77727
  count3
@@ -77669,12 +77731,8 @@ class MockHistoryBoardService {
77669
77731
  const tokens = dimension === "model" || dimension === "source" ? count3 : weight > 0 ? s3.tokens.billedTokens * count3 / weight : 0;
77670
77732
  buckets[bKey].series[key2] = (buckets[bKey].series[key2] ?? 0) + tokens;
77671
77733
  }
77672
- const skillWeight = Object.values(s3.skillMix).reduce((sum, count3) => sum + count3, 0);
77673
- for (const [skill, count3] of Object.entries(s3.skillMix)) {
77674
- skillBuckets[bKey].series[skill] = (skillBuckets[bKey].series[skill] ?? 0) + (skillWeight > 0 ? s3.tokens.billedTokens * count3 / skillWeight : 0);
77675
- }
77676
77734
  }
77677
- const timeSeries = Object.entries(buckets).sort(([a2], [b]) => a2.localeCompare(b)).map(([bKey, bVal]) => {
77735
+ const toTimeSeries = (map2) => Object.entries(map2).sort(([a2], [b]) => a2.localeCompare(b)).map(([bKey, bVal]) => {
77678
77736
  const denom = bVal.total + bVal.cacheRead;
77679
77737
  const ratio = denom > 0 ? Math.round(bVal.cacheRead / denom * 100) : 0;
77680
77738
  return {
@@ -77683,11 +77741,11 @@ class MockHistoryBoardService {
77683
77741
  series: bVal.series
77684
77742
  };
77685
77743
  });
77686
- const skillTimeSeries = Object.entries(skillBuckets).sort(([a2], [b]) => a2.localeCompare(b)).map(([bucketStart, point]) => ({
77687
- bucketStart,
77688
- cacheHitRatio: point.total + point.cacheRead > 0 ? Math.round(point.cacheRead / (point.total + point.cacheRead) * 100) : 0,
77689
- series: point.series
77690
- }));
77744
+ const timeSeries = toTimeSeries(buckets);
77745
+ const modelTimeSeries = toTimeSeries(modelBuckets);
77746
+ const sourceTimeSeries = toTimeSeries(sourceBuckets);
77747
+ const toolTimeSeries = toTimeSeries(toolBuckets);
77748
+ const skillTimeSeries = toTimeSeries(skillBuckets);
77691
77749
  const topModels = MODELS_CATALOG.map((m) => {
77692
77750
  const tokens = modelTokens[m.id] ?? 0;
77693
77751
  const share = totalBilled > 0 ? Math.round(tokens / totalBilled * 100) : 0;
@@ -77732,7 +77790,10 @@ class MockHistoryBoardService {
77732
77790
  },
77733
77791
  kpiTrend: this.buildKpiTrend(matching),
77734
77792
  previousKpis: null,
77735
- skillTimeSeries
77793
+ skillTimeSeries,
77794
+ modelTimeSeries,
77795
+ sourceTimeSeries,
77796
+ toolTimeSeries
77736
77797
  };
77737
77798
  }
77738
77799
  buildKpiTrend(sessions) {
@@ -78482,9 +78543,9 @@ function resolveBucket(bucket, range = "4h") {
78482
78543
  if (bucket && bucket !== "auto") {
78483
78544
  return bucket;
78484
78545
  }
78485
- if (range === "1h")
78546
+ if (range === "1h" || range === "4h")
78486
78547
  return "5m";
78487
- if (range === "4h" || range === "24h")
78548
+ if (range === "24h")
78488
78549
  return "10m";
78489
78550
  if (range === "7d")
78490
78551
  return "30m";
@@ -78592,7 +78653,10 @@ function projectSummary(rows, extras) {
78592
78653
  },
78593
78654
  kpiTrend: extras.kpiTrend,
78594
78655
  previousKpis: extras.previousKpis,
78595
- skillTimeSeries: extras.skillTimeSeries
78656
+ skillTimeSeries: extras.skillTimeSeries,
78657
+ modelTimeSeries: extras.modelTimeSeries,
78658
+ sourceTimeSeries: extras.sourceTimeSeries,
78659
+ toolTimeSeries: extras.toolTimeSeries
78596
78660
  };
78597
78661
  }
78598
78662
  function resolveTrendSelector(sel) {
@@ -78694,7 +78758,7 @@ async function computeSummaryExtras(db2, sel, bucket, dimension, exact, activeBu
78694
78758
  const trendSel = resolveTrendSelector(sel);
78695
78759
  const endDay = trendSel.until.slice(0, 10);
78696
78760
  const previousSel = previousWindowSelector(sel);
78697
- const [trendRows, previousKpis, skillBuckets] = await Promise.all([
78761
+ const [trendRows, previousKpis, modelBuckets, sourceBuckets, toolBuckets, skillBuckets] = await Promise.all([
78698
78762
  exact ? historyKpiTrend(db2, trendSel) : historyBoardKpiTrendFromRollup(db2, trendSel),
78699
78763
  (async () => {
78700
78764
  if (previousSel === null)
@@ -78704,8 +78768,29 @@ async function computeSummaryExtras(db2, sel, bucket, dimension, exact, activeBu
78704
78768
  return projectPreviousKpis(await historyBoardSummaryFromRollup(db2, previousSel, "1d", "model"));
78705
78769
  })(),
78706
78770
  (async () => {
78707
- if (dimension === "skill")
78708
- return activeBuckets ?? [];
78771
+ if (dimension === "model" && activeBuckets && activeBuckets.length > 0)
78772
+ return activeBuckets;
78773
+ if (exact)
78774
+ return await bucketedTokenSeries(db2, sel, bucket, "model");
78775
+ return (await historyBoardSummaryFromRollup(db2, sel, bucket, "model")).buckets;
78776
+ })(),
78777
+ (async () => {
78778
+ if (dimension === "source" && activeBuckets && activeBuckets.length > 0)
78779
+ return activeBuckets;
78780
+ if (exact)
78781
+ return await bucketedTokenSeries(db2, sel, bucket, "source");
78782
+ return (await historyBoardSummaryFromRollup(db2, sel, bucket, "source")).buckets;
78783
+ })(),
78784
+ (async () => {
78785
+ if (dimension === "tool" && activeBuckets && activeBuckets.length > 0)
78786
+ return activeBuckets;
78787
+ if (exact)
78788
+ return await bucketedTokenSeries(db2, sel, bucket, "tool");
78789
+ return (await historyBoardSummaryFromRollup(db2, sel, bucket, "tool")).buckets;
78790
+ })(),
78791
+ (async () => {
78792
+ if (dimension === "skill" && activeBuckets && activeBuckets.length > 0)
78793
+ return activeBuckets;
78709
78794
  if (exact)
78710
78795
  return await bucketedTokenSeries(db2, sel, bucket, "skill");
78711
78796
  return (await historyBoardSummaryFromRollup(db2, sel, bucket, "skill")).buckets;
@@ -78714,6 +78799,9 @@ async function computeSummaryExtras(db2, sel, bucket, dimension, exact, activeBu
78714
78799
  return {
78715
78800
  kpiTrend: projectKpiTrend(trendRows, endDay),
78716
78801
  previousKpis,
78802
+ modelTimeSeries: projectSkillTimeSeries(modelBuckets),
78803
+ sourceTimeSeries: projectSkillTimeSeries(sourceBuckets),
78804
+ toolTimeSeries: projectSkillTimeSeries(toolBuckets),
78717
78805
  skillTimeSeries: projectSkillTimeSeries(skillBuckets)
78718
78806
  };
78719
78807
  }
@@ -78824,7 +78912,10 @@ class LiveHistoryBoardService {
78824
78912
  cacheEfficiency: { hitRatio: 0, savedTokens: 0, totalRead: 0 },
78825
78913
  kpiTrend: [],
78826
78914
  previousKpis: null,
78827
- skillTimeSeries: []
78915
+ skillTimeSeries: [],
78916
+ modelTimeSeries: [],
78917
+ sourceTimeSeries: [],
78918
+ toolTimeSeries: []
78828
78919
  };
78829
78920
  }
78830
78921
  const sel = toArtifactSelector(filter);
@@ -78857,7 +78948,7 @@ class LiveHistoryBoardService {
78857
78948
  target.set(key2, aggregate2);
78858
78949
  }
78859
78950
  }
78860
- const extras = await computeSummaryExtras(db2, sel, bucket, dimension, true, dimension === "skill" ? bucketRows : undefined);
78951
+ const extras = await computeSummaryExtras(db2, sel, bucket, dimension, true, bucketRows);
78861
78952
  return projectSummary({
78862
78953
  buckets: bucketRows,
78863
78954
  models: Array.from(models, ([key2, value]) => ({ key: key2, ...value })).sort((a2, b) => b.freshInputTokens + b.outputTokens - a2.freshInputTokens - a2.outputTokens),
@@ -89646,7 +89737,6 @@ async function projectWorkflowProgress(runId, options) {
89646
89737
  if (!currentState) {
89647
89738
  currentState = normalizedStatus === "pending" || normalizedStatus === "running" ? initialState : null;
89648
89739
  }
89649
- const baselineWorkflow = options.baseline?.workflows[smDef.name || workflowName];
89650
89740
  const stateVisits = [];
89651
89741
  const visitCounter = {};
89652
89742
  const recordVisit = (stateId) => {
@@ -89713,9 +89803,8 @@ async function projectWorkflowProgress(runId, options) {
89713
89803
  for (const item of defActionList) {
89714
89804
  const actionKey = `${stateId}:${item.type}:${item.idx}`;
89715
89805
  const kind = item.action.kind;
89716
- const baselineAction = baselineWorkflow?.actions[actionKey];
89717
- const stateEffect = baselineAction?.stateEffect ?? "may-write";
89718
- const evidenceEffect = baselineAction?.evidenceEffect ?? "none";
89806
+ const stateEffect = "may-write";
89807
+ const evidenceEffect = "none";
89719
89808
  const candidateRows = stateActionRows.filter((r) => r.kind === kind && !usedActionRowIds.has(r.id));
89720
89809
  let actionStatus = "pending";
89721
89810
  const attempts = [];
@@ -90287,19 +90376,19 @@ var {
90287
90376
  // src/index.ts
90288
90377
  init_loader();
90289
90378
 
90290
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/application-node.js
90379
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/application-node.js
90291
90380
  init_dist4();
90292
90381
  init_dist5();
90293
90382
  import { appendFileSync as appendFileSync4, mkdirSync as mkdirSync3, readFileSync as readFileSync5 } from "fs";
90294
90383
  import { dirname as dirname5 } from "path";
90295
90384
 
90296
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/application/index.js
90385
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/application/index.js
90297
90386
  init_default_observers();
90298
90387
  init_event_bus();
90299
90388
  init_file_observer();
90300
90389
  init_logger3();
90301
90390
 
90302
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/scheduler/noop.js
90391
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/scheduler/noop.js
90303
90392
  class NoopSchedulerAdapter {
90304
90393
  constructor() {}
90305
90394
  register(_cron, _action) {}
@@ -90307,7 +90396,7 @@ class NoopSchedulerAdapter {
90307
90396
  async stop() {}
90308
90397
  }
90309
90398
 
90310
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/scheduler/factory.js
90399
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/scheduler/factory.js
90311
90400
  function initScheduler(adapter, cronEntries) {
90312
90401
  const resolved = adapter ?? new NoopSchedulerAdapter;
90313
90402
  if (cronEntries) {
@@ -90318,7 +90407,7 @@ function initScheduler(adapter, cronEntries) {
90318
90407
  return resolved;
90319
90408
  }
90320
90409
 
90321
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/application/plugins/builtins.js
90410
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/application/plugins/builtins.js
90322
90411
  init_logger3();
90323
90412
  init_metrics();
90324
90413
  init_sdk();
@@ -90411,7 +90500,7 @@ function dbPlugin(db2) {
90411
90500
  };
90412
90501
  }
90413
90502
 
90414
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/application/plugins/host.js
90503
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/application/plugins/host.js
90415
90504
  init_logger3();
90416
90505
 
90417
90506
  class PluginHost {
@@ -90499,7 +90588,7 @@ class PluginHost {
90499
90588
  }
90500
90589
  }
90501
90590
 
90502
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/application/index.js
90591
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/application/index.js
90503
90592
  async function performShutdown(state, reason) {
90504
90593
  if (state.stopped)
90505
90594
  return;
@@ -90610,10 +90699,10 @@ async function runApplication(options) {
90610
90699
  }
90611
90700
  }
90612
90701
 
90613
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/application-node.js
90702
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/application-node.js
90614
90703
  init_scheduler_node();
90615
90704
 
90616
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/telemetry/otel-node.js
90705
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/telemetry/otel-node.js
90617
90706
  var import_api14 = __toESM(require_src(), 1);
90618
90707
 
90619
90708
  // ../../node_modules/.bun/@opentelemetry+exporter-metrics-otlp-http@0.218.0+e40b0dfdd726a224/node_modules/@opentelemetry/exporter-metrics-otlp-http/build/esm/OTLPMetricExporterBase.js
@@ -93629,7 +93718,7 @@ class OTLPTraceExporter extends import_otlp_exporter_base2.OTLPExporterBase {
93629
93718
  }), JsonTraceSerializer));
93630
93719
  }
93631
93720
  }
93632
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/telemetry/otel-node.js
93721
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/telemetry/otel-node.js
93633
93722
  var import_resources2 = __toESM(require_src4(), 1);
93634
93723
  var import_sdk_trace_node = __toESM(require_src8(), 1);
93635
93724
  var import_semantic_conventions = __toESM(require_src2(), 1);
@@ -93680,7 +93769,7 @@ async function shutdownNodeTelemetry() {
93680
93769
  await Promise.all(pending);
93681
93770
  }
93682
93771
 
93683
- // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.49+8b32b93dff378592/node_modules/@gobing-ai/ts-infra/dist/application-node.js
93772
+ // ../../node_modules/.bun/@gobing-ai+ts-infra@0.4.50+9eb4261f6cde6fd4/node_modules/@gobing-ai/ts-infra/dist/application-node.js
93684
93773
  class ConfigValidationError extends Error {
93685
93774
  constructor(message) {
93686
93775
  super(message);
@@ -99115,7 +99204,7 @@ import { createRequire } from "module";
99115
99204
  var CLI_CONFIG = {
99116
99205
  binaryName: "spur",
99117
99206
  binaryLabel: "spur",
99118
- binaryVersion: "0.3.70",
99207
+ binaryVersion: "0.3.71",
99119
99208
  configDir: ".spur",
99120
99209
  configFile: ".spur/config.yaml",
99121
99210
  databaseFile: ".spur/spur.db"
@@ -106610,7 +106699,10 @@ var historySummaryResponseDataSchema = exports_external.object({
106610
106699
  cacheEfficiency: historyCacheEfficiencySchema,
106611
106700
  kpiTrend: exports_external.array(historyKpiTrendPointSchema),
106612
106701
  previousKpis: historySummaryKpisSchema.nullable(),
106613
- skillTimeSeries: exports_external.array(historyTimeSeriesPointSchema)
106702
+ skillTimeSeries: exports_external.array(historyTimeSeriesPointSchema),
106703
+ modelTimeSeries: exports_external.array(historyTimeSeriesPointSchema).optional(),
106704
+ sourceTimeSeries: exports_external.array(historyTimeSeriesPointSchema).optional(),
106705
+ toolTimeSeries: exports_external.array(historyTimeSeriesPointSchema).optional()
106614
106706
  });
106615
106707
  var historySummaryResponseSchema = apiSuccessSchema(historySummaryResponseDataSchema);
106616
106708
  var historyTimelineEventKindEnum = exports_external.enum([