deepline 0.3.392 → 0.3.393

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 (145) hide show
  1. package/dist/bundling-sources/sdk/src/client.ts +156 -24
  2. package/dist/bundling-sources/sdk/src/compat.ts +9 -0
  3. package/dist/bundling-sources/sdk/src/http.ts +5 -1
  4. package/dist/bundling-sources/sdk/src/index.ts +5 -0
  5. package/dist/bundling-sources/sdk/src/plays/run-request.ts +182 -6
  6. package/dist/bundling-sources/sdk/src/release.ts +4 -1
  7. package/dist/bundling-sources/sdk/src/types.ts +13 -0
  8. package/dist/bundling-sources/shared_libs/integration-contracts/request-warnings.ts +64 -0
  9. package/dist/bundling-sources/shared_libs/play-data-plane/runtime-sheet-storage-contract.ts +315 -0
  10. package/dist/bundling-sources/shared_libs/play-runtime/async-operation.ts +41 -8
  11. package/dist/bundling-sources/shared_libs/play-runtime/context.ts +418 -44
  12. package/dist/bundling-sources/shared_libs/play-runtime/ctx-types.ts +36 -3
  13. package/dist/bundling-sources/shared_libs/play-runtime/durable-invocation-fence.ts +36 -0
  14. package/dist/bundling-sources/shared_libs/play-runtime/map-execution-frame.ts +11 -3
  15. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/projection/gateway-adapter.ts +1 -0
  16. package/dist/bundling-sources/shared_libs/play-runtime/play-runtime-semantics.ts +19 -1
  17. package/dist/bundling-sources/shared_libs/play-runtime/run-identity.ts +26 -0
  18. package/dist/bundling-sources/shared_libs/play-runtime/runner-app/index.ts +158 -10
  19. package/dist/bundling-sources/shared_libs/play-runtime/runtime-api.ts +235 -2
  20. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd-runtime-worker.ts +92 -58
  21. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/postgres-pool.ts +7 -1
  22. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/postgres-progress.ts +30 -7
  23. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/postgres.ts +1161 -316
  24. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/runtime-event-search.ts +28 -15
  25. package/dist/bundling-sources/shared_libs/play-runtime/tool-execute-retry-policy.ts +24 -3
  26. package/dist/bundling-sources/shared_libs/play-runtime/tool-result.ts +31 -0
  27. package/dist/bundling-sources/shared_libs/plays/authoring-contract.ts +37 -4
  28. package/dist/bundling-sources/shared_libs/plays/dataset.ts +172 -79
  29. package/dist/bundling-sources/shared_libs/plays/static-pipeline.ts +173 -1
  30. package/dist/cli/{auth-6JSA2ZCW.mjs → auth-5PXHA232.mjs} +4 -4
  31. package/dist/cli/auth-P3MVDTXM.js +39 -0
  32. package/dist/cli/{billing-Q5BLQHIU.js → billing-JFB2XLSO.js} +101 -74
  33. package/dist/cli/{billing-MRRO643H.mjs → billing-Z2N7ZAGM.mjs} +32 -5
  34. package/dist/cli/{chunk-CVLM3WMJ.js → chunk-2HAD745V.js} +242 -183
  35. package/dist/cli/{chunk-HGYBEAQP.mjs → chunk-2LGC4EFT.mjs} +3 -3
  36. package/dist/cli/{chunk-A3APGZFP.mjs → chunk-4PT2VA3A.mjs} +2 -2
  37. package/dist/cli/{chunk-6DBOU7UH.js → chunk-4XX6443T.js} +176 -87
  38. package/dist/cli/{chunk-2QLML6G4.mjs → chunk-5KWKZIQR.mjs} +4 -4
  39. package/dist/cli/{chunk-2G7DXFHI.mjs → chunk-5PRVMXKB.mjs} +27 -2
  40. package/dist/cli/{chunk-DSWSEHRX.mjs → chunk-6I73X254.mjs} +1 -1
  41. package/dist/cli/{chunk-ZTACINO5.mjs → chunk-7HR7BGZL.mjs} +13 -3
  42. package/dist/cli/{chunk-BB3FNYFY.js → chunk-AARX5L4B.js} +2 -2
  43. package/dist/cli/{chunk-WMS5U6YB.js → chunk-CDFH2DYL.js} +20 -19
  44. package/dist/cli/{chunk-R3O2CZ4H.mjs → chunk-FQ6VHPW4.mjs} +2 -2
  45. package/dist/cli/{chunk-MU6M3URX.mjs → chunk-HLEESTCH.mjs} +1 -1
  46. package/dist/cli/{chunk-Q6EOHNRH.mjs → chunk-JI2B4RZP.mjs} +119 -6
  47. package/dist/cli/{chunk-2Q3GEFL4.mjs → chunk-KIYU2TGL.mjs} +2 -2
  48. package/dist/cli/{chunk-Y6VOGHF2.mjs → chunk-KZZC33PY.mjs} +0 -181
  49. package/dist/cli/{chunk-UCKJQG25.js → chunk-L2SYLGRP.js} +8 -8
  50. package/dist/cli/{chunk-2GAHHSLB.mjs → chunk-LMMEAMA7.mjs} +3 -2
  51. package/dist/cli/{chunk-YAZCDBXX.mjs → chunk-LZPCDB7U.mjs} +3 -2
  52. package/dist/cli/{chunk-RV6ALZIX.js → chunk-M7Y7JYZX.js} +32 -7
  53. package/dist/cli/{chunk-QGKPTBRR.js → chunk-MS6GUPBB.js} +3 -3
  54. package/dist/cli/{chunk-4SFPVW7A.js → chunk-OXNOAD6Y.js} +26 -26
  55. package/dist/cli/{chunk-JOFPQGXW.js → chunk-PTDECJGP.js} +50 -50
  56. package/dist/cli/{chunk-5O4B6AUN.js → chunk-PWSWAN7Q.js} +25 -2
  57. package/dist/cli/{chunk-YN6YA7ZZ.mjs → chunk-Q26LUSQ2.mjs} +79 -20
  58. package/dist/cli/{chunk-3VN4FTE3.js → chunk-RDXFGPJU.js} +1 -182
  59. package/dist/cli/{chunk-7E66A24V.mjs → chunk-RKMB3N7K.mjs} +25 -2
  60. package/dist/cli/{chunk-JSLPHFP7.js → chunk-RWHWF5ZJ.js} +3 -2
  61. package/dist/cli/{chunk-3FV4GBRK.mjs → chunk-STNYIMIV.mjs} +97 -8
  62. package/dist/cli/chunk-UBKA33KY.mjs +310 -0
  63. package/dist/cli/{chunk-PAIMOGCM.js → chunk-UHNDVD3P.js} +125 -12
  64. package/dist/cli/{chunk-24VEN5PQ.mjs → chunk-UOGZUA24.mjs} +179 -17
  65. package/dist/cli/{chunk-T7OKJ2T6.js → chunk-VIQJIX2P.js} +73 -63
  66. package/dist/cli/{chunk-RIV2GS5E.js → chunk-VIWE6WRK.js} +627 -465
  67. package/dist/cli/{chunk-EY7RFC6A.js → chunk-W4WOMXR3.js} +15 -15
  68. package/dist/cli/chunk-XDVT3GOM.js +310 -0
  69. package/dist/cli/{chunk-2FQG2HU4.js → chunk-Z3OOZM5L.js} +8 -8
  70. package/dist/cli/{csv-E4QGUIGI.mjs → csv-KJWZHKCH.mjs} +3 -3
  71. package/dist/cli/{csv-26U5T24Z.js → csv-P3Z3YE7H.js} +12 -12
  72. package/dist/cli/{db-JTRJIAQW.mjs → db-NCM4CQIS.mjs} +6 -5
  73. package/dist/cli/{db-QHBFLMVL.js → db-NUZGJNQC.js} +31 -30
  74. package/dist/cli/{describe-E3DE3ZK3.mjs → describe-WT6MM2GO.mjs} +17 -16
  75. package/dist/cli/{describe-FDV2V74F.js → describe-YGSEN5WC.js} +24 -23
  76. package/dist/cli/{executions-VZYOGVQY.js → executions-PCOLHN7Q.js} +8 -7
  77. package/dist/cli/{executions-B3GTNPRE.mjs → executions-XS2IPJ4W.mjs} +6 -5
  78. package/dist/cli/{feedback-CR55FJA2.js → feedback-4MSH7TFU.js} +7 -7
  79. package/dist/cli/{feedback-4CEBR3OV.mjs → feedback-CCLTS5SV.mjs} +3 -3
  80. package/dist/cli/{git-NM2PHHZ4.mjs → git-K2DHPMPC.mjs} +4 -4
  81. package/dist/cli/git-RNM45FX4.js +23 -0
  82. package/dist/cli/index.js +96 -92
  83. package/dist/cli/index.mjs +46 -42
  84. package/dist/cli/{legacy-noops-A7MSW5ND.mjs → legacy-noops-B5S4AR3P.mjs} +4 -4
  85. package/dist/cli/{legacy-noops-ZUA4YFIH.js → legacy-noops-GPNOPFXV.js} +7 -7
  86. package/dist/cli/{monitors-NVPRQYP3.mjs → monitors-JLMAIPRG.mjs} +6 -5
  87. package/dist/cli/{monitors-ZE3TLZ4H.js → monitors-ZAWD7NSN.js} +87 -86
  88. package/dist/cli/{org-U7A6DV5D.js → org-P2KN4CES.js} +66 -65
  89. package/dist/cli/{org-KUBILNQV.mjs → org-T3JTHP4G.mjs} +6 -5
  90. package/dist/cli/{play-HRDXQ4QE.mjs → play-NK6BLRGL.mjs} +11 -10
  91. package/dist/cli/play-PDXR6JFB.js +158 -0
  92. package/dist/cli/{providers-OHIWI453.mjs → providers-3NQRA7IT.mjs} +6 -5
  93. package/dist/cli/{providers-VD6YTVQZ.js → providers-5QRZN3DT.js} +9 -8
  94. package/dist/cli/{quickstart-UBV2FONF.mjs → quickstart-PIA2JGPV.mjs} +3 -3
  95. package/dist/cli/{quickstart-ETTCWPA4.js → quickstart-R7NUZGNW.js} +5 -5
  96. package/dist/cli/run-identity-G257GQED.js +25 -0
  97. package/dist/cli/run-identity-MRNCEGV2.mjs +25 -0
  98. package/dist/cli/{search-F44IZRT7.mjs → search-AIDIIGLY.mjs} +7 -6
  99. package/dist/cli/search-QRWL7MFM.js +27 -0
  100. package/dist/cli/{secrets-CAEMRORF.js → secrets-BT3PGMWN.js} +15 -14
  101. package/dist/cli/{secrets-R6XOJZKU.mjs → secrets-OQNHL45O.mjs} +6 -5
  102. package/dist/cli/{sessions-6GC7OFTT.js → sessions-EYXWOSWK.js} +5 -5
  103. package/dist/cli/{sessions-RLN6UQS3.mjs → sessions-SF7WJPJP.mjs} +4 -4
  104. package/dist/cli/{settings-DPNVUAV2.js → settings-BA3GHBOD.js} +76 -75
  105. package/dist/cli/{settings-KIPAMRPP.mjs → settings-Y57JTFDD.mjs} +9 -8
  106. package/dist/cli/{setup-TU2F7PU5.mjs → setup-7GR5GBHA.mjs} +6 -6
  107. package/dist/cli/{setup-DTL3L5SG.js → setup-RERXYC66.js} +41 -41
  108. package/dist/cli/{skills-UV5MYJ46.mjs → skills-SJWIQAV5.mjs} +4 -4
  109. package/dist/cli/skills-V7EY75HB.js +28 -0
  110. package/dist/cli/tools-H5HLBCHH.js +41 -0
  111. package/dist/cli/{tools-QRRNDCQ7.mjs → tools-ZF3JXPNL.mjs} +10 -9
  112. package/dist/cli/update-472HA3LT.js +28 -0
  113. package/dist/cli/{update-4426TF35.mjs → update-FFFYQAOJ.mjs} +6 -6
  114. package/dist/cli/{workflow-HNLOVISB.js → workflow-SZJVQH4T.js} +17 -16
  115. package/dist/cli/{workflow-N4U5VLZ3.mjs → workflow-XVFEEGAS.mjs} +7 -6
  116. package/dist/{client-e6Qh5ZIg.d.mts → client-DU5dtHDy.d.mts} +153 -4
  117. package/dist/{client-Uxuy-xQ2.d.ts → client-mCE88hC4.d.ts} +153 -4
  118. package/dist/{compiler-manifest-CY2v8ab0.d.ts → compiler-manifest-DE4RdAiY.d.mts} +61 -1
  119. package/dist/{compiler-manifest-CY2v8ab0.d.mts → compiler-manifest-DE4RdAiY.d.ts} +61 -1
  120. package/dist/{index-B9fBZH1g.d.mts → index-BI6nWgaV.d.mts} +1 -1
  121. package/dist/{index-BZ6uzZJl.d.ts → index-Bi-f7HFT.d.ts} +1 -1
  122. package/dist/index.d.mts +5 -5
  123. package/dist/index.d.ts +5 -5
  124. package/dist/index.js +120 -29
  125. package/dist/index.mjs +111 -20
  126. package/dist/install-integrity.json +91 -86
  127. package/dist/plays/bundle-play-file.d.mts +3 -3
  128. package/dist/plays/bundle-play-file.d.ts +3 -3
  129. package/dist/plays/bundle-play-file.mjs +2 -2
  130. package/dist/plays/run-request.d.mts +2 -2
  131. package/dist/plays/run-request.d.ts +2 -2
  132. package/dist/plays/run-request.js +5 -2
  133. package/dist/plays/run-request.mjs +4 -1
  134. package/dist/release.d.mts +4 -1
  135. package/dist/release.d.ts +4 -1
  136. package/dist/release.js +2 -2
  137. package/dist/release.mjs +1 -1
  138. package/package.json +1 -1
  139. package/dist/cli/auth-67TAELQL.js +0 -39
  140. package/dist/cli/git-I5JTK6YU.js +0 -23
  141. package/dist/cli/play-A2V7YDU7.js +0 -157
  142. package/dist/cli/search-WWXMBVPH.js +0 -26
  143. package/dist/cli/skills-SWOSEZLB.js +0 -28
  144. package/dist/cli/tools-IL2YCDQ6.js +0 -40
  145. package/dist/cli/update-BERDPEYR.js +0 -28
@@ -1,17 +1,17 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
2
 
3
3
 
4
- var _chunkBB3FNYFYjs = require('./chunk-BB3FNYFY.js');
4
+ var _chunkAARX5L4Bjs = require('./chunk-AARX5L4B.js');
5
5
 
6
6
 
7
7
 
8
- var _chunkT7OKJ2T6js = require('./chunk-T7OKJ2T6.js');
8
+ var _chunkVIQJIX2Pjs = require('./chunk-VIQJIX2P.js');
9
9
 
10
10
 
11
- var _chunkRV6ALZIXjs = require('./chunk-RV6ALZIX.js');
11
+ var _chunkM7Y7JYZXjs = require('./chunk-M7Y7JYZX.js');
12
12
 
13
13
 
14
- var _chunkWMS5U6YBjs = require('./chunk-WMS5U6YB.js');
14
+ var _chunkCDFH2DYLjs = require('./chunk-CDFH2DYL.js');
15
15
 
16
16
  // src/cli/commands/update.ts
17
17
  var _child_process = require('child_process');
@@ -489,7 +489,7 @@ function normalizedNpmPrefix(value) {
489
489
  }
490
490
  function resolveNpmGlobalPrefix(env) {
491
491
  try {
492
- const plan = _chunkT7OKJ2T6js.resolveShellSpawn.call(void 0, "npm", ["prefix", "-g"], process.platform, env);
492
+ const plan = _chunkVIQJIX2Pjs.resolveShellSpawn.call(void 0, "npm", ["prefix", "-g"], process.platform, env);
493
493
  const result = _child_process.spawnSync.call(void 0, plan.command, plan.args, {
494
494
  encoding: "utf8",
495
495
  env,
@@ -545,8 +545,8 @@ function resolveUpdatePlan(options = {}) {
545
545
  const npmGlobalPrefix = options.npmGlobalPrefix !== void 0 ? options.npmGlobalPrefix : resolveNpmGlobalPrefix(env);
546
546
  const hasVerifiedNpmOwnership = inferredInstallPrefix !== null && normalizedNpmPrefix(inferredInstallPrefix) === normalizedNpmPrefix(npmGlobalPrefix);
547
547
  const installPrefix = options.requireVerifiedNpmOwnership ? hasVerifiedNpmOwnership ? inferredInstallPrefix : null : inferredInstallPrefix;
548
- const npmVersion = options.npmVersion === void 0 ? _chunkBB3FNYFYjs.readNpmVersion.call(void 0, env) : options.npmVersion;
549
- const npmGlobalInstallFlags = _chunkBB3FNYFYjs.npmSupportsAllowScripts.call(void 0, npmVersion) ? [...NPM_SDK_INSTALL_COMMON_FLAGS, "--allow-scripts=esbuild"] : NPM_SDK_INSTALL_COMMON_FLAGS;
548
+ const npmVersion = options.npmVersion === void 0 ? _chunkAARX5L4Bjs.readNpmVersion.call(void 0, env) : options.npmVersion;
549
+ const npmGlobalInstallFlags = _chunkAARX5L4Bjs.npmSupportsAllowScripts.call(void 0, npmVersion) ? [...NPM_SDK_INSTALL_COMMON_FLAGS, "--allow-scripts=esbuild"] : NPM_SDK_INSTALL_COMMON_FLAGS;
550
550
  const args = installPrefix ? [
551
551
  "install",
552
552
  "-g",
@@ -556,7 +556,7 @@ function resolveUpdatePlan(options = {}) {
556
556
  packageSpec
557
557
  ] : ["install", "-g", ...npmGlobalInstallFlags, packageSpec];
558
558
  const fallbackRegistryUrl = options.npmFallbackRegistryUrl !== void 0 ? options.npmFallbackRegistryUrl : publicNpmFallbackRegistryUrl(
559
- _optionalChain([env, 'access', _18 => _18.DEEPLINE_HOST_URL, 'optionalAccess', _19 => _19.trim, 'call', _20 => _20()]) || _chunkWMS5U6YBjs.autoDetectBaseUrl.call(void 0, )
559
+ _optionalChain([env, 'access', _18 => _18.DEEPLINE_HOST_URL, 'optionalAccess', _19 => _19.trim, 'call', _20 => _20()]) || _chunkCDFH2DYLjs.autoDetectBaseUrl.call(void 0, )
560
560
  );
561
561
  return {
562
562
  kind: "npm-global",
@@ -703,7 +703,7 @@ function sidecarInstallFailure(versionDir) {
703
703
  function runCommand(command, args, env = process.env) {
704
704
  return new Promise((resolveResult) => {
705
705
  let output = "";
706
- const plan = _chunkT7OKJ2T6js.resolveShellSpawn.call(void 0, command, args, process.platform, env);
706
+ const plan = _chunkVIQJIX2Pjs.resolveShellSpawn.call(void 0, command, args, process.platform, env);
707
707
  const child = _child_process.spawn.call(void 0, plan.command, plan.args, {
708
708
  stdio: ["inherit", "pipe", "pipe"],
709
709
  shell: plan.shell,
@@ -1079,14 +1079,14 @@ async function publishedVersionSupportsPin(version, fallbackRegistryUrl) {
1079
1079
  throw _nullishCoalesce(lastError, () => ( new Error("No npm registry was available")));
1080
1080
  }
1081
1081
  async function runUpdateCommand(options, dependencies = {}) {
1082
- const detectBaseUrl = _nullishCoalesce(dependencies.detectBaseUrl, () => ( _chunkWMS5U6YBjs.autoDetectBaseUrl));
1082
+ const detectBaseUrl = _nullishCoalesce(dependencies.detectBaseUrl, () => ( _chunkCDFH2DYLjs.autoDetectBaseUrl));
1083
1083
  const resolvePlan = _nullishCoalesce(dependencies.resolvePlan, () => ( resolveUpdatePlan));
1084
1084
  const runPlan = _nullishCoalesce(dependencies.runPlan, () => ( runUpdatePlan));
1085
1085
  const syncSkills = _nullishCoalesce(dependencies.syncSkillsIfNeeded, () => ( (async () => {
1086
1086
  const originalWrite = process.stdout.write.bind(process.stdout);
1087
1087
  process.stdout.write = (() => true);
1088
1088
  try {
1089
- const exitCode = await _chunkT7OKJ2T6js.runSkillsCommand.call(void 0, { json: true });
1089
+ const exitCode = await _chunkVIQJIX2Pjs.runSkillsCommand.call(void 0, { json: true });
1090
1090
  if (exitCode !== 0) {
1091
1091
  throw new Error(
1092
1092
  `Deepline skills update failed with exit ${exitCode}.`
@@ -1157,11 +1157,11 @@ async function runUpdateCommand(options, dependencies = {}) {
1157
1157
  ]
1158
1158
  };
1159
1159
  if (options.json && !options.executeWithJson) {
1160
- _chunkRV6ALZIXjs.printCommandEnvelope.call(void 0, { ...plan, render }, { json: true });
1160
+ _chunkM7Y7JYZXjs.printCommandEnvelope.call(void 0, { ...plan, render }, { json: true });
1161
1161
  return 0;
1162
1162
  }
1163
1163
  if (options.printCommand) {
1164
- _chunkRV6ALZIXjs.printCommandEnvelope.call(void 0,
1164
+ _chunkM7Y7JYZXjs.printCommandEnvelope.call(void 0,
1165
1165
  {
1166
1166
  ...plan,
1167
1167
  render: {
@@ -1174,7 +1174,7 @@ async function runUpdateCommand(options, dependencies = {}) {
1174
1174
  return 0;
1175
1175
  }
1176
1176
  if (plan.kind === "source" || plan.kind === "homebrew") {
1177
- _chunkRV6ALZIXjs.printCommandEnvelope.call(void 0, { ...plan, render }, { json: false });
1177
+ _chunkM7Y7JYZXjs.printCommandEnvelope.call(void 0, { ...plan, render }, { json: false });
1178
1178
  return 0;
1179
1179
  }
1180
1180
  stderr.write(`Updating Deepline SDK/CLI with: ${plan.manualCommand}
@@ -1204,7 +1204,7 @@ To retry with full installer output, run: deepline skills
1204
1204
  );
1205
1205
  }
1206
1206
  if (options.executeWithJson && options.json) {
1207
- _chunkRV6ALZIXjs.printCommandEnvelope.call(void 0,
1207
+ _chunkM7Y7JYZXjs.printCommandEnvelope.call(void 0,
1208
1208
  {
1209
1209
  ok: true,
1210
1210
  pinnedVersion
@@ -0,0 +1,310 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }// ../plays/row-identity.ts
2
+ var POSTGRES_IDENTIFIER_MAX_LENGTH = 63;
3
+ var MAP_KEY_NAMESPACE_MAX_LENGTH = POSTGRES_IDENTIFIER_MAX_LENGTH;
4
+ var SHA256_INITIAL_HASH = [
5
+ 1779033703,
6
+ 3144134277,
7
+ 1013904242,
8
+ 2773480762,
9
+ 1359893119,
10
+ 2600822924,
11
+ 528734635,
12
+ 1541459225
13
+ ];
14
+ var SHA256_ROUND_CONSTANTS = [
15
+ 1116352408,
16
+ 1899447441,
17
+ 3049323471,
18
+ 3921009573,
19
+ 961987163,
20
+ 1508970993,
21
+ 2453635748,
22
+ 2870763221,
23
+ 3624381080,
24
+ 310598401,
25
+ 607225278,
26
+ 1426881987,
27
+ 1925078388,
28
+ 2162078206,
29
+ 2614888103,
30
+ 3248222580,
31
+ 3835390401,
32
+ 4022224774,
33
+ 264347078,
34
+ 604807628,
35
+ 770255983,
36
+ 1249150122,
37
+ 1555081692,
38
+ 1996064986,
39
+ 2554220882,
40
+ 2821834349,
41
+ 2952996808,
42
+ 3210313671,
43
+ 3336571891,
44
+ 3584528711,
45
+ 113926993,
46
+ 338241895,
47
+ 666307205,
48
+ 773529912,
49
+ 1294757372,
50
+ 1396182291,
51
+ 1695183700,
52
+ 1986661051,
53
+ 2177026350,
54
+ 2456956037,
55
+ 2730485921,
56
+ 2820302411,
57
+ 3259730800,
58
+ 3345764771,
59
+ 3516065817,
60
+ 3600352804,
61
+ 4094571909,
62
+ 275423344,
63
+ 430227734,
64
+ 506948616,
65
+ 659060556,
66
+ 883997877,
67
+ 958139571,
68
+ 1322822218,
69
+ 1537002063,
70
+ 1747873779,
71
+ 1955562222,
72
+ 2024104815,
73
+ 2227730452,
74
+ 2361852424,
75
+ 2428436474,
76
+ 2756734187,
77
+ 3204031479,
78
+ 3329325298
79
+ ];
80
+ function stableValue(value) {
81
+ if (Array.isArray(value)) {
82
+ return value.map((entry) => stableValue(entry));
83
+ }
84
+ if (value && typeof value === "object") {
85
+ return Object.fromEntries(
86
+ Object.entries(value).filter(([, entry]) => entry !== void 0).sort(([left], [right]) => left.localeCompare(right)).map(([key, entry]) => [key, stableValue(entry)])
87
+ );
88
+ }
89
+ return value;
90
+ }
91
+ function stableStringify(value) {
92
+ return JSON.stringify(stableValue(value));
93
+ }
94
+ function rightRotate32(value, bits) {
95
+ return value >>> bits | value << 32 - bits;
96
+ }
97
+ function sha256Hex(input) {
98
+ const bytes = Array.from(new TextEncoder().encode(input));
99
+ const bitLength = bytes.length * 8;
100
+ bytes.push(128);
101
+ while (bytes.length % 64 !== 56) {
102
+ bytes.push(0);
103
+ }
104
+ const highBits = Math.floor(bitLength / 4294967296);
105
+ const lowBits = bitLength >>> 0;
106
+ bytes.push(
107
+ highBits >>> 24 & 255,
108
+ highBits >>> 16 & 255,
109
+ highBits >>> 8 & 255,
110
+ highBits & 255,
111
+ lowBits >>> 24 & 255,
112
+ lowBits >>> 16 & 255,
113
+ lowBits >>> 8 & 255,
114
+ lowBits & 255
115
+ );
116
+ const hash = [...SHA256_INITIAL_HASH];
117
+ const words = new Array(64).fill(0);
118
+ for (let offset = 0; offset < bytes.length; offset += 64) {
119
+ for (let index = 0; index < 16; index += 1) {
120
+ const wordOffset = offset + index * 4;
121
+ words[index] = (_nullishCoalesce(bytes[wordOffset], () => ( 0))) << 24 | (_nullishCoalesce(bytes[wordOffset + 1], () => ( 0))) << 16 | (_nullishCoalesce(bytes[wordOffset + 2], () => ( 0))) << 8 | (_nullishCoalesce(bytes[wordOffset + 3], () => ( 0)));
122
+ }
123
+ for (let index = 16; index < 64; index += 1) {
124
+ const s0 = rightRotate32(words[index - 15], 7) ^ rightRotate32(words[index - 15], 18) ^ words[index - 15] >>> 3;
125
+ const s1 = rightRotate32(words[index - 2], 17) ^ rightRotate32(words[index - 2], 19) ^ words[index - 2] >>> 10;
126
+ words[index] = words[index - 16] + s0 + words[index - 7] + s1 >>> 0;
127
+ }
128
+ let [a, b, c, d, e, f, g, h] = hash;
129
+ for (let index = 0; index < 64; index += 1) {
130
+ const s1 = rightRotate32(e, 6) ^ rightRotate32(e, 11) ^ rightRotate32(e, 25);
131
+ const ch = e & f ^ ~e & g;
132
+ const temp1 = h + s1 + ch + SHA256_ROUND_CONSTANTS[index] + words[index] >>> 0;
133
+ const s0 = rightRotate32(a, 2) ^ rightRotate32(a, 13) ^ rightRotate32(a, 22);
134
+ const maj = a & b ^ a & c ^ b & c;
135
+ const temp2 = s0 + maj >>> 0;
136
+ h = g;
137
+ g = f;
138
+ f = e;
139
+ e = d + temp1 >>> 0;
140
+ d = c;
141
+ c = b;
142
+ b = a;
143
+ a = temp1 + temp2 >>> 0;
144
+ }
145
+ hash[0] = hash[0] + a >>> 0;
146
+ hash[1] = hash[1] + b >>> 0;
147
+ hash[2] = hash[2] + c >>> 0;
148
+ hash[3] = hash[3] + d >>> 0;
149
+ hash[4] = hash[4] + e >>> 0;
150
+ hash[5] = hash[5] + f >>> 0;
151
+ hash[6] = hash[6] + g >>> 0;
152
+ hash[7] = hash[7] + h >>> 0;
153
+ }
154
+ return hash.map((word) => word.toString(16).padStart(8, "0")).join("");
155
+ }
156
+ function sanitizeIdentifierPart(value) {
157
+ return value.trim().replace(/[^a-z0-9]+/gi, "_").replace(/_+/g, "_").replace(/^_+|_+$/g, "").toLowerCase();
158
+ }
159
+ function validateIdentifierPart(rawValue, label, maxLength) {
160
+ const sanitized = sanitizeIdentifierPart(rawValue);
161
+ if (!sanitized) {
162
+ throw new Error(`${label} must contain a letter or number.`);
163
+ }
164
+ if (sanitized.length > maxLength) {
165
+ throw new Error(
166
+ `${label} is too long after normalization (${sanitized.length}/${maxLength}): "${sanitized}".`
167
+ );
168
+ }
169
+ return sanitized;
170
+ }
171
+ function normalizeTableNamespace(value) {
172
+ return validateIdentifierPart(
173
+ value,
174
+ "ctx.dataset() key",
175
+ MAP_KEY_NAMESPACE_MAX_LENGTH
176
+ );
177
+ }
178
+
179
+ // ../play-runtime/run-identity.ts
180
+ function sanitizePlayNameForWorkflowSegment(value) {
181
+ return value.toLowerCase().replace(/[^a-z0-9-]/g, "-").replace(/-+/g, "-").replace(/^-+|-+$/g, "").slice(0, 64);
182
+ }
183
+ function buildPlayWorkflowFamilyKey(playName) {
184
+ const normalized = playName.split("/").map(sanitizePlayNameForWorkflowSegment).filter(Boolean).join("/");
185
+ return normalized || "play";
186
+ }
187
+ function buildPlayWorkflowRunSuffix(now) {
188
+ const pad = (value, size = 2) => String(value).padStart(size, "0");
189
+ return [
190
+ now.getUTCFullYear(),
191
+ pad(now.getUTCMonth() + 1),
192
+ pad(now.getUTCDate()),
193
+ "t",
194
+ pad(now.getUTCHours()),
195
+ pad(now.getUTCMinutes()),
196
+ pad(now.getUTCSeconds()),
197
+ "-",
198
+ pad(now.getUTCMilliseconds(), 3)
199
+ ].join("");
200
+ }
201
+ var CANONICAL_PLAY_RUN_TIMESTAMP_RE = /\/run\/(\d{4})(\d{2})(\d{2})t(\d{2})(\d{2})(\d{2})-(\d{3})(?:-|$)/;
202
+ function canonicalPlayRunStartedAtMs(runId) {
203
+ const match = CANONICAL_PLAY_RUN_TIMESTAMP_RE.exec(runId);
204
+ if (!match) return null;
205
+ const [, year, month, day, hour, minute, second, millisecond] = match;
206
+ const value = Date.UTC(
207
+ Number(year),
208
+ Number(month) - 1,
209
+ Number(day),
210
+ Number(hour),
211
+ Number(minute),
212
+ Number(second),
213
+ Number(millisecond)
214
+ );
215
+ if (!Number.isFinite(value)) return null;
216
+ const roundTrip = new Date(value);
217
+ return roundTrip.getUTCFullYear() === Number(year) && roundTrip.getUTCMonth() === Number(month) - 1 && roundTrip.getUTCDate() === Number(day) && roundTrip.getUTCHours() === Number(hour) && roundTrip.getUTCMinutes() === Number(minute) && roundTrip.getUTCSeconds() === Number(second) && roundTrip.getUTCMilliseconds() === Number(millisecond) ? value : null;
218
+ }
219
+ function buildRunEntropySuffix() {
220
+ const randomUuid = _optionalChain([globalThis, 'access', _ => _.crypto, 'optionalAccess', _2 => _2.randomUUID, 'optionalCall', _3 => _3()]);
221
+ if (randomUuid) {
222
+ return randomUuid.replace(/-/g, "").slice(0, 8);
223
+ }
224
+ return Math.random().toString(36).slice(2, 10).padEnd(8, "0");
225
+ }
226
+ function buildPlayWorkflowId(playName, now, options = {}) {
227
+ const familyKey = buildPlayWorkflowFamilyKey(playName);
228
+ const timestamp = _nullishCoalesce(now, () => ( /* @__PURE__ */ new Date()));
229
+ const unique = _nullishCoalesce(options.unique, () => ( now === void 0));
230
+ const entropy = unique ? `-${buildRunEntropySuffix()}` : "";
231
+ return `play/${familyKey}/run/${buildPlayWorkflowRunSuffix(timestamp)}${entropy}`;
232
+ }
233
+ function buildCallerPlayWorkflowId(playName, request, now) {
234
+ const { workflowId: _ignored, ...intent } = request;
235
+ const wireIntent = JSON.parse(JSON.stringify(intent));
236
+ return `${buildPlayWorkflowId(playName, now, { unique: true })}-caller-${sha256Hex(stableStringify(wireIntent))}`;
237
+ }
238
+ function callerPlayWorkflowIdMatchesRequest(workflowId, request) {
239
+ const match = /^play\/[a-z0-9/-]+\/run\/\d{8}t\d{6}-\d{3}-[a-z0-9]{8}-caller-([a-f0-9]{64})$/.exec(
240
+ workflowId
241
+ );
242
+ if (!match || canonicalPlayRunStartedAtMs(workflowId) === null) return false;
243
+ const { workflowId: _ignored, ...intent } = request;
244
+ return match[1] === sha256Hex(stableStringify(JSON.parse(JSON.stringify(intent))));
245
+ }
246
+ function buildPlayRunIdentity(playName, now, options = {}) {
247
+ const workflowId = buildPlayWorkflowId(playName, now, {
248
+ unique: _nullishCoalesce(options.unique, () => ( now === void 0))
249
+ });
250
+ return {
251
+ workflowId,
252
+ runId: workflowId,
253
+ workflowFamilyKey: buildPlayWorkflowFamilyKey(playName)
254
+ };
255
+ }
256
+ function buildAsyncPlayRunIdentity(input) {
257
+ const digest = sha256Hex(
258
+ `${input.parentRunId}\0${input.invocationKey}`
259
+ ).slice(0, 20);
260
+ const parentStartedAt = _nullishCoalesce(canonicalPlayRunStartedAtMs(input.parentRunId), () => ( 0));
261
+ const base = buildPlayWorkflowId("async-child", new Date(parentStartedAt), {
262
+ unique: false
263
+ });
264
+ const workflowId = `${base}-async-${digest}`;
265
+ return {
266
+ workflowId,
267
+ runId: workflowId,
268
+ workflowFamilyKey: buildPlayWorkflowFamilyKey(input.playName)
269
+ };
270
+ }
271
+ function buildRerunPlayRunIdentity(input) {
272
+ const digest = sha256Hex(
273
+ `rerun\0${input.sourceRunId}\0${input.idempotencyKey}`
274
+ ).slice(0, 20);
275
+ const startedAt = _nullishCoalesce(canonicalPlayRunStartedAtMs(input.sourceRunId), () => ( (typeof input.sourceStartedAtMs === "number" && Number.isFinite(input.sourceStartedAtMs) ? input.sourceStartedAtMs : 0)));
276
+ const base = buildPlayWorkflowId(input.playName, new Date(startedAt), {
277
+ unique: false
278
+ });
279
+ const workflowId = `${base}-rerun-${digest}`;
280
+ return {
281
+ workflowId,
282
+ runId: workflowId,
283
+ workflowFamilyKey: buildPlayWorkflowFamilyKey(input.playName)
284
+ };
285
+ }
286
+ function buildAsyncPlayRequestFingerprint(input) {
287
+ return sha256Hex(
288
+ stableStringify({
289
+ key: input.key,
290
+ playRef: input.playRef,
291
+ input: input.childInput
292
+ })
293
+ );
294
+ }
295
+
296
+
297
+
298
+
299
+
300
+
301
+
302
+
303
+
304
+
305
+
306
+
307
+
308
+
309
+
310
+ exports.stableStringify = stableStringify; exports.sha256Hex = sha256Hex; exports.normalizeTableNamespace = normalizeTableNamespace; exports.buildPlayWorkflowFamilyKey = buildPlayWorkflowFamilyKey; exports.buildPlayWorkflowRunSuffix = buildPlayWorkflowRunSuffix; exports.canonicalPlayRunStartedAtMs = canonicalPlayRunStartedAtMs; exports.buildPlayWorkflowId = buildPlayWorkflowId; exports.buildCallerPlayWorkflowId = buildCallerPlayWorkflowId; exports.callerPlayWorkflowIdMatchesRequest = callerPlayWorkflowIdMatchesRequest; exports.buildPlayRunIdentity = buildPlayRunIdentity; exports.buildAsyncPlayRunIdentity = buildAsyncPlayRunIdentity; exports.buildRerunPlayRunIdentity = buildRerunPlayRunIdentity; exports.buildAsyncPlayRequestFingerprint = buildAsyncPlayRequestFingerprint;
@@ -1,10 +1,10 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
2
 
3
3
 
4
- var _chunkRV6ALZIXjs = require('./chunk-RV6ALZIX.js');
4
+ var _chunkM7Y7JYZXjs = require('./chunk-M7Y7JYZX.js');
5
5
 
6
6
 
7
- var _chunkWMS5U6YBjs = require('./chunk-WMS5U6YB.js');
7
+ var _chunkCDFH2DYLjs = require('./chunk-CDFH2DYL.js');
8
8
 
9
9
  // src/cli/commands/sessions.ts
10
10
 
@@ -139,7 +139,7 @@ function currentSessionFile(agent) {
139
139
  const newestFirst = listSessionFiles(agent).sort(
140
140
  (a, b) => b.mtimeMs - a.mtimeMs
141
141
  );
142
- const sessionId = _chunkWMS5U6YBjs.agentSessionIdFromEnvironment.call(void 0, );
142
+ const sessionId = _chunkCDFH2DYLjs.agentSessionIdFromEnvironment.call(void 0, );
143
143
  const cwd = process.cwd();
144
144
  return _nullishCoalesce(_nullishCoalesce(_nullishCoalesce(newestFirst.find((candidate) => candidate.sessionId === sessionId), () => ( newestFirst.find(
145
145
  (candidate) => sessionStartedInDirectory(candidate, cwd)
@@ -448,7 +448,7 @@ function buildSessionUploadContent(raw) {
448
448
  return { encodedContent: encoded, needsChunking: true };
449
449
  }
450
450
  async function uploadPayload(path, payload) {
451
- const { http } = _chunkRV6ALZIXjs.getAuthedHttpClient.call(void 0, );
451
+ const { http } = _chunkM7Y7JYZXjs.getAuthedHttpClient.call(void 0, );
452
452
  return await http.post(path, payload);
453
453
  }
454
454
  async function uploadChunkedSessions(sessions, options) {
@@ -481,7 +481,7 @@ async function uploadChunkedSessions(sessions, options) {
481
481
  ...options.rating ? { rating: options.rating } : {}
482
482
  });
483
483
  const sessionIds = sessions.map((session) => session.sessionId);
484
- _chunkRV6ALZIXjs.printCommandEnvelope.call(void 0,
484
+ _chunkM7Y7JYZXjs.printCommandEnvelope.call(void 0,
485
485
  {
486
486
  ...response,
487
487
  ok: true,
@@ -513,7 +513,7 @@ async function handleSessionsSend(options) {
513
513
  filename: _path.basename.call(void 0, filePath),
514
514
  ...rating ? { rating } : {}
515
515
  });
516
- _chunkRV6ALZIXjs.printCommandEnvelope.call(void 0,
516
+ _chunkM7Y7JYZXjs.printCommandEnvelope.call(void 0,
517
517
  {
518
518
  ...response2,
519
519
  ok: true,
@@ -563,7 +563,7 @@ async function handleSessionsSend(options) {
563
563
  ...rating ? { rating } : {}
564
564
  });
565
565
  const sessionIds = built.map((session) => session.sessionId);
566
- _chunkRV6ALZIXjs.printCommandEnvelope.call(void 0,
566
+ _chunkM7Y7JYZXjs.printCommandEnvelope.call(void 0,
567
567
  {
568
568
  ...response,
569
569
  ok: true,
@@ -671,7 +671,7 @@ ${refreshMeta}
671
671
  </body>
672
672
  </html>`;
673
673
  _fs.writeFileSync.call(void 0, outputPath, html, "utf8");
674
- _chunkRV6ALZIXjs.printCommandEnvelope.call(void 0,
674
+ _chunkM7Y7JYZXjs.printCommandEnvelope.call(void 0,
675
675
  {
676
676
  ok: true,
677
677
  file: outputPath,
@@ -4,11 +4,11 @@ import {
4
4
  printCommandEnvelope,
5
5
  printJson,
6
6
  readCsvRows
7
- } from "./chunk-2G7DXFHI.mjs";
8
- import "./chunk-2GAHHSLB.mjs";
7
+ } from "./chunk-5PRVMXKB.mjs";
8
+ import "./chunk-LMMEAMA7.mjs";
9
9
  import "./chunk-DLIRSHV6.mjs";
10
10
  import "./chunk-NXGCO4JB.mjs";
11
- import "./chunk-YAZCDBXX.mjs";
11
+ import "./chunk-LZPCDB7U.mjs";
12
12
  import "./chunk-WZYKRD7T.mjs";
13
13
  import "./chunk-KRD6H754.mjs";
14
14
 
@@ -4,11 +4,11 @@
4
4
 
5
5
 
6
6
 
7
- var _chunkRV6ALZIXjs = require('./chunk-RV6ALZIX.js');
8
- require('./chunk-WMS5U6YB.js');
7
+ var _chunkM7Y7JYZXjs = require('./chunk-M7Y7JYZX.js');
8
+ require('./chunk-CDFH2DYL.js');
9
9
  require('./chunk-XNYIZMNQ.js');
10
10
  require('./chunk-7P5AA3SN.js');
11
- require('./chunk-JSLPHFP7.js');
11
+ require('./chunk-RWHWF5ZJ.js');
12
12
  require('./chunk-OG64RBAC.js');
13
13
  require('./chunk-COGTRVWW.js');
14
14
 
@@ -126,7 +126,7 @@ function renderTable(rows, totalRows, verbose, footer = `showing ${rows.length}
126
126
  column.length,
127
127
  ...rows.map((row) => {
128
128
  const value = _nullishCoalesce(row[column], () => ( ""));
129
- return (verbose ? value : _chunkRV6ALZIXjs.clip.call(void 0, value, 42)).length;
129
+ return (verbose ? value : _chunkM7Y7JYZXjs.clip.call(void 0, value, 42)).length;
130
130
  })
131
131
  )
132
132
  ])
@@ -136,7 +136,7 @@ function renderTable(rows, totalRows, verbose, footer = `showing ${rows.length}
136
136
  const body = rows.map(
137
137
  (row) => columns.map((column) => {
138
138
  const raw = _nullishCoalesce(row[column], () => ( ""));
139
- const display = verbose ? raw : _chunkRV6ALZIXjs.clip.call(void 0, raw, 42);
139
+ const display = verbose ? raw : _chunkM7Y7JYZXjs.clip.call(void 0, raw, 42);
140
140
  return display.padEnd(widths[column]);
141
141
  }).join(" | ")
142
142
  );
@@ -156,7 +156,7 @@ async function handleCsvShow(path, options, command) {
156
156
  { exitCode: 2 }
157
157
  );
158
158
  }
159
- const allRows = _chunkRV6ALZIXjs.readCsvRows.call(void 0, csvPath);
159
+ const allRows = _chunkM7Y7JYZXjs.readCsvRows.call(void 0, csvPath);
160
160
  const [rowStart, rowEnd] = parseRowRange(options.rows);
161
161
  const rows = options.summary && options.rows === void 0 ? allRows : selectRows(allRows, rowStart, rowEnd);
162
162
  const { rows: selected, columns } = selectColumns(
@@ -169,7 +169,7 @@ async function handleCsvShow(path, options, command) {
169
169
  if (options.summary) {
170
170
  const summaries = summarizeColumns(selected, columns);
171
171
  if (format === "json") {
172
- _chunkRV6ALZIXjs.printJson.call(void 0, {
172
+ _chunkM7Y7JYZXjs.printJson.call(void 0, {
173
173
  rows: summaries,
174
174
  total_rows: selected.length,
175
175
  source_total_rows: allRows.length
@@ -178,7 +178,7 @@ async function handleCsvShow(path, options, command) {
178
178
  }
179
179
  const displayRows = summaryDisplayRows(summaries);
180
180
  if (format === "csv") {
181
- process.stdout.write(_chunkRV6ALZIXjs.csvStringFromRows.call(void 0, displayRows));
181
+ process.stdout.write(_chunkM7Y7JYZXjs.csvStringFromRows.call(void 0, displayRows));
182
182
  return;
183
183
  }
184
184
  process.stdout.write(
@@ -193,7 +193,7 @@ async function handleCsvShow(path, options, command) {
193
193
  return;
194
194
  }
195
195
  if (format === "json") {
196
- _chunkRV6ALZIXjs.printJson.call(void 0, {
196
+ _chunkM7Y7JYZXjs.printJson.call(void 0, {
197
197
  rows: selected.map((row, index) => ({ __row: rowStart + index, ...row }))
198
198
  });
199
199
  return;
@@ -436,7 +436,7 @@ async function handleCsvRenderStart(options) {
436
436
  if (log) {
437
437
  detail = `
438
438
  CSV render log:
439
- ${_chunkRV6ALZIXjs.clip.call(void 0, log, 2e3)}`;
439
+ ${_chunkM7Y7JYZXjs.clip.call(void 0, log, 2e3)}`;
440
440
  }
441
441
  } catch (e7) {
442
442
  }
@@ -487,7 +487,7 @@ async function handleCsvRenderStatus(options) {
487
487
  if (payload.pid) lines.push(`Render PID: ${payload.pid}`);
488
488
  if (payload.url) lines.push(`Render URL: ${payload.url}`);
489
489
  lines.push(`Render Health: ${payload.health_status}`);
490
- _chunkRV6ALZIXjs.printCommandEnvelope.call(void 0, payload, {
490
+ _chunkM7Y7JYZXjs.printCommandEnvelope.call(void 0, payload, {
491
491
  json: options.json,
492
492
  text: `${lines.join("\n")}
493
493
  `
@@ -523,7 +523,7 @@ async function handleCsvRenderStop(options) {
523
523
  };
524
524
  const text = stopped.length > 0 ? `Stopped CSV render process(es): ${stopped.join(" ")}
525
525
  ` : "No running CSV render process found.\n";
526
- _chunkRV6ALZIXjs.printCommandEnvelope.call(void 0, payload, { json: options.json, text });
526
+ _chunkM7Y7JYZXjs.printCommandEnvelope.call(void 0, payload, { json: options.json, text });
527
527
  }
528
528
  async function handleCsvRender(action, options) {
529
529
  const normalized = _nullishCoalesce(action, () => ( "start"));
@@ -4,9 +4,10 @@ import {
4
4
  import {
5
5
  DeeplineClient,
6
6
  planCustomerDbQuery
7
- } from "./chunk-YN6YA7ZZ.mjs";
7
+ } from "./chunk-Q26LUSQ2.mjs";
8
8
  import "./chunk-6IKARAYD.mjs";
9
- import "./chunk-Q6EOHNRH.mjs";
9
+ import "./chunk-JI2B4RZP.mjs";
10
+ import "./chunk-UBKA33KY.mjs";
10
11
  import {
11
12
  argsWantJson,
12
13
  dataExportColumns,
@@ -16,15 +17,15 @@ import {
16
17
  printCommandEnvelope,
17
18
  recordRows,
18
19
  shouldEmitJson
19
- } from "./chunk-2G7DXFHI.mjs";
20
+ } from "./chunk-5PRVMXKB.mjs";
20
21
  import {
21
22
  CustomerDbQueryOutcomeUnknownError
22
- } from "./chunk-2GAHHSLB.mjs";
23
+ } from "./chunk-LMMEAMA7.mjs";
23
24
  import "./chunk-DLIRSHV6.mjs";
24
25
  import {
25
26
  DeeplineError
26
27
  } from "./chunk-NXGCO4JB.mjs";
27
- import "./chunk-YAZCDBXX.mjs";
28
+ import "./chunk-LZPCDB7U.mjs";
28
29
  import "./chunk-WZYKRD7T.mjs";
29
30
  import "./chunk-KRD6H754.mjs";
30
31