deepline 0.3.396 → 0.3.398

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 (118) hide show
  1. package/dist/bundling-sources/sdk/src/release.ts +1 -1
  2. package/dist/bundling-sources/shared_libs/play-runtime/fixture-behavior.ts +2 -2
  3. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd-deadline-reconciliation.ts +50 -26
  4. package/dist/cli/auth-3GA2ASQF.js +40 -0
  5. package/dist/cli/{auth-3LTD62VL.mjs → auth-7ZBPAAZU.mjs} +5 -4
  6. package/dist/cli/{billing-DP7ZAJBO.mjs → billing-QTWEEL27.mjs} +5 -4
  7. package/dist/cli/{billing-PA5OXEM5.js → billing-WHP3YMNQ.js} +76 -75
  8. package/dist/cli/{chunk-I4T4XAA2.mjs → chunk-2QC2T7E3.mjs} +4 -4
  9. package/dist/cli/{chunk-3T4MCB5R.mjs → chunk-52HHMLRM.mjs} +89 -969
  10. package/dist/cli/{chunk-ME6XRFLY.js → chunk-6CBU7W56.js} +15 -15
  11. package/dist/cli/{chunk-LOGGNW4H.mjs → chunk-6DVXLWPB.mjs} +2 -2
  12. package/dist/cli/{chunk-AUYXWELC.mjs → chunk-6HXULNTW.mjs} +2 -2
  13. package/dist/cli/chunk-7DRPTGCK.js +930 -0
  14. package/dist/cli/{chunk-TLQ3FZOC.mjs → chunk-ATDUVJCW.mjs} +3 -3
  15. package/dist/cli/{chunk-23GAA3YO.mjs → chunk-AWQNG55D.mjs} +1 -1
  16. package/dist/cli/{chunk-NSOTASOP.js → chunk-BQR6UN3C.js} +1 -83
  17. package/dist/cli/{chunk-XKZXO7D3.mjs → chunk-CH6EFAJ3.mjs} +1 -1
  18. package/dist/cli/{chunk-KAEZNPUM.js → chunk-CTZJLQ7A.js} +13 -115
  19. package/dist/cli/{chunk-AVHLATII.js → chunk-FDAMQFQ7.js} +50 -50
  20. package/dist/cli/chunk-FIVKWNMT.mjs +210 -0
  21. package/dist/cli/{chunk-7Z66NHUC.js → chunk-G6BP55EP.js} +26 -26
  22. package/dist/cli/{chunk-GNN4MY5X.js → chunk-HFDBZXMV.js} +1 -1
  23. package/dist/cli/{describe-6O2ENKTP.mjs → chunk-HFYQBC2D.mjs} +22 -160
  24. package/dist/cli/chunk-HGFFYVXN.js +210 -0
  25. package/dist/cli/{chunk-5WNJF2T3.mjs → chunk-IHG7UAHD.mjs} +1 -83
  26. package/dist/cli/{chunk-QHGPA362.mjs → chunk-IJU5YQSF.mjs} +6 -108
  27. package/dist/cli/{chunk-772W2SAU.js → chunk-J4WYPANC.js} +8 -8
  28. package/dist/cli/{chunk-V7UP2F4U.js → chunk-JU3PF7WM.js} +21 -121
  29. package/dist/cli/{chunk-MR6XCBQJ.mjs → chunk-LCRQKI7D.mjs} +4 -2
  30. package/dist/cli/chunk-LJ5747UC.mjs +107 -0
  31. package/dist/cli/{chunk-LWERJUKN.js → chunk-NA4T3B62.js} +7 -215
  32. package/dist/cli/{chunk-WQJJNIMQ.js → chunk-NUBIAJI2.js} +11 -9
  33. package/dist/cli/chunk-OSDXE27V.mjs +88 -0
  34. package/dist/cli/{chunk-RMTASUAK.js → chunk-OU2RZYVS.js} +65 -65
  35. package/dist/cli/{chunk-JCN4DHF7.mjs → chunk-OVUFHUMG.mjs} +2 -2
  36. package/dist/cli/chunk-Q2E4E4FJ.js +112 -0
  37. package/dist/cli/{chunk-2VOLOWYZ.js → chunk-Q3FNSWJG.js} +293 -1173
  38. package/dist/cli/{chunk-NHB5YUCS.mjs → chunk-QP2TRM7M.mjs} +1 -1
  39. package/dist/cli/{describe-EFWNECHI.js → chunk-RFG3MRAC.js} +37 -175
  40. package/dist/cli/{chunk-RTO5QZWT.js → chunk-S22ZQZMU.js} +6 -6
  41. package/dist/cli/{chunk-H5KLUGY7.mjs → chunk-TXZVVBQZ.mjs} +1 -209
  42. package/dist/cli/{chunk-DC6LTULT.js → chunk-U46S43LV.js} +2 -2
  43. package/dist/cli/chunk-YHPYUZZX.mjs +112 -0
  44. package/dist/cli/chunk-YHZUZO3U.mjs +930 -0
  45. package/dist/cli/chunk-ZAAKSJAS.js +88 -0
  46. package/dist/cli/{chunk-VE3U3SQC.mjs → chunk-ZJ7HLJRF.mjs} +7 -107
  47. package/dist/cli/chunk-ZM2YPJQJ.js +107 -0
  48. package/dist/cli/{csv-TF576S77.js → csv-NM25BBX7.js} +13 -12
  49. package/dist/cli/{csv-RLRR74RQ.mjs → csv-TSBHKVNU.mjs} +4 -3
  50. package/dist/cli/{db-FDBJUTFO.js → db-GBDNQJF3.js} +30 -29
  51. package/dist/cli/{db-XORGNBIC.mjs → db-JQN6SYLK.mjs} +5 -4
  52. package/dist/cli/describe-ETTGW5LT.mjs +164 -0
  53. package/dist/cli/describe-NVLINP5A.js +164 -0
  54. package/dist/cli/describe-core.d.mts +100 -0
  55. package/dist/cli/describe-core.d.ts +100 -0
  56. package/dist/cli/describe-core.js +18 -0
  57. package/dist/cli/describe-core.mjs +18 -0
  58. package/dist/cli/{executions-YPP7WR77.mjs → executions-6S4KIVEY.mjs} +5 -4
  59. package/dist/cli/{executions-SFYAXPF4.js → executions-IH5JUPIT.js} +7 -6
  60. package/dist/cli/{feedback-5UZFYMGB.js → feedback-ER375ZCB.js} +8 -7
  61. package/dist/cli/{feedback-RBGA5ARU.mjs → feedback-PGOZLNXU.mjs} +4 -3
  62. package/dist/cli/{git-IRSAJEK2.mjs → git-7SBFCM52.mjs} +5 -4
  63. package/dist/cli/git-W6DBPLZO.js +24 -0
  64. package/dist/cli/index.js +93 -91
  65. package/dist/cli/index.mjs +35 -33
  66. package/dist/cli/{legacy-noops-CVAOQY2F.js → legacy-noops-IOEF2SB7.js} +8 -7
  67. package/dist/cli/{legacy-noops-NA7N6ZOU.mjs → legacy-noops-Q4UQIOQN.mjs} +5 -4
  68. package/dist/cli/{monitors-4OMRXCXP.js → monitors-NZ2J4YGD.js} +86 -85
  69. package/dist/cli/{monitors-ILZ2XHYG.mjs → monitors-RZYBFY3Z.mjs} +5 -4
  70. package/dist/cli/{org-YGNJDD2X.js → org-ERUOT4B2.js} +65 -64
  71. package/dist/cli/{org-QDDXAE3J.mjs → org-JLSEM6GG.mjs} +5 -4
  72. package/dist/cli/{play-L535H26U.js → play-7TUO7YNG.js} +251 -247
  73. package/dist/cli/{play-VT6OHB2D.mjs → play-Z73VC7YR.mjs} +19 -15
  74. package/dist/cli/{providers-KG4W5MPK.mjs → providers-7HIII2PW.mjs} +5 -4
  75. package/dist/cli/{providers-GPZ6PQAL.js → providers-ABKBK2C7.js} +8 -7
  76. package/dist/cli/{quickstart-UI27S5LO.js → quickstart-JBG5RTFZ.js} +6 -5
  77. package/dist/cli/{quickstart-2JDGTXIG.mjs → quickstart-QQAOCPCZ.mjs} +4 -3
  78. package/dist/cli/{search-PW3RAUX7.mjs → search-MT2Q64WC.mjs} +7 -5
  79. package/dist/cli/search-QMQBC6SV.js +30 -0
  80. package/dist/cli/{secrets-WFAXOUZE.js → secrets-MEW6LLU5.js} +14 -13
  81. package/dist/cli/{secrets-HNOMK5A2.mjs → secrets-ZFJPIT6B.mjs} +5 -4
  82. package/dist/cli/{sessions-XLX3E5UO.mjs → sessions-F2KVVZ2Z.mjs} +5 -4
  83. package/dist/cli/sessions-TBPU4S6M.js +16 -0
  84. package/dist/cli/{settings-GADAG2UK.js → settings-6VDZ6G5V.js} +75 -74
  85. package/dist/cli/{settings-YNZ4YKCH.mjs → settings-LUDDM7HO.mjs} +8 -7
  86. package/dist/cli/{setup-R5YO7GT6.js → setup-IP2KTFYO.js} +42 -41
  87. package/dist/cli/{setup-PSEHIUXO.mjs → setup-MCEY473G.mjs} +7 -6
  88. package/dist/cli/skills-EVIIEX6N.js +29 -0
  89. package/dist/cli/{skills-LTQBP6CZ.mjs → skills-KMJ3CY4O.mjs} +5 -4
  90. package/dist/cli/tools-KNLHQ3L6.js +39 -0
  91. package/dist/cli/{tools-UAXDWU63.mjs → tools-WY3PLUA7.mjs} +13 -8
  92. package/dist/cli/update-LVADY5YE.js +29 -0
  93. package/dist/cli/{update-SMNIBIMS.mjs → update-XBV52OFM.mjs} +7 -6
  94. package/dist/cli/{workflow-IKGMBGF6.mjs → workflow-5N5HMYDY.mjs} +6 -5
  95. package/dist/cli/{workflow-AOQVZHMD.js → workflow-CO7XWS4D.js} +16 -15
  96. package/dist/{client-DiGl8ska.d.mts → client-D0j-_aaa.d.mts} +1 -1
  97. package/dist/{client-Bgis7F6-.d.ts → client-DflfVyj6.d.ts} +1 -1
  98. package/dist/index.d.mts +2 -2
  99. package/dist/index.d.ts +2 -2
  100. package/dist/index.js +14 -10
  101. package/dist/index.mjs +19 -15
  102. package/dist/install-integrity.json +92 -76
  103. package/dist/plays/play-description.d.mts +1 -1
  104. package/dist/plays/play-description.d.ts +1 -1
  105. package/dist/plays/run-request.d.mts +1 -1
  106. package/dist/plays/run-request.d.ts +1 -1
  107. package/dist/release.d.mts +1 -1
  108. package/dist/release.d.ts +1 -1
  109. package/dist/release.js +2 -2
  110. package/dist/release.mjs +1 -1
  111. package/package.json +6 -1
  112. package/dist/cli/auth-562JPKOM.js +0 -39
  113. package/dist/cli/git-5LDY5ZID.js +0 -23
  114. package/dist/cli/search-MGWROZ33.js +0 -28
  115. package/dist/cli/sessions-366KROUA.js +0 -15
  116. package/dist/cli/skills-JF2LPEGM.js +0 -28
  117. package/dist/cli/tools-CP2PEFRN.js +0 -34
  118. package/dist/cli/update-HZHZOU6C.js +0 -28
@@ -202,7 +202,7 @@ export const SDK_RELEASE = {
202
202
  // getters keep their established compatibility behavior.
203
203
  // 0.3.1 deprecated the legacy `deepline enrich` command in favor of Plays.
204
204
  // 0.3.90 is the first deliberately versioned SDK release for API v3.
205
- version: '0.3.396',
205
+ version: '0.3.398',
206
206
  updateSummary:
207
207
  'Play grep now returns concise results with the matched fields and terms. Automatic CLI updates are enabled by default; use `deepline settings autoupdate off` to opt out, `deepline settings autoupdate on` to re-enable updates, or `deepline settings autoupdate pin <version>` to hold an exact release.',
208
208
  packageCapabilities: {
@@ -327,7 +327,7 @@ export function validateFixtureBehavior(
327
327
  }
328
328
  if (
329
329
  error.failuresBeforeSuccess !== undefined &&
330
- (error.status !== 429 ||
330
+ (![429, 500, 502, 503, 504].includes(error.status) ||
331
331
  typeof error.failuresBeforeSuccess !== 'number' ||
332
332
  !Number.isSafeInteger(error.failuresBeforeSuccess) ||
333
333
  error.failuresBeforeSuccess < 1 ||
@@ -337,7 +337,7 @@ export function validateFixtureBehavior(
337
337
  ok: false,
338
338
  error:
339
339
  `fixtureBehavior.responseSamples[${index}].httpError.failuresBeforeSuccess ` +
340
- 'requires status 429 and an integer from 1 through 20.',
340
+ 'requires status 429, 500, 502, 503, or 504 and an integer from 1 through 20.',
341
341
  };
342
342
  }
343
343
  httpError = {
@@ -105,32 +105,25 @@ async function finalizeCancelledRunAfterCleanup(input: {
105
105
  }
106
106
  }
107
107
 
108
- /** Put legacy manual and deadline cancellations into the same durable queue
109
- * as caller requests. A queued task is excluded from later scans, so one
110
- * pending sandbox cannot hide other cancelled tasks behind the batch limit. */
111
- export async function reconcileAbsurdRuntimeCancellations(input: {
112
- client: PostgresSchedulerQueryClient;
108
+ /** `runs.absurd_task_id` is text; the task table's key is a uuid. Joining on
109
+ * `task.task_id::text` hides that key from the planner, so a low active-run
110
+ * estimate turns every sweep into one full task-table scan per active run.
111
+ * Casting the run side keeps the join on the primary key; the CASE (whose
112
+ * branches Postgres evaluates in order) maps anything that is not a canonical
113
+ * lowercase uuid to NULL instead of failing the sweep. Only canonical text ever
114
+ * equalled `task_id::text`, so the matched rows are unchanged. */
115
+ const ABSURD_TASK_ID_UUID_PATTERN =
116
+ '^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$';
117
+
118
+ /** The sweep statement, exported so tests can inspect its plan. Parameters:
119
+ * $1 task name, $2 batch limit. */
120
+ export function absurdRuntimeCancellationSweepSql(input: {
113
121
  queue: string;
114
- schedulerOptions?: Pick<PostgresSchedulerOptions, 'schema'>;
115
- limit?: number;
116
- }): Promise<{ queued: number }> {
117
- const requestedLimit = Math.floor(
118
- input.limit ?? ABSURD_CANCELLED_DEADLINE_RECONCILE_LIMIT,
119
- );
120
- const limit = Number.isFinite(requestedLimit)
121
- ? Math.max(
122
- 1,
123
- Math.min(ABSURD_CANCELLED_DEADLINE_RECONCILE_LIMIT, requestedLimit),
124
- )
125
- : ABSURD_CANCELLED_DEADLINE_RECONCILE_LIMIT;
122
+ schedulerSchema: string;
123
+ }): string {
126
124
  const taskTable = quoteAbsurdTable(`t_${input.queue}`);
127
- const schedulerSchema = quoteAbsurdTable(
128
- input.schedulerOptions?.schema?.trim() ||
129
- resolveRuntimeSchedulerSchemaEnv() ||
130
- 'runtime_scheduler',
131
- );
132
- const queued = await input.client.query<{ key: string }>(
133
- `
125
+ const schedulerSchema = quoteAbsurdTable(input.schedulerSchema);
126
+ return `
134
127
  INSERT INTO ${schedulerSchema}.control (key, value)
135
128
  SELECT 'runtime_cancel:' || run.run_id,
136
129
  jsonb_build_object(
@@ -146,7 +139,10 @@ export async function reconcileAbsurdRuntimeCancellations(input: {
146
139
  )
147
140
  FROM ${schedulerSchema}.runs AS run
148
141
  JOIN absurd.${taskTable} AS task
149
- ON task.task_id::text = run.absurd_task_id
142
+ ON task.task_id = CASE
143
+ WHEN run.absurd_task_id ~ '${ABSURD_TASK_ID_UUID_PATTERN}'
144
+ THEN run.absurd_task_id::uuid
145
+ END
150
146
  AND run.status IN ('queued', 'running', 'waiting')
151
147
  WHERE task.state = 'cancelled'
152
148
  AND task.task_name = $1
@@ -166,7 +162,35 @@ export async function reconcileAbsurdRuntimeCancellations(input: {
166
162
  LIMIT $2
167
163
  ON CONFLICT (key) DO NOTHING
168
164
  RETURNING key
169
- `,
165
+ `;
166
+ }
167
+
168
+ /** Put legacy manual and deadline cancellations into the same durable queue
169
+ * as caller requests. A queued task is excluded from later scans, so one
170
+ * pending sandbox cannot hide other cancelled tasks behind the batch limit. */
171
+ export async function reconcileAbsurdRuntimeCancellations(input: {
172
+ client: PostgresSchedulerQueryClient;
173
+ queue: string;
174
+ schedulerOptions?: Pick<PostgresSchedulerOptions, 'schema'>;
175
+ limit?: number;
176
+ }): Promise<{ queued: number }> {
177
+ const requestedLimit = Math.floor(
178
+ input.limit ?? ABSURD_CANCELLED_DEADLINE_RECONCILE_LIMIT,
179
+ );
180
+ const limit = Number.isFinite(requestedLimit)
181
+ ? Math.max(
182
+ 1,
183
+ Math.min(ABSURD_CANCELLED_DEADLINE_RECONCILE_LIMIT, requestedLimit),
184
+ )
185
+ : ABSURD_CANCELLED_DEADLINE_RECONCILE_LIMIT;
186
+ const queued = await input.client.query<{ key: string }>(
187
+ absurdRuntimeCancellationSweepSql({
188
+ queue: input.queue,
189
+ schedulerSchema:
190
+ input.schedulerOptions?.schema?.trim() ||
191
+ resolveRuntimeSchedulerSchemaEnv() ||
192
+ 'runtime_scheduler',
193
+ }),
170
194
  [ABSURD_PLAY_RUN_TASK, limit],
171
195
  );
172
196
  return { queued: queued.rows.length };
@@ -0,0 +1,40 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+
11
+
12
+
13
+
14
+
15
+
16
+ var _chunkFDAMQFQ7js = require('./chunk-FDAMQFQ7.js');
17
+ require('./chunk-S22ZQZMU.js');
18
+ require('./chunk-JU3PF7WM.js');
19
+ require('./chunk-Q2E4E4FJ.js');
20
+ require('./chunk-XNYIZMNQ.js');
21
+ require('./chunk-7P5AA3SN.js');
22
+ require('./chunk-HFDBZXMV.js');
23
+ require('./chunk-OG64RBAC.js');
24
+ require('./chunk-COGTRVWW.js');
25
+
26
+
27
+
28
+
29
+
30
+
31
+
32
+
33
+
34
+
35
+
36
+
37
+
38
+
39
+
40
+ exports.EXIT_WORKSPACE_MISMATCH = _chunkFDAMQFQ7js.EXIT_WORKSPACE_MISMATCH; exports.authStatusLine = _chunkFDAMQFQ7js.authStatusLine; exports.clearPendingClaim = _chunkFDAMQFQ7js.clearPendingClaim; exports.clearSatisfiedPendingClaim = _chunkFDAMQFQ7js.clearSatisfiedPendingClaim; exports.handleRegister = _chunkFDAMQFQ7js.handleRegister; exports.handleStatus = _chunkFDAMQFQ7js.handleStatus; exports.handleWait = _chunkFDAMQFQ7js.handleWait; exports.httpJson = _chunkFDAMQFQ7js.httpJson; exports.readPendingAuthClaim = _chunkFDAMQFQ7js.readPendingAuthClaim; exports.readStatusBanner = _chunkFDAMQFQ7js.readStatusBanner; exports.registerAuthCommands = _chunkFDAMQFQ7js.registerAuthCommands; exports.reportSetupCompleted = _chunkFDAMQFQ7js.reportSetupCompleted; exports.resolvePendingAuthClaimForResume = _chunkFDAMQFQ7js.resolvePendingAuthClaimForResume; exports.statusBannerLine = _chunkFDAMQFQ7js.statusBannerLine;
@@ -13,12 +13,13 @@ import {
13
13
  reportSetupCompleted,
14
14
  resolvePendingAuthClaimForResume,
15
15
  statusBannerLine
16
- } from "./chunk-JCN4DHF7.mjs";
17
- import "./chunk-XKZXO7D3.mjs";
18
- import "./chunk-VE3U3SQC.mjs";
16
+ } from "./chunk-OVUFHUMG.mjs";
17
+ import "./chunk-CH6EFAJ3.mjs";
18
+ import "./chunk-ZJ7HLJRF.mjs";
19
+ import "./chunk-YHPYUZZX.mjs";
19
20
  import "./chunk-DLIRSHV6.mjs";
20
21
  import "./chunk-NXGCO4JB.mjs";
21
- import "./chunk-NHB5YUCS.mjs";
22
+ import "./chunk-QP2TRM7M.mjs";
22
23
  import "./chunk-WZYKRD7T.mjs";
23
24
  import "./chunk-KRD6H754.mjs";
24
25
  export {
@@ -2,7 +2,7 @@ import {
2
2
  DeeplineClient,
3
3
  iterateCursorPages,
4
4
  requireBillingIdempotencyKey
5
- } from "./chunk-MR6XCBQJ.mjs";
5
+ } from "./chunk-LCRQKI7D.mjs";
6
6
  import "./chunk-6IKARAYD.mjs";
7
7
  import "./chunk-JI2B4RZP.mjs";
8
8
  import "./chunk-EIMG75BT.mjs";
@@ -13,16 +13,17 @@ import {
13
13
  openInBrowser,
14
14
  printCommandEnvelope,
15
15
  shouldEmitJson
16
- } from "./chunk-XKZXO7D3.mjs";
16
+ } from "./chunk-CH6EFAJ3.mjs";
17
+ import "./chunk-ZJ7HLJRF.mjs";
17
18
  import {
18
19
  AuthError,
19
20
  ConfigError
20
- } from "./chunk-VE3U3SQC.mjs";
21
+ } from "./chunk-YHPYUZZX.mjs";
21
22
  import "./chunk-DLIRSHV6.mjs";
22
23
  import {
23
24
  DeeplineError
24
25
  } from "./chunk-NXGCO4JB.mjs";
25
- import "./chunk-NHB5YUCS.mjs";
26
+ import "./chunk-QP2TRM7M.mjs";
26
27
  import "./chunk-WZYKRD7T.mjs";
27
28
  import "./chunk-KRD6H754.mjs";
28
29