deepline 0.3.472 → 0.3.474

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 (184) hide show
  1. package/dist/bundling-sources/sdk/src/client-core.ts +4 -1
  2. package/dist/bundling-sources/sdk/src/play.ts +7 -2
  3. package/dist/bundling-sources/sdk/src/release.ts +1 -1
  4. package/dist/bundling-sources/shared_libs/integration-contracts/billing-entitlements.ts +3 -1
  5. package/dist/bundling-sources/shared_libs/observability/scheduled-jobs.json +18 -0
  6. package/dist/bundling-sources/shared_libs/observability/scheduled-work-control.ts +17 -0
  7. package/dist/bundling-sources/shared_libs/observability/scheduled-work-manual.ts +55 -0
  8. package/dist/bundling-sources/shared_libs/play-runtime/deployment/fly-machines.ts +101 -2
  9. package/dist/bundling-sources/shared_libs/play-runtime/modal-runtime-config.ts +62 -20
  10. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/daytona-launch-transport.ts +2 -2
  11. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/daytona-lifecycle.ts +24 -8
  12. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/daytona-payload-transport.ts +19 -7
  13. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/daytona-runtime-watchdog.ts +196 -10
  14. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/daytona.ts +40 -17
  15. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/local-process.ts +4 -1
  16. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/modal-resource-usage.ts +222 -0
  17. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/modal.ts +46 -14
  18. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/types.ts +2 -0
  19. package/dist/bundling-sources/shared_libs/play-runtime/runtime-incident-drills.ts +9 -5
  20. package/dist/bundling-sources/shared_libs/play-runtime/sandbox-compute-usage.ts +8 -0
  21. package/dist/bundling-sources/shared_libs/play-runtime/sandbox-runs/contract.ts +2 -0
  22. package/dist/bundling-sources/shared_libs/play-runtime/sandbox-runs/runner-backend-adapter.ts +2 -0
  23. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/postgres.ts +5 -1
  24. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/run-ledger-outbox-recovery.ts +14 -5
  25. package/dist/bundling-sources/shared_libs/play-runtime/worker-api-types.ts +36 -0
  26. package/dist/bundling-sources/shared_libs/plays/authoring-contract.ts +18 -8
  27. package/dist/bundling-sources/shared_libs/plays/bundling/index.ts +1 -1
  28. package/dist/bundling-sources/shared_libs/plays/sandbox-runtime-limits.ts +64 -16
  29. package/dist/bundling-sources/shared_libs/plays/tool-result-types.ts +1 -1
  30. package/dist/bundling-sources/shared_libs/product-notifications/billing-sales.ts +14 -1
  31. package/dist/bundling-sources/shared_libs/product-notifications/catalog.ts +40 -0
  32. package/dist/bundling-sources/shared_libs/product-notifications/default-policy.ts +23 -1
  33. package/dist/bundling-sources/shared_libs/product-notifications/events.ts +18 -0
  34. package/dist/bundling-sources/shared_libs/product-notifications/slack-delivery.ts +2 -1
  35. package/dist/cli/auth-O6KAH543.js +41 -0
  36. package/dist/cli/{auth-35DAEPHC.mjs → auth-QMANU5PV.mjs} +5 -5
  37. package/dist/cli/{billing-5ED5X2IO.js → billing-WZ5POBZX.js} +85 -83
  38. package/dist/cli/{billing-CXVBJEC4.mjs → billing-YJAP4VZN.mjs} +12 -10
  39. package/dist/cli/{chunk-CFDQZQE2.mjs → chunk-26CZVDQN.mjs} +2 -2
  40. package/dist/cli/{chunk-UXFUD2MB.mjs → chunk-35SZHTRW.mjs} +5 -5
  41. package/dist/cli/{chunk-R73LE2IM.mjs → chunk-3MZPWIOE.mjs} +1 -1
  42. package/dist/cli/{chunk-HBVT4FW5.js → chunk-3NRZFMX4.js} +6 -6
  43. package/dist/cli/{chunk-SBPI7AEB.js → chunk-3ODBCZLL.js} +272 -258
  44. package/dist/cli/{chunk-ODAARZSK.js → chunk-475V572K.js} +36 -36
  45. package/dist/cli/{chunk-L3AXQXNT.js → chunk-4C34LGI4.js} +13 -13
  46. package/dist/cli/{chunk-V6OMS7E2.js → chunk-4IOY2SCQ.js} +10 -2
  47. package/dist/cli/{chunk-6ZTSHKJF.js → chunk-5QS4T4KR.js} +10 -3
  48. package/dist/cli/{chunk-R6L6JRDR.mjs → chunk-7IYOWIEJ.mjs} +2 -2
  49. package/dist/cli/{chunk-RDOPZK7A.js → chunk-AIPTW3EK.js} +18 -4
  50. package/dist/cli/{chunk-T5GRG37B.js → chunk-AK7UKQ5R.js} +5 -5
  51. package/dist/cli/{chunk-2G4R4APL.js → chunk-AWJKYS25.js} +2 -2
  52. package/dist/cli/{chunk-IPJ27SD2.mjs → chunk-BB4RZMWA.mjs} +5 -5
  53. package/dist/cli/{chunk-GJPRBELO.js → chunk-CXBEZAPU.js} +16 -16
  54. package/dist/cli/{chunk-Z52WEIBR.js → chunk-DKR7QPEO.js} +11 -7
  55. package/dist/cli/{chunk-YK64LQPQ.mjs → chunk-DQZBERDL.mjs} +1 -1
  56. package/dist/cli/{chunk-YUNPYX5T.mjs → chunk-DUGZKPRK.mjs} +10 -3
  57. package/dist/cli/{chunk-2S36YV2K.mjs → chunk-EIKONWW7.mjs} +1 -1
  58. package/dist/cli/{chunk-VDHDTXCK.js → chunk-EK2TAZJZ.js} +2 -2
  59. package/dist/cli/{chunk-2DND7LLL.js → chunk-G3UHAYRX.js} +8 -8
  60. package/dist/cli/{chunk-UPXGN62E.js → chunk-IK3VOGDR.js} +21 -21
  61. package/dist/cli/{chunk-UKKCS6Z4.js → chunk-JCNJQH6X.js} +1 -1
  62. package/dist/cli/{chunk-ZZQIS3TH.mjs → chunk-JEYX3345.mjs} +3 -3
  63. package/dist/cli/{chunk-QSCLOPWR.mjs → chunk-JJVYUKLY.mjs} +16 -2
  64. package/dist/cli/{chunk-XSSIBO74.js → chunk-JSXMJSBE.js} +8 -8
  65. package/dist/cli/{chunk-4NFBYW7X.mjs → chunk-KKWQ24VM.mjs} +2 -2
  66. package/dist/cli/{chunk-3L76SFGN.js → chunk-LHOEWAVD.js} +53 -53
  67. package/dist/cli/{chunk-NZBZFEVA.mjs → chunk-MKSB2FTU.mjs} +4 -4
  68. package/dist/cli/{chunk-MRZ7AO72.mjs → chunk-MNK4ZK2C.mjs} +26 -12
  69. package/dist/cli/{chunk-6PKONIIP.mjs → chunk-MXUJVCKV.mjs} +5 -5
  70. package/dist/cli/{chunk-7KAS4QOW.js → chunk-N62MS3XJ.js} +6 -6
  71. package/dist/cli/{chunk-SYWOSAW7.js → chunk-ORQYKA4I.js} +4 -4
  72. package/dist/cli/{chunk-X3RAGNNZ.mjs → chunk-OWUZKXE7.mjs} +1 -1
  73. package/dist/cli/{chunk-LQUOZGM6.js → chunk-PGKELBIY.js} +51 -51
  74. package/dist/cli/{chunk-52VOORHM.mjs → chunk-RGIQ5ZJX.mjs} +2 -2
  75. package/dist/cli/{chunk-M475BQ77.js → chunk-RLQIGBFK.js} +3 -3
  76. package/dist/cli/{chunk-5FHU67AT.js → chunk-RXITRC37.js} +3 -3
  77. package/dist/cli/{chunk-XSX6TJUA.mjs → chunk-SD7QWZTV.mjs} +10 -2
  78. package/dist/cli/{chunk-H7YFUC3J.js → chunk-STLJYWUC.js} +7 -7
  79. package/dist/cli/{chunk-T5H7ETIM.mjs → chunk-THDXVSNL.mjs} +4 -4
  80. package/dist/cli/{chunk-JRZW4LWK.mjs → chunk-UGYLGT7B.mjs} +1 -1
  81. package/dist/cli/{chunk-YNW47NOJ.mjs → chunk-UKX4FESF.mjs} +2 -2
  82. package/dist/cli/{chunk-RZHUHL53.mjs → chunk-V4ILQ2DS.mjs} +11 -7
  83. package/dist/cli/{chunk-QLVYYDUI.js → chunk-XNP7XTBN.js} +26 -26
  84. package/dist/cli/{chunk-SKVMC6K6.js → chunk-XP7FAYLN.js} +5 -5
  85. package/dist/cli/{chunk-RMQB72WW.js → chunk-YFDTF2XC.js} +9 -9
  86. package/dist/cli/{chunk-KQJHIVCE.mjs → chunk-YK64UZXN.mjs} +1 -1
  87. package/dist/cli/{chunk-IIQ6O5F3.js → chunk-YKNULB7V.js} +5 -5
  88. package/dist/cli/{chunk-YMB2CD55.mjs → chunk-YVJ6IWVD.mjs} +1 -1
  89. package/dist/cli/{chunk-TMMODGPV.mjs → chunk-YX762HFK.mjs} +2 -2
  90. package/dist/cli/{chunk-OMPW5ELS.mjs → chunk-Z27NSLPC.mjs} +1 -1
  91. package/dist/cli/{chunk-FHIO7WI2.mjs → chunk-ZGC2SUAA.mjs} +2 -2
  92. package/dist/cli/{chunk-C5PY2PP6.mjs → chunk-ZRWQKTSX.mjs} +3 -3
  93. package/dist/cli/command-docs.js +2 -2
  94. package/dist/cli/command-docs.mjs +1 -1
  95. package/dist/cli/{csv-SQJQM3B2.js → csv-ENKCFCSM.js} +13 -13
  96. package/dist/cli/{csv-OSDYY3QW.mjs → csv-QCLQOIEA.mjs} +4 -4
  97. package/dist/cli/{db-ATDYXAD5.js → db-5TLBZDT3.js} +27 -27
  98. package/dist/cli/{db-2M6BU6G5.mjs → db-P25LGP33.mjs} +6 -6
  99. package/dist/cli/describe-44L7OBGM.js +48 -0
  100. package/dist/cli/{describe-WIAJCWF3.mjs → describe-W2H5DHR6.mjs} +19 -19
  101. package/dist/cli/describe-core.d.mts +3 -3
  102. package/dist/cli/describe-core.d.ts +3 -3
  103. package/dist/cli/describe-core.js +3 -3
  104. package/dist/cli/describe-core.mjs +2 -2
  105. package/dist/cli/{executions-2J6CCJL2.mjs → executions-VYZCYUBR.mjs} +6 -6
  106. package/dist/cli/{executions-Y32LMYH6.js → executions-YHFAWJOJ.js} +8 -8
  107. package/dist/cli/{feedback-L4AVIMGI.mjs → feedback-K2FWYYLZ.mjs} +4 -4
  108. package/dist/cli/{feedback-RXQLS6QU.js → feedback-RJF3QSBB.js} +8 -8
  109. package/dist/cli/git-F3EI5DY5.js +25 -0
  110. package/dist/cli/{git-V3K77AWH.mjs → git-S3APUPLL.mjs} +5 -5
  111. package/dist/cli/index.js +139 -139
  112. package/dist/cli/index.mjs +41 -41
  113. package/dist/cli/{legacy-noops-B2KJT4CZ.js → legacy-noops-3SWNRE7Z.js} +8 -8
  114. package/dist/cli/{legacy-noops-LOGMYOY5.mjs → legacy-noops-ICYZACTW.mjs} +5 -5
  115. package/dist/cli/{monitors-5ETSB7S7.mjs → monitors-DEZCEQLB.mjs} +7 -7
  116. package/dist/cli/{monitors-A5WYUCGD.js → monitors-VRIWTRPG.js} +91 -91
  117. package/dist/cli/{org-BJOAUSXL.mjs → org-IQW5ZIAO.mjs} +6 -6
  118. package/dist/cli/{org-7EZDWYKK.js → org-NX752DTE.js} +72 -72
  119. package/dist/cli/{pages-3BYGBTVK.mjs → pages-5WQRVVKX.mjs} +6 -6
  120. package/dist/cli/{pages-45VNTEQU.js → pages-YIBWYGVS.js} +17 -17
  121. package/dist/cli/{play-5KER3JFU.js → play-3EXNH3HD.js} +662 -601
  122. package/dist/cli/{play-R7JQV533.mjs → play-WOMJXS4O.mjs} +110 -49
  123. package/dist/cli/{providers-OHMZ6QIF.js → providers-C2WYSR2Y.js} +9 -9
  124. package/dist/cli/{providers-RMFCE6MM.mjs → providers-XDVPYRTS.mjs} +6 -6
  125. package/dist/cli/{quickstart-GNRE4SAT.js → quickstart-7RABZF66.js} +6 -6
  126. package/dist/cli/{quickstart-IHR4VC5K.mjs → quickstart-YMSIL2TK.mjs} +4 -4
  127. package/dist/cli/{run-77QIMUUV.js → run-5QVVWFGL.js} +39 -39
  128. package/dist/cli/{run-Y4MIRFJY.mjs → run-A4JD6TAR.mjs} +24 -24
  129. package/dist/cli/{search-24YKTHMK.mjs → search-2TOSF2G3.mjs} +7 -7
  130. package/dist/cli/search-772R7YHI.js +32 -0
  131. package/dist/cli/{secrets-KHX62AWC.mjs → secrets-BUN4ORE7.mjs} +6 -6
  132. package/dist/cli/{secrets-SSEBT3IS.js → secrets-Q7UVOSNM.js} +15 -15
  133. package/dist/cli/{sessions-H7T25HGE.mjs → sessions-IAOORI6X.mjs} +5 -5
  134. package/dist/cli/{sessions-E6KNWYEH.js → sessions-NXQOQ4HX.js} +6 -6
  135. package/dist/cli/{settings-XSJG6M32.mjs → settings-BMI373AI.mjs} +11 -11
  136. package/dist/cli/{settings-GXUYF5G7.js → settings-WD4KSY5S.js} +78 -78
  137. package/dist/cli/{setup-JP5YPIA4.js → setup-3IA7BVPE.js} +44 -44
  138. package/dist/cli/{setup-GD7IOD4U.mjs → setup-55VIWAWR.mjs} +9 -9
  139. package/dist/cli/{skills-HLHE3ENN.mjs → skills-GKITMBTM.mjs} +7 -7
  140. package/dist/cli/skills-PUUTFMP3.js +31 -0
  141. package/dist/cli/tools-3WX7TUUG.js +55 -0
  142. package/dist/cli/{tools-Q4XIQX7W.mjs → tools-XHCFC7GP.mjs} +17 -17
  143. package/dist/cli/update-PC3CLODV.js +33 -0
  144. package/dist/cli/{update-3KRMR2QJ.mjs → update-SWB24YKE.mjs} +9 -9
  145. package/dist/cli/{workflow-NMUESL3O.js → workflow-5QPMFI3Z.js} +17 -17
  146. package/dist/cli/{workflow-NOZ7WFEY.mjs → workflow-XO4CKUA7.mjs} +7 -7
  147. package/dist/{client-C9bJ0QXu.d.mts → client-Bgl0_zXi.d.mts} +1 -1
  148. package/dist/{client-CuNH54w3.d.ts → client-_ah6IuhK.d.ts} +1 -1
  149. package/dist/{client-core-CSiXbe2n.d.mts → client-core-Bfsedm0_.d.mts} +44 -3
  150. package/dist/{client-core-C8Q6DKga.d.ts → client-core-C-ZF5vh9.d.ts} +44 -3
  151. package/dist/{compiler-manifest-Zwm9yqOA.d.ts → compiler-manifest-CCOqDGjU.d.mts} +12 -10
  152. package/dist/{compiler-manifest-Zwm9yqOA.d.mts → compiler-manifest-CCOqDGjU.d.ts} +12 -10
  153. package/dist/{errors-nEsqNLL8.d.mts → errors-BLccD7tG.d.mts} +1 -1
  154. package/dist/{errors-CsYwlpn4.d.ts → errors-Cy3kPnsi.d.ts} +1 -1
  155. package/dist/{index-CXF2jtza.d.mts → index-4-j44HuT.d.mts} +1 -1
  156. package/dist/{index-9pUZqkPH.d.ts → index-D5e4h1-H.d.ts} +1 -1
  157. package/dist/index.d.mts +14 -9
  158. package/dist/index.d.ts +14 -9
  159. package/dist/index.js +9 -9
  160. package/dist/index.mjs +6 -6
  161. package/dist/install-integrity.json +115 -114
  162. package/dist/plays/bundle-play-file.d.mts +3 -3
  163. package/dist/plays/bundle-play-file.d.ts +3 -3
  164. package/dist/plays/bundle-play-file.mjs +1 -1
  165. package/dist/plays/play-description.d.mts +2 -2
  166. package/dist/plays/play-description.d.ts +2 -2
  167. package/dist/plays/run-request.d.mts +2 -2
  168. package/dist/plays/run-request.d.ts +2 -2
  169. package/dist/release.d.mts +1 -1
  170. package/dist/release.d.ts +1 -1
  171. package/dist/release.js +2 -2
  172. package/dist/release.mjs +1 -1
  173. package/dist/server.d.mts +4 -4
  174. package/dist/server.d.ts +4 -4
  175. package/dist/server.js +5 -5
  176. package/dist/server.mjs +3 -3
  177. package/package.json +1 -1
  178. package/dist/cli/auth-Q5TM66UI.js +0 -41
  179. package/dist/cli/describe-37QXXDCF.js +0 -48
  180. package/dist/cli/git-JGUR335T.js +0 -25
  181. package/dist/cli/search-S3VO2UKV.js +0 -32
  182. package/dist/cli/skills-C4KTW3US.js +0 -31
  183. package/dist/cli/tools-KS7JMRK6.js +0 -55
  184. package/dist/cli/update-GYTQYK2W.js +0 -33
@@ -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(); } } async function _asyncNullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return await 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
- var _chunkSKVMC6K6js = require('./chunk-SKVMC6K6.js');
3
+ var _chunkXP7FAYLNjs = require('./chunk-XP7FAYLN.js');
4
4
 
5
5
 
6
6
 
7
- var _chunk7KAS4QOWjs = require('./chunk-7KAS4QOW.js');
7
+ var _chunkN62MS3XJjs = require('./chunk-N62MS3XJ.js');
8
8
  require('./chunk-E4CABWXL.js');
9
9
  require('./chunk-JDMR33HS.js');
10
10
  require('./chunk-NMU3VR5U.js');
@@ -15,9 +15,9 @@ require('./chunk-XDVT3GOM.js');
15
15
 
16
16
 
17
17
 
18
- var _chunkH7YFUC3Jjs = require('./chunk-H7YFUC3J.js');
19
- require('./chunk-5FHU67AT.js');
20
- require('./chunk-SYWOSAW7.js');
18
+ var _chunkSTLJYWUCjs = require('./chunk-STLJYWUC.js');
19
+ require('./chunk-RXITRC37.js');
20
+ require('./chunk-ORQYKA4I.js');
21
21
 
22
22
 
23
23
 
@@ -26,7 +26,7 @@ require('./chunk-XNYIZMNQ.js');
26
26
 
27
27
 
28
28
  var _chunkDIAWYWT5js = require('./chunk-DIAWYWT5.js');
29
- require('./chunk-UKKCS6Z4.js');
29
+ require('./chunk-JCNJQH6X.js');
30
30
  require('./chunk-OG64RBAC.js');
31
31
  require('./chunk-COGTRVWW.js');
32
32
 
@@ -75,7 +75,7 @@ function reportBillingFailure(failure, options) {
75
75
  if (failure.next) {
76
76
  textLines.push(`Next: ${failure.next}`);
77
77
  }
78
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
78
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
79
79
  {
80
80
  ok: false,
81
81
  exitCode: failure.exitCode,
@@ -96,7 +96,7 @@ function parseTopUpCredits(raw) {
96
96
  return parsed;
97
97
  }
98
98
  function topUpIdempotencyKey(raw) {
99
- return raw === void 0 ? `cli_topup:${Date.now()}:${_crypto.randomUUID.call(void 0, )}` : _chunk7KAS4QOWjs.requireBillingIdempotencyKey.call(void 0, raw);
99
+ return raw === void 0 ? `cli_topup:${Date.now()}:${_crypto.randomUUID.call(void 0, )}` : _chunkN62MS3XJjs.requireBillingIdempotencyKey.call(void 0, raw);
100
100
  }
101
101
  function targetBillingIdempotencyKey(raw) {
102
102
  return typeof raw === "string" ? raw : `cli_target_billing:${Date.now()}:${_crypto.randomUUID.call(void 0, )}`;
@@ -315,7 +315,7 @@ function defaultLedgerExportPath() {
315
315
  );
316
316
  }
317
317
  async function handleBalance(options) {
318
- const { http } = _chunkH7YFUC3Jjs.getAuthedHttpClient.call(void 0, );
318
+ const { http } = _chunkSTLJYWUCjs.getAuthedHttpClient.call(void 0, );
319
319
  const payload = await http.get(
320
320
  "/api/v2/billing/balance"
321
321
  );
@@ -399,7 +399,7 @@ async function handleBalance(options) {
399
399
  ...options.verbose ? detail : [],
400
400
  ...lines.slice(1)
401
401
  ];
402
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
402
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
403
403
  {
404
404
  ...payload,
405
405
  ...recovery ? { recovery } : {},
@@ -435,7 +435,7 @@ async function handleUsageEvents(options) {
435
435
  );
436
436
  return;
437
437
  }
438
- const client = new (0, _chunkSKVMC6K6js.DeeplineClient)();
438
+ const client = new (0, _chunkXP7FAYLNjs.DeeplineClient)();
439
439
  let payload;
440
440
  try {
441
441
  payload = await client.billing.usageEvents({
@@ -466,7 +466,7 @@ async function handleUsageEvents(options) {
466
466
  ),
467
467
  ...nextPage ? [`Next page: ${nextPage}`] : []
468
468
  ];
469
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
469
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
470
470
  {
471
471
  ...payload,
472
472
  next: { page: nextPage },
@@ -477,7 +477,7 @@ async function handleUsageEvents(options) {
477
477
  }
478
478
  async function handleUsage(options) {
479
479
  if (options.events) return handleUsageEvents(options);
480
- const { http } = _chunkH7YFUC3Jjs.getAuthedHttpClient.call(void 0, );
480
+ const { http } = _chunkSTLJYWUCjs.getAuthedHttpClient.call(void 0, );
481
481
  const params = new URLSearchParams();
482
482
  if (options.requestId !== void 0) {
483
483
  const requestId = options.requestId.trim();
@@ -558,7 +558,7 @@ async function handleUsage(options) {
558
558
  "No continuation is available for this view. Use deepline billing ledger export all for the full ledger."
559
559
  ] : []
560
560
  ];
561
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
561
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
562
562
  {
563
563
  ...payload,
564
564
  recent: {
@@ -572,7 +572,7 @@ async function handleUsage(options) {
572
572
  );
573
573
  }
574
574
  async function handleLimit(options) {
575
- const { http } = _chunkH7YFUC3Jjs.getAuthedHttpClient.call(void 0, );
575
+ const { http } = _chunkSTLJYWUCjs.getAuthedHttpClient.call(void 0, );
576
576
  const payload = await http.get(
577
577
  "/api/v2/billing/limit"
578
578
  );
@@ -580,7 +580,7 @@ async function handleLimit(options) {
580
580
  `Monthly usage cap: ${_nullishCoalesce(payload.monthly_credits_limit, () => ( "(unknown)"))}`,
581
581
  "Enforcement: checked before new calls; in-flight work can exceed the cap."
582
582
  ] : ["Monthly usage cap: off"];
583
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
583
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
584
584
  {
585
585
  ...payload,
586
586
  render: { sections: [{ title: "billing limit", lines }] }
@@ -589,12 +589,12 @@ async function handleLimit(options) {
589
589
  );
590
590
  }
591
591
  async function handleSetLimit(credits, options) {
592
- const { http } = _chunkH7YFUC3Jjs.getAuthedHttpClient.call(void 0, );
592
+ const { http } = _chunkSTLJYWUCjs.getAuthedHttpClient.call(void 0, );
593
593
  const payload = await http.request("/api/v2/billing/limit", {
594
594
  method: "PUT",
595
595
  body: { monthly_credits_limit: Number.parseInt(credits, 10) }
596
596
  });
597
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
597
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
598
598
  {
599
599
  ...payload,
600
600
  render: {
@@ -610,11 +610,11 @@ async function handleSetLimit(credits, options) {
610
610
  );
611
611
  }
612
612
  async function handleLimitOff(options) {
613
- const { http } = _chunkH7YFUC3Jjs.getAuthedHttpClient.call(void 0, );
613
+ const { http } = _chunkSTLJYWUCjs.getAuthedHttpClient.call(void 0, );
614
614
  const payload = await http.request("/api/v2/billing/limit", {
615
615
  method: "DELETE"
616
616
  });
617
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
617
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
618
618
  {
619
619
  ...payload,
620
620
  render: {
@@ -634,7 +634,7 @@ async function exportLedger(http, outputPath, options) {
634
634
  let initialized = false;
635
635
  let pageNumber = 0;
636
636
  console.error(`Exporting billing ledger to ${outputPath}`);
637
- for await (const entries of _chunk7KAS4QOWjs.iterateCursorPages.call(void 0, async (cursor) => {
637
+ for await (const entries of _chunkN62MS3XJjs.iterateCursorPages.call(void 0, async (cursor) => {
638
638
  pageNumber += 1;
639
639
  console.error(
640
640
  `Fetching page ${pageNumber}; ${summary.row_count} rows written.`
@@ -673,7 +673,7 @@ async function exportLedger(http, outputPath, options) {
673
673
  return summary;
674
674
  }
675
675
  async function handleHistory(options) {
676
- const { http } = _chunkH7YFUC3Jjs.getAuthedHttpClient.call(void 0, );
676
+ const { http } = _chunkSTLJYWUCjs.getAuthedHttpClient.call(void 0, );
677
677
  const windows = {
678
678
  "1d": 86400,
679
679
  "1w": 604800,
@@ -685,10 +685,10 @@ async function handleHistory(options) {
685
685
  process.cwd(),
686
686
  "deepline",
687
687
  "data",
688
- _chunkH7YFUC3Jjs.createTimestampedName.call(void 0, `billing-history-${options.time}`, "csv")
688
+ _chunkSTLJYWUCjs.createTimestampedName.call(void 0, `billing-history-${options.time}`, "csv")
689
689
  );
690
690
  const summary = await exportLedger(http, outputPath, { sinceAt });
691
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
691
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
692
692
  {
693
693
  output_path: outputPath,
694
694
  row_count: summary.row_count,
@@ -725,14 +725,14 @@ async function handleLedgerExportAll(options) {
725
725
  );
726
726
  return;
727
727
  }
728
- const { http } = _chunkH7YFUC3Jjs.getAuthedHttpClient.call(void 0, );
728
+ const { http } = _chunkSTLJYWUCjs.getAuthedHttpClient.call(void 0, );
729
729
  const outputPath = options.output ? _path.resolve.call(void 0, String(options.output)) : defaultLedgerExportPath();
730
730
  const summary = await exportLedger(http, outputPath, {
731
731
  sinceAt,
732
732
  runId: options.runId,
733
733
  operation: options.operation
734
734
  });
735
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
735
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
736
736
  {
737
737
  output_path: outputPath,
738
738
  row_count: summary.row_count,
@@ -772,7 +772,7 @@ function targetPlanLine(plan) {
772
772
  return `${plan.name} (${plan.sku}) | ${planPriceText(plan.recurring_price_usd, plan.interval)}${firstMonth} | ${plan.included_credits} included credits/month | $${plan.purchased_credit_price_usd}/purchased credit | ${plan.acquisition_enabled ? "available" : "unavailable"}`;
773
773
  }
774
774
  async function handlePlans(options) {
775
- const client = new (0, _chunkSKVMC6K6js.DeeplineClient)();
775
+ const client = new (0, _chunkXP7FAYLNjs.DeeplineClient)();
776
776
  const payload = await client.billing.targetPlans();
777
777
  const listedCurrentPlan = payload.plans.find(
778
778
  (plan) => plan.sku === payload.current_plan_sku
@@ -785,8 +785,8 @@ async function handlePlans(options) {
785
785
  ...payload.plans.length === 0 ? ["Plans: none available"] : ["Plans:", ...payload.plans.map(targetPlanLine)],
786
786
  "Change plan: deepline billing change-plan <plan_sku>"
787
787
  ];
788
- const legacyPayload = _chunkH7YFUC3Jjs.shouldEmitJson.call(void 0, options.json) ? await client.billing.plans() : null;
789
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
788
+ const legacyPayload = _chunkSTLJYWUCjs.shouldEmitJson.call(void 0, options.json) ? await client.billing.plans() : null;
789
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
790
790
  {
791
791
  ..._nullishCoalesce(legacyPayload, () => ( payload)),
792
792
  ...legacyPayload ? { target_billing: payload } : {},
@@ -796,7 +796,7 @@ async function handlePlans(options) {
796
796
  );
797
797
  }
798
798
  async function handleSubscribe(planVersionId, options) {
799
- const { http } = _chunkH7YFUC3Jjs.getAuthedHttpClient.call(void 0, );
799
+ const { http } = _chunkSTLJYWUCjs.getAuthedHttpClient.call(void 0, );
800
800
  const payload = await http.request(
801
801
  "/api/v2/billing/subscription/checkout",
802
802
  {
@@ -805,8 +805,8 @@ async function handleSubscribe(planVersionId, options) {
805
805
  }
806
806
  );
807
807
  const url = String(payload.checkout_url || "");
808
- if (!options.json && options.open !== false && url) _chunkH7YFUC3Jjs.openInBrowser.call(void 0, url);
809
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
808
+ if (!options.json && options.open !== false && url) _chunkSTLJYWUCjs.openInBrowser.call(void 0, url);
809
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
810
810
  {
811
811
  ...payload,
812
812
  render: {
@@ -822,7 +822,7 @@ async function handleSubscribe(planVersionId, options) {
822
822
  );
823
823
  }
824
824
  async function handleSubscriptionStatus(options) {
825
- const client = new (0, _chunkSKVMC6K6js.DeeplineClient)();
825
+ const client = new (0, _chunkXP7FAYLNjs.DeeplineClient)();
826
826
  const payload = await client.billing.subscription.status();
827
827
  const pools = _nullishCoalesce(payload.credit_pools, () => ( []));
828
828
  const lines = [
@@ -842,7 +842,7 @@ async function handleSubscriptionStatus(options) {
842
842
  ],
843
843
  `Assigned by: ${_nullishCoalesce(payload.assigned_by, () => ( "default"))}`
844
844
  ];
845
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
845
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
846
846
  {
847
847
  ...payload,
848
848
  render: { sections: [{ title: "billing subscription", lines }] }
@@ -851,7 +851,7 @@ async function handleSubscriptionStatus(options) {
851
851
  );
852
852
  }
853
853
  async function handleSubscriptionCancel(options) {
854
- const client = new (0, _chunkSKVMC6K6js.DeeplineClient)();
854
+ const client = new (0, _chunkXP7FAYLNjs.DeeplineClient)();
855
855
  const action = options.undo ? "undo_cancel" : "cancel";
856
856
  if (options.dryRun) {
857
857
  const status = await client.billing.subscription.status();
@@ -868,7 +868,7 @@ async function handleSubscriptionCancel(options) {
868
868
  return;
869
869
  }
870
870
  const consequence = action === "cancel" ? `Would schedule cancellation at period end${status.current_period_end ? ` (${status.current_period_end})` : ""}. The subscription stays active until then and remaining credits are kept.` : "Would reverse the pending cancellation; the subscription would renew normally.";
871
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
871
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
872
872
  {
873
873
  ok: true,
874
874
  dry_run: true,
@@ -923,7 +923,7 @@ async function handleSubscriptionCancel(options) {
923
923
  "Remaining credits are yours to keep \u2014 cancellation never removes credits.",
924
924
  "Undo with: deepline billing subscription cancel --undo"
925
925
  ];
926
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
926
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
927
927
  {
928
928
  ok: true,
929
929
  ...result,
@@ -977,7 +977,7 @@ async function handleInvoices(options) {
977
977
  return;
978
978
  }
979
979
  }
980
- const client = new (0, _chunkSKVMC6K6js.DeeplineClient)();
980
+ const client = new (0, _chunkXP7FAYLNjs.DeeplineClient)();
981
981
  let payload;
982
982
  try {
983
983
  payload = await client.billing.invoices.list(
@@ -1006,7 +1006,7 @@ async function handleInvoices(options) {
1006
1006
  url: entry.url
1007
1007
  }))
1008
1008
  } : { ...payload, count: entries.length };
1009
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
1009
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
1010
1010
  {
1011
1011
  ...envelope,
1012
1012
  render: { sections: [{ title: "billing invoices", lines }] }
@@ -1015,7 +1015,7 @@ async function handleInvoices(options) {
1015
1015
  );
1016
1016
  }
1017
1017
  async function handleCheckout(options) {
1018
- const { http } = _chunkH7YFUC3Jjs.getAuthedHttpClient.call(void 0, );
1018
+ const { http } = _chunkSTLJYWUCjs.getAuthedHttpClient.call(void 0, );
1019
1019
  const payload = await http.post(
1020
1020
  "/api/v2/billing/checkout",
1021
1021
  {
@@ -1025,8 +1025,8 @@ async function handleCheckout(options) {
1025
1025
  }
1026
1026
  );
1027
1027
  const url = String(payload.url || payload.checkout_url || "");
1028
- if (!options.json && !options.noOpen && url) _chunkH7YFUC3Jjs.openInBrowser.call(void 0, url);
1029
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
1028
+ if (!options.json && !options.noOpen && url) _chunkSTLJYWUCjs.openInBrowser.call(void 0, url);
1029
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
1030
1030
  {
1031
1031
  ...payload,
1032
1032
  render: {
@@ -1071,7 +1071,7 @@ async function handleTopUp(creditsRaw, options) {
1071
1071
  return;
1072
1072
  }
1073
1073
  if (options.dryRun) {
1074
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
1074
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
1075
1075
  {
1076
1076
  ok: true,
1077
1077
  dry_run: true,
@@ -1101,7 +1101,7 @@ async function handleTopUp(creditsRaw, options) {
1101
1101
  );
1102
1102
  return;
1103
1103
  }
1104
- const client = new (0, _chunkSKVMC6K6js.DeeplineClient)();
1104
+ const client = new (0, _chunkXP7FAYLNjs.DeeplineClient)();
1105
1105
  let payload;
1106
1106
  try {
1107
1107
  payload = await client.billing.topUpWithReceipt({
@@ -1118,7 +1118,7 @@ async function handleTopUp(creditsRaw, options) {
1118
1118
  return;
1119
1119
  }
1120
1120
  if (payload.status === "pending") {
1121
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
1121
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
1122
1122
  {
1123
1123
  ok: true,
1124
1124
  ...payload,
@@ -1182,17 +1182,17 @@ async function handleTopUp(creditsRaw, options) {
1182
1182
  ]
1183
1183
  }
1184
1184
  };
1185
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0, options.compact ? compactEnvelope : fullEnvelope, {
1185
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0, options.compact ? compactEnvelope : fullEnvelope, {
1186
1186
  json: options.json
1187
1187
  });
1188
1188
  }
1189
1189
  async function handleTargetStatus(options) {
1190
- const client = new (0, _chunkSKVMC6K6js.DeeplineClient)();
1190
+ const client = new (0, _chunkXP7FAYLNjs.DeeplineClient)();
1191
1191
  const payload = await client.billing.targetStatus();
1192
1192
  const balanceCommand = "deepline billing balance";
1193
1193
  const recentChargesCommand = "deepline billing usage --limit 5";
1194
1194
  const exactChargeCommand = "deepline billing usage --request-id <job_id>";
1195
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
1195
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
1196
1196
  {
1197
1197
  ok: true,
1198
1198
  ...payload,
@@ -1228,10 +1228,10 @@ function formatComputeMinutes(minutes) {
1228
1228
  return minutes < 120 ? `${Number(minutes.toFixed(1)).toLocaleString("en-US")} minutes` : `${Number((minutes / 60).toFixed(1)).toLocaleString("en-US")} hours`;
1229
1229
  }
1230
1230
  async function handleIncludedCompute(options) {
1231
- const client = new (0, _chunkSKVMC6K6js.DeeplineClient)();
1231
+ const client = new (0, _chunkXP7FAYLNjs.DeeplineClient)();
1232
1232
  const payload = options.enable ? await client.billing.enableIncludedCompute() : await client.billing.includedCompute();
1233
- const plan = `${formatComputeMinutes(payload.plan.included_minutes)} included per month, then ${Math.round(payload.plan.credits_per_minute * 60)} credits/hour`;
1234
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
1233
+ const plan = `${formatComputeMinutes(payload.plan.included_minutes)} standard-equivalent compute included per month, then ${Math.round(payload.plan.credits_per_minute * 60)} credits/standard hour`;
1234
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
1235
1235
  {
1236
1236
  ok: true,
1237
1237
  ...payload,
@@ -1240,8 +1240,8 @@ async function handleIncludedCompute(options) {
1240
1240
  {
1241
1241
  title: "billing compute",
1242
1242
  lines: payload.status === "on" ? [
1243
- `Included compute: on, ${formatComputeMinutes(payload.included_minutes)} per month, then ${Math.round((_nullishCoalesce(payload.credits_per_minute, () => ( 0))) * 60)} credits/hour`,
1244
- `Used: ${formatComputeMinutes(payload.included_minutes_used)} included, ${formatComputeMinutes(payload.minutes_used)} total since ${payload.period_start_at.slice(0, 10)}`
1243
+ `Included compute: on, ${formatComputeMinutes(payload.included_minutes)} standard-equivalent per month, then ${Math.round((_nullishCoalesce(payload.credits_per_minute, () => ( 0))) * 60)} credits/standard hour`,
1244
+ `Used: ${formatComputeMinutes(payload.included_minutes_used)} standard-equivalent included, ${formatComputeMinutes(payload.minutes_used)} elapsed since ${payload.period_start_at.slice(0, 10)}`
1245
1245
  ] : payload.status === "off" ? [
1246
1246
  "Included compute: off; Play compute is billed at provider cost.",
1247
1247
  `Used: ${formatComputeMinutes(payload.minutes_used)} since ${payload.period_start_at.slice(0, 10)}`,
@@ -1257,8 +1257,8 @@ async function handleIncludedCompute(options) {
1257
1257
  );
1258
1258
  }
1259
1259
  async function handleEntitlements(options) {
1260
- const payload = await new (0, _chunkSKVMC6K6js.DeeplineClient)().billing.entitlements();
1261
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
1260
+ const payload = await new (0, _chunkXP7FAYLNjs.DeeplineClient)().billing.entitlements();
1261
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
1262
1262
  {
1263
1263
  ok: true,
1264
1264
  ...payload,
@@ -1291,7 +1291,7 @@ async function handleEntitlements(options) {
1291
1291
  );
1292
1292
  }
1293
1293
  async function handleAutoRechargeStatus(options) {
1294
- const payload = await new (0, _chunkSKVMC6K6js.DeeplineClient)().billing.autoRecharge.get();
1294
+ const payload = await new (0, _chunkXP7FAYLNjs.DeeplineClient)().billing.autoRecharge.get();
1295
1295
  const state = payload.available ? payload.enabled ? "on" : "off" : "unavailable";
1296
1296
  const lines = [
1297
1297
  `State: ${state}`,
@@ -1301,7 +1301,7 @@ async function handleAutoRechargeStatus(options) {
1301
1301
  `Automatic credit purchase cap: ${payload.purchase_limit_credits} credits per rolling 30 days`
1302
1302
  ] : []
1303
1303
  ];
1304
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
1304
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
1305
1305
  {
1306
1306
  ok: true,
1307
1307
  ...payload,
@@ -1350,7 +1350,7 @@ async function handleAutoRechargeSet(options) {
1350
1350
  }
1351
1351
  const idempotencyKey = targetBillingIdempotencyKey(options.idempotencyKey);
1352
1352
  if (options.dryRun) {
1353
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
1353
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
1354
1354
  {
1355
1355
  ok: true,
1356
1356
  dry_run: true,
@@ -1371,7 +1371,7 @@ async function handleAutoRechargeSet(options) {
1371
1371
  );
1372
1372
  return;
1373
1373
  }
1374
- const payload = await new (0, _chunkSKVMC6K6js.DeeplineClient)().billing.autoRecharge.update({
1374
+ const payload = await new (0, _chunkXP7FAYLNjs.DeeplineClient)().billing.autoRecharge.update({
1375
1375
  enabled: true,
1376
1376
  thresholdCredits,
1377
1377
  refillToCredits,
@@ -1379,7 +1379,7 @@ async function handleAutoRechargeSet(options) {
1379
1379
  ...rollingLimitCredits !== void 0 ? { purchaseLimitCredits: rollingLimitCredits } : {},
1380
1380
  idempotencyKey
1381
1381
  });
1382
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
1382
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
1383
1383
  { ok: true, idempotency_key: idempotencyKey, ...payload },
1384
1384
  { json: options.json }
1385
1385
  );
@@ -1387,7 +1387,7 @@ async function handleAutoRechargeSet(options) {
1387
1387
  async function handleAutoRechargeOff(options) {
1388
1388
  const idempotencyKey = targetBillingIdempotencyKey(options.idempotencyKey);
1389
1389
  if (options.dryRun) {
1390
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
1390
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
1391
1391
  {
1392
1392
  ok: true,
1393
1393
  dry_run: true,
@@ -1402,11 +1402,11 @@ async function handleAutoRechargeOff(options) {
1402
1402
  );
1403
1403
  return;
1404
1404
  }
1405
- const payload = await new (0, _chunkSKVMC6K6js.DeeplineClient)().billing.autoRecharge.update({
1405
+ const payload = await new (0, _chunkXP7FAYLNjs.DeeplineClient)().billing.autoRecharge.update({
1406
1406
  enabled: false,
1407
1407
  idempotencyKey
1408
1408
  });
1409
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
1409
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
1410
1410
  { ok: true, idempotency_key: idempotencyKey, ...payload },
1411
1411
  { json: options.json }
1412
1412
  );
@@ -1425,11 +1425,11 @@ async function handleBuyCredits(creditsRaw, options) {
1425
1425
  return;
1426
1426
  }
1427
1427
  const idempotencyKey = targetBillingIdempotencyKey(options.idempotencyKey);
1428
- const payload = await new (0, _chunkSKVMC6K6js.DeeplineClient)().billing.purchaseCredits({
1428
+ const payload = await new (0, _chunkXP7FAYLNjs.DeeplineClient)().billing.purchaseCredits({
1429
1429
  credits,
1430
1430
  idempotencyKey
1431
1431
  });
1432
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
1432
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
1433
1433
  { ok: true, idempotency_key: idempotencyKey, ...payload },
1434
1434
  { json: options.json }
1435
1435
  );
@@ -1465,7 +1465,7 @@ async function handleTopUpRecover(creditsRaw, options) {
1465
1465
  return;
1466
1466
  }
1467
1467
  if (options.dryRun) {
1468
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
1468
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
1469
1469
  {
1470
1470
  ok: true,
1471
1471
  dry_run: true,
@@ -1478,12 +1478,12 @@ async function handleTopUpRecover(creditsRaw, options) {
1478
1478
  );
1479
1479
  return;
1480
1480
  }
1481
- const payload = await new (0, _chunkSKVMC6K6js.DeeplineClient)().billing.recoverCreditPurchase({
1481
+ const payload = await new (0, _chunkXP7FAYLNjs.DeeplineClient)().billing.recoverCreditPurchase({
1482
1482
  credits,
1483
1483
  orgId: options.orgId,
1484
1484
  idempotencyKey: options.idempotencyKey
1485
1485
  });
1486
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
1486
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
1487
1487
  { ok: true, idempotency_key: options.idempotencyKey, ...payload },
1488
1488
  { json: options.json }
1489
1489
  );
@@ -1503,37 +1503,37 @@ async function handleTargetPlan(planSku, options) {
1503
1503
  return;
1504
1504
  }
1505
1505
  const idempotencyKey = targetBillingIdempotencyKey(options.idempotencyKey);
1506
- const payload = await new (0, _chunkSKVMC6K6js.DeeplineClient)().billing.transitionPlan({
1506
+ const payload = await new (0, _chunkXP7FAYLNjs.DeeplineClient)().billing.transitionPlan({
1507
1507
  action: "start_or_change",
1508
1508
  targetPlanSku: planSku,
1509
1509
  ...options.billingEmail ? { billingEmail: options.billingEmail } : {},
1510
1510
  idempotencyKey
1511
1511
  });
1512
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
1512
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
1513
1513
  { ok: true, idempotency_key: idempotencyKey, ...payload },
1514
1514
  { json: options.json }
1515
1515
  );
1516
1516
  }
1517
1517
  async function handleTargetPlanCancellation(options) {
1518
1518
  const idempotencyKey = targetBillingIdempotencyKey(options.idempotencyKey);
1519
- const payload = await new (0, _chunkSKVMC6K6js.DeeplineClient)().billing.transitionPlan({
1519
+ const payload = await new (0, _chunkXP7FAYLNjs.DeeplineClient)().billing.transitionPlan({
1520
1520
  action: options.undo ? "undo_cancel" : "cancel",
1521
1521
  idempotencyKey
1522
1522
  });
1523
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
1523
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
1524
1524
  { ok: true, idempotency_key: idempotencyKey, ...payload },
1525
1525
  { json: options.json }
1526
1526
  );
1527
1527
  }
1528
1528
  async function handleTargetPortal(options) {
1529
- const payload = await new (0, _chunkSKVMC6K6js.DeeplineClient)().billing.portalSession(
1529
+ const payload = await new (0, _chunkXP7FAYLNjs.DeeplineClient)().billing.portalSession(
1530
1530
  options.billingAddress ? { flow: "customer_update" } : void 0
1531
1531
  );
1532
- if (!options.json && !options.noOpen) _chunkH7YFUC3Jjs.openInBrowser.call(void 0, payload.url);
1533
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0, { ok: true, ...payload }, { json: options.json });
1532
+ if (!options.json && !options.noOpen) _chunkSTLJYWUCjs.openInBrowser.call(void 0, payload.url);
1533
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0, { ok: true, ...payload }, { json: options.json });
1534
1534
  }
1535
1535
  async function handleRedeemCode(code, options) {
1536
- const { http } = _chunkH7YFUC3Jjs.getAuthedHttpClient.call(void 0, );
1536
+ const { http } = _chunkSTLJYWUCjs.getAuthedHttpClient.call(void 0, );
1537
1537
  const payload = await http.post(
1538
1538
  "/api/v2/billing/checkout",
1539
1539
  {
@@ -1541,8 +1541,8 @@ async function handleRedeemCode(code, options) {
1541
1541
  }
1542
1542
  );
1543
1543
  const url = String(payload.url || payload.checkout_url || "");
1544
- if (!options.json && !options.noOpen && url) _chunkH7YFUC3Jjs.openInBrowser.call(void 0, url);
1545
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0,
1544
+ if (!options.json && !options.noOpen && url) _chunkSTLJYWUCjs.openInBrowser.call(void 0, url);
1545
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0,
1546
1546
  {
1547
1547
  ...payload,
1548
1548
  render: {
@@ -1594,20 +1594,22 @@ Examples:
1594
1594
  ).requiredOption(
1595
1595
  "--sandbox-timeout <duration>",
1596
1596
  "Runtime timeout, such as 30m or 2h"
1597
+ ).addOption(
1598
+ new (0, _commander.Option)("--sandbox-size <size>", "Runtime memory profile").choices(["standard", "large", "xlarge"]).default("standard")
1597
1599
  ).option("--quantity <sessions>", "Number of sandbox sessions", "1").option("--json", "Emit the bounded component quotation as JSON").action(
1598
1600
  async (options) => {
1599
1601
  const quantity = Number(options.quantity);
1600
1602
  if (!Number.isSafeInteger(quantity) || quantity <= 0) {
1601
1603
  throw new Error("--quantity must be a positive safe integer.");
1602
1604
  }
1603
- const quote = await new (0, _chunkSKVMC6K6js.DeeplineClient)().billing.quote({
1605
+ const quote = await new (0, _chunkXP7FAYLNjs.DeeplineClient)().billing.quote({
1604
1606
  quantity,
1605
1607
  sandbox_runtime: {
1606
1608
  timeout: options.sandboxTimeout,
1607
- size: "standard"
1609
+ size: options.sandboxSize
1608
1610
  }
1609
1611
  });
1610
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0, quote, {
1612
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0, quote, {
1611
1613
  json: options.json,
1612
1614
  text: `Sandbox session ceiling: ${quote.maximum_credits} Deepline credits (${quote.quantity} session${quote.quantity === 1 ? "" : "s"}).
1613
1615
  ${quote.explanation}
@@ -1852,8 +1854,8 @@ Examples:
1852
1854
  new (0, _commander.Command)("trigger").description(
1853
1855
  "Evaluate capped automatic recharge and resume any pending purchase."
1854
1856
  ).option("--json", "Emit JSON output").action(async (options) => {
1855
- const result = await new (0, _chunkSKVMC6K6js.DeeplineClient)().billing.autoRecharge.trigger();
1856
- _chunkH7YFUC3Jjs.printCommandEnvelope.call(void 0, { ok: true, ...result }, { json: options.json });
1857
+ const result = await new (0, _chunkXP7FAYLNjs.DeeplineClient)().billing.autoRecharge.trigger();
1858
+ _chunkSTLJYWUCjs.printCommandEnvelope.call(void 0, { ok: true, ...result }, { json: options.json });
1857
1859
  })
1858
1860
  );
1859
1861
  billing.command("change-plan").description("Start or change the target billing plan.").argument("<plan_sku>", "payg-v1, builder-v1, growth-v1, or team-v1").option(
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  DeeplineClient
3
- } from "./chunk-CFDQZQE2.mjs";
3
+ } from "./chunk-26CZVDQN.mjs";
4
4
  import {
5
5
  iterateCursorPages,
6
6
  requireBillingIdempotencyKey
7
- } from "./chunk-YK64LQPQ.mjs";
7
+ } from "./chunk-DQZBERDL.mjs";
8
8
  import "./chunk-L2VKAASU.mjs";
9
9
  import "./chunk-NELMCOWK.mjs";
10
10
  import "./chunk-S3A4IXBQ.mjs";
@@ -15,9 +15,9 @@ import {
15
15
  openInBrowser,
16
16
  printCommandEnvelope,
17
17
  shouldEmitJson
18
- } from "./chunk-4NFBYW7X.mjs";
19
- import "./chunk-KQJHIVCE.mjs";
20
- import "./chunk-OMPW5ELS.mjs";
18
+ } from "./chunk-KKWQ24VM.mjs";
19
+ import "./chunk-YK64UZXN.mjs";
20
+ import "./chunk-Z27NSLPC.mjs";
21
21
  import {
22
22
  AuthError,
23
23
  ConfigError
@@ -26,7 +26,7 @@ import "./chunk-DLIRSHV6.mjs";
26
26
  import {
27
27
  DeeplineError
28
28
  } from "./chunk-HBL4PM5Q.mjs";
29
- import "./chunk-JRZW4LWK.mjs";
29
+ import "./chunk-UGYLGT7B.mjs";
30
30
  import "./chunk-WZYKRD7T.mjs";
31
31
  import "./chunk-KRD6H754.mjs";
32
32
 
@@ -1230,7 +1230,7 @@ function formatComputeMinutes(minutes) {
1230
1230
  async function handleIncludedCompute(options) {
1231
1231
  const client = new DeeplineClient();
1232
1232
  const payload = options.enable ? await client.billing.enableIncludedCompute() : await client.billing.includedCompute();
1233
- const plan = `${formatComputeMinutes(payload.plan.included_minutes)} included per month, then ${Math.round(payload.plan.credits_per_minute * 60)} credits/hour`;
1233
+ const plan = `${formatComputeMinutes(payload.plan.included_minutes)} standard-equivalent compute included per month, then ${Math.round(payload.plan.credits_per_minute * 60)} credits/standard hour`;
1234
1234
  printCommandEnvelope(
1235
1235
  {
1236
1236
  ok: true,
@@ -1240,8 +1240,8 @@ async function handleIncludedCompute(options) {
1240
1240
  {
1241
1241
  title: "billing compute",
1242
1242
  lines: payload.status === "on" ? [
1243
- `Included compute: on, ${formatComputeMinutes(payload.included_minutes)} per month, then ${Math.round((payload.credits_per_minute ?? 0) * 60)} credits/hour`,
1244
- `Used: ${formatComputeMinutes(payload.included_minutes_used)} included, ${formatComputeMinutes(payload.minutes_used)} total since ${payload.period_start_at.slice(0, 10)}`
1243
+ `Included compute: on, ${formatComputeMinutes(payload.included_minutes)} standard-equivalent per month, then ${Math.round((payload.credits_per_minute ?? 0) * 60)} credits/standard hour`,
1244
+ `Used: ${formatComputeMinutes(payload.included_minutes_used)} standard-equivalent included, ${formatComputeMinutes(payload.minutes_used)} elapsed since ${payload.period_start_at.slice(0, 10)}`
1245
1245
  ] : payload.status === "off" ? [
1246
1246
  "Included compute: off; Play compute is billed at provider cost.",
1247
1247
  `Used: ${formatComputeMinutes(payload.minutes_used)} since ${payload.period_start_at.slice(0, 10)}`,
@@ -1594,6 +1594,8 @@ Examples:
1594
1594
  ).requiredOption(
1595
1595
  "--sandbox-timeout <duration>",
1596
1596
  "Runtime timeout, such as 30m or 2h"
1597
+ ).addOption(
1598
+ new Option("--sandbox-size <size>", "Runtime memory profile").choices(["standard", "large", "xlarge"]).default("standard")
1597
1599
  ).option("--quantity <sessions>", "Number of sandbox sessions", "1").option("--json", "Emit the bounded component quotation as JSON").action(
1598
1600
  async (options) => {
1599
1601
  const quantity = Number(options.quantity);
@@ -1604,7 +1606,7 @@ Examples:
1604
1606
  quantity,
1605
1607
  sandbox_runtime: {
1606
1608
  timeout: options.sandboxTimeout,
1607
- size: "standard"
1609
+ size: options.sandboxSize
1608
1610
  }
1609
1611
  });
1610
1612
  printCommandEnvelope(quote, {