deepline 0.3.360 → 0.3.361

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 (95) hide show
  1. package/dist/bundling-sources/sdk/src/release.ts +1 -1
  2. package/dist/bundling-sources/shared_libs/observability/scheduled-work-control.ts +38 -0
  3. package/dist/bundling-sources/shared_libs/product-notifications/events.ts +11 -3
  4. package/dist/cli/auth-P5NP573V.js +33 -0
  5. package/dist/cli/{auth-WIK56FTM.mjs → auth-W3XF4IVK.mjs} +4 -4
  6. package/dist/cli/{billing-E2YWHGEG.js → billing-7YLHT6JZ.js} +73 -73
  7. package/dist/cli/{billing-Z5INYWJF.mjs → billing-OYXE7XZW.mjs} +4 -4
  8. package/dist/cli/{chunk-CDIMKTXU.mjs → chunk-2UQLI6U7.mjs} +1 -1
  9. package/dist/cli/{chunk-655HMFLH.mjs → chunk-4X7ABXAA.mjs} +1 -1
  10. package/dist/cli/{chunk-VF7JBQBP.js → chunk-6GWITFPG.js} +224 -224
  11. package/dist/cli/{chunk-DLY2RISW.mjs → chunk-77EFLOIZ.mjs} +2 -2
  12. package/dist/cli/{chunk-24ANFAKD.mjs → chunk-AIGVDBSZ.mjs} +4 -4
  13. package/dist/cli/{chunk-LEV3TVKG.js → chunk-APL6QYTI.js} +15 -15
  14. package/dist/cli/{chunk-W7ZGLLOM.js → chunk-AUDSNAI3.js} +1 -1
  15. package/dist/cli/{chunk-JIECDRJ5.mjs → chunk-BTUYN2YZ.mjs} +2 -2
  16. package/dist/cli/{chunk-J6ITJPCD.js → chunk-BWPUOIHM.js} +8 -8
  17. package/dist/cli/{chunk-S5MGA7JG.mjs → chunk-CNB7MDAS.mjs} +3 -3
  18. package/dist/cli/{chunk-ABGZWLSA.js → chunk-CYN2W7ZU.js} +60 -60
  19. package/dist/cli/{chunk-3KPODTZE.mjs → chunk-FIV4J6SA.mjs} +1 -1
  20. package/dist/cli/{chunk-AH3DNTXN.mjs → chunk-HYSGORGL.mjs} +2 -2
  21. package/dist/cli/{chunk-KRKGZZWZ.mjs → chunk-ISYEWJYS.mjs} +5 -5
  22. package/dist/cli/{chunk-G6C345OF.js → chunk-JUXZATZT.js} +9 -9
  23. package/dist/cli/{chunk-47MAIUPI.js → chunk-MOYOMVFW.js} +4 -4
  24. package/dist/cli/{chunk-LBIP5OGA.js → chunk-N3G3OVL3.js} +50 -50
  25. package/dist/cli/{chunk-3ZTBGOJ3.mjs → chunk-QWT3UDGV.mjs} +2 -2
  26. package/dist/cli/{chunk-TSUDECVA.js → chunk-TC6FXLSY.js} +8 -8
  27. package/dist/cli/{chunk-47GSGU6B.js → chunk-TJHUGJGZ.js} +2 -2
  28. package/dist/cli/{chunk-EYIROXZM.mjs → chunk-TSMUWVJW.mjs} +1 -1
  29. package/dist/cli/{chunk-QKOCMGEF.js → chunk-U7KWVLJV.js} +6 -6
  30. package/dist/cli/{chunk-RXH44EQO.js → chunk-UVMVPGLI.js} +45 -45
  31. package/dist/cli/{chunk-JVELAXQN.js → chunk-V344OI5X.js} +26 -26
  32. package/dist/cli/{chunk-GB76G34M.mjs → chunk-VR5AT72F.mjs} +1 -1
  33. package/dist/cli/{chunk-UOBW6B2A.mjs → chunk-WBADQ5MO.mjs} +6 -6
  34. package/dist/cli/client-7WALWJYV.js +20 -0
  35. package/dist/cli/{client-H4GIBJEM.mjs → client-ZQZVXFS2.mjs} +3 -3
  36. package/dist/cli/{csv-HHPA7FJT.js → csv-E42FNOUK.js} +12 -12
  37. package/dist/cli/{csv-QBPUHPT6.mjs → csv-QVS44KXB.mjs} +3 -3
  38. package/dist/cli/{db-VZDYPTH2.js → db-P6HRY3JB.js} +29 -29
  39. package/dist/cli/{db-JFB6NXGD.mjs → db-XEUTHCF6.mjs} +4 -4
  40. package/dist/cli/{describe-KOTIPFHY.js → describe-OOS6MEQD.js} +15 -15
  41. package/dist/cli/{describe-7YDQ6X4L.mjs → describe-QWKKPM3X.mjs} +8 -8
  42. package/dist/cli/{executions-YQ4UVHK7.js → executions-A4WZCHH4.js} +6 -6
  43. package/dist/cli/{executions-SYDFJPUP.mjs → executions-ZS7VKRZD.mjs} +4 -4
  44. package/dist/cli/{feedback-YOSAFSEC.mjs → feedback-757PQUXC.mjs} +3 -3
  45. package/dist/cli/{feedback-HU4GBNRY.js → feedback-U2PQLPKT.js} +7 -7
  46. package/dist/cli/git-IOVW32ES.js +23 -0
  47. package/dist/cli/{git-TFGQOVE6.mjs → git-L3XO7VI6.mjs} +4 -4
  48. package/dist/cli/index.js +82 -82
  49. package/dist/cli/index.mjs +32 -32
  50. package/dist/cli/{legacy-noops-VWUMF3R6.mjs → legacy-noops-42NM5QWZ.mjs} +4 -4
  51. package/dist/cli/{legacy-noops-IDVIJV7Y.js → legacy-noops-OQ4ALQKK.js} +7 -7
  52. package/dist/cli/{monitors-HNDXF2DV.mjs → monitors-7FDWSLBS.mjs} +4 -4
  53. package/dist/cli/{monitors-GUYQVP3C.js → monitors-JPBAFUVX.js} +85 -85
  54. package/dist/cli/{org-EQZMRW7P.js → org-B4MYZVK4.js} +60 -60
  55. package/dist/cli/{org-BWAZSZBF.mjs → org-C2C2NALX.mjs} +4 -4
  56. package/dist/cli/play-E75ZXHHC.js +153 -0
  57. package/dist/cli/{play-ZPTBDDX7.mjs → play-ZYSGVU24.mjs} +7 -7
  58. package/dist/cli/{providers-Q3UVYCU6.mjs → providers-KKNRURH5.mjs} +4 -4
  59. package/dist/cli/{providers-K236SWCW.js → providers-MLIOET4Z.js} +7 -7
  60. package/dist/cli/{quickstart-REECR6WN.js → quickstart-IY6MFHPJ.js} +5 -5
  61. package/dist/cli/{quickstart-H6W5GM2C.mjs → quickstart-UHEO3K5Q.mjs} +3 -3
  62. package/dist/cli/{search-V75LFUFC.mjs → search-376E7O6G.mjs} +5 -5
  63. package/dist/cli/search-E4BC3JPV.js +26 -0
  64. package/dist/cli/{secrets-O3SO6JKW.mjs → secrets-JW5JDLOC.mjs} +4 -4
  65. package/dist/cli/{secrets-BFGK3D5L.js → secrets-XSE4P5OQ.js} +13 -13
  66. package/dist/cli/{sessions-KNMG5C5R.mjs → sessions-5AXLRZF5.mjs} +4 -4
  67. package/dist/cli/{sessions-AT2ZDTED.js → sessions-ROTWO7MM.js} +5 -5
  68. package/dist/cli/{settings-B65AQVIF.js → settings-FORRN32A.js} +74 -74
  69. package/dist/cli/{settings-MM5LQN5C.mjs → settings-GU32I3JW.mjs} +7 -7
  70. package/dist/cli/{setup-DCJZLL5Q.js → setup-3F4IMDMT.js} +41 -41
  71. package/dist/cli/{setup-XDVYHF5Z.mjs → setup-EXMSW4YQ.mjs} +6 -6
  72. package/dist/cli/skills-DNZKW3ZI.js +28 -0
  73. package/dist/cli/{skills-2QD2ECZC.mjs → skills-HMXGPD43.mjs} +4 -4
  74. package/dist/cli/{tools-PYVK75OA.mjs → tools-6CMEX2JP.mjs} +6 -6
  75. package/dist/cli/tools-U6SVTTKD.js +40 -0
  76. package/dist/cli/update-3IPQQEEQ.js +28 -0
  77. package/dist/cli/{update-QV7SWPRZ.mjs → update-XWJAPODY.mjs} +6 -6
  78. package/dist/cli/{workflow-Q7XOX2UK.js → workflow-B5DI4HZI.js} +15 -15
  79. package/dist/cli/{workflow-3YH3SYG5.mjs → workflow-ORHETMDU.mjs} +5 -5
  80. package/dist/index.js +6 -6
  81. package/dist/index.mjs +3 -3
  82. package/dist/install-integrity.json +74 -74
  83. package/dist/release.d.mts +1 -1
  84. package/dist/release.d.ts +1 -1
  85. package/dist/release.js +2 -2
  86. package/dist/release.mjs +1 -1
  87. package/package.json +1 -1
  88. package/dist/cli/auth-5ZEJNJGA.js +0 -33
  89. package/dist/cli/client-IGY5ULGD.js +0 -20
  90. package/dist/cli/git-AXOGXUBF.js +0 -23
  91. package/dist/cli/play-RXDF5ZEA.js +0 -153
  92. package/dist/cli/search-CICEFEUG.js +0 -26
  93. package/dist/cli/skills-PBCTBNZ4.js +0 -28
  94. package/dist/cli/tools-NIOHIQID.js +0 -40
  95. package/dist/cli/update-2O3MQ4OU.js +0 -28
@@ -200,7 +200,7 @@ export const SDK_RELEASE = {
200
200
  // getters keep their established compatibility behavior.
201
201
  // 0.3.1 deprecated the legacy `deepline enrich` command in favor of Plays.
202
202
  // 0.3.90 is the first deliberately versioned SDK release for API v3.
203
- version: '0.3.360',
203
+ version: '0.3.361',
204
204
  updateSummary:
205
205
  '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.',
206
206
  packageCapabilities: {
@@ -21,9 +21,25 @@ export const SCHEDULED_WORK_CONTROL_ACTIONS = [
21
21
  export type ScheduledWorkControlAction =
22
22
  (typeof SCHEDULED_WORK_CONTROL_ACTIONS)[number];
23
23
 
24
+ export type ScheduledWorkOrganizationTarget = {
25
+ readonly kind: 'organization';
26
+ readonly orgId: string;
27
+ };
28
+
29
+ export type ScheduledWorkPreviewResult = {
30
+ readonly ok: boolean;
31
+ readonly dryRun: true;
32
+ readonly previewMode: 'transactional';
33
+ readonly state: 'unknown' | 'inProgress' | 'success' | 'failed' | 'canceled';
34
+ readonly processed: number;
35
+ readonly isDone: boolean;
36
+ readonly error: string | null;
37
+ };
38
+
24
39
  export type ScheduledWorkControlContext = {
25
40
  readonly jobId: string;
26
41
  readonly environment: string;
42
+ readonly target?: ScheduledWorkOrganizationTarget;
27
43
  readonly requestedByUserId: string;
28
44
  readonly requestedByEmail: string;
29
45
  readonly reason: string;
@@ -42,6 +58,12 @@ export type ScheduledWorkControlConnector = {
42
58
  readonly scheduler: string;
43
59
  readonly jobIds: readonly string[];
44
60
  readonly actions: readonly ScheduledWorkControlAction[];
61
+ readonly targetKind?: 'organization';
62
+ readonly previewActions?: readonly ScheduledWorkControlAction[];
63
+ preview?: (
64
+ context: ScheduledWorkControlContext,
65
+ action: ScheduledWorkControlAction,
66
+ ) => Promise<ScheduledWorkPreviewResult>;
45
67
  /** Registered owners may expose an honest read-only adapter before a safe
46
68
  * mutation exists. These reasons are returned by the same capability API. */
47
69
  readonly unavailableActions?: Partial<
@@ -67,6 +89,8 @@ export type ScheduledWorkControlCapability =
67
89
  readonly action: ScheduledWorkControlAction;
68
90
  readonly connectorId: string;
69
91
  readonly scheduler: string;
92
+ readonly targetKind?: 'organization';
93
+ readonly previewMode?: 'transactional';
70
94
  }
71
95
  | {
72
96
  readonly available: false;
@@ -120,6 +144,16 @@ export class ScheduledWorkControlRegistry {
120
144
  `Scheduled-work connector ${connector.id} must declare a supported action or an explicit unavailable reason.`,
121
145
  );
122
146
  }
147
+ if (
148
+ connector.previewActions?.some(
149
+ (action) => !connector.actions.includes(action),
150
+ ) ||
151
+ (connector.previewActions?.length && !connector.preview)
152
+ ) {
153
+ throw new Error(
154
+ `Scheduled-work connector ${connector.id} has invalid preview actions.`,
155
+ );
156
+ }
123
157
  const jobIds = new Set<string>();
124
158
  for (const jobId of connector.jobIds) {
125
159
  if (!jobId.trim())
@@ -166,6 +200,10 @@ export class ScheduledWorkControlRegistry {
166
200
  action,
167
201
  connectorId: connector.id,
168
202
  scheduler: connector.scheduler,
203
+ ...(connector.targetKind ? { targetKind: connector.targetKind } : {}),
204
+ ...(connector.previewActions?.includes(action)
205
+ ? { previewMode: 'transactional' as const }
206
+ : {}),
169
207
  };
170
208
  }
171
209
  return {
@@ -294,6 +294,13 @@ function requireInternalTargetPath(value: unknown) {
294
294
  }
295
295
  }
296
296
 
297
+ export class ProductNotificationEventExpiredError extends Error {
298
+ constructor() {
299
+ super('Notification event is older than 30 days.');
300
+ this.name = 'ProductNotificationEventExpiredError';
301
+ }
302
+ }
303
+
297
304
  /** Validate the semantic event contract after the producer transaction commits. */
298
305
  export function validateProductNotificationEvent(
299
306
  event: ProductNotificationCanonicalEvent,
@@ -318,9 +325,6 @@ export function validateProductNotificationEvent(
318
325
  ) {
319
326
  throw new Error('Event timestamps must be finite.');
320
327
  }
321
- if (event.occurredAt < now - PRODUCT_NOTIFICATION_MAX_EVENT_AGE_MS) {
322
- throw new Error('Notification event is older than 30 days.');
323
- }
324
328
  if (event.admittedAt > now) {
325
329
  throw new Error('Notification admission time is in the future.');
326
330
  }
@@ -370,6 +374,10 @@ export function validateProductNotificationEvent(
370
374
  ) {
371
375
  throw new Error('Notification event exceeds its byte bound.');
372
376
  }
377
+ // Expiry is terminal queue work only after the rest of the contract is valid.
378
+ if (event.occurredAt < now - PRODUCT_NOTIFICATION_MAX_EVENT_AGE_MS) {
379
+ throw new ProductNotificationEventExpiredError();
380
+ }
373
381
  return definition;
374
382
  }
375
383
 
@@ -0,0 +1,33 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+
11
+
12
+
13
+ var _chunkN3G3OVL3js = require('./chunk-N3G3OVL3.js');
14
+ require('./chunk-U7KWVLJV.js');
15
+ require('./chunk-MOYOMVFW.js');
16
+ require('./chunk-XNYIZMNQ.js');
17
+ require('./chunk-7P5AA3SN.js');
18
+ require('./chunk-AUDSNAI3.js');
19
+ require('./chunk-OG64RBAC.js');
20
+ require('./chunk-COGTRVWW.js');
21
+
22
+
23
+
24
+
25
+
26
+
27
+
28
+
29
+
30
+
31
+
32
+
33
+ exports.EXIT_WORKSPACE_MISMATCH = _chunkN3G3OVL3js.EXIT_WORKSPACE_MISMATCH; exports.authStatusLine = _chunkN3G3OVL3js.authStatusLine; exports.clearPendingClaim = _chunkN3G3OVL3js.clearPendingClaim; exports.clearSatisfiedPendingClaim = _chunkN3G3OVL3js.clearSatisfiedPendingClaim; exports.handleRegister = _chunkN3G3OVL3js.handleRegister; exports.handleStatus = _chunkN3G3OVL3js.handleStatus; exports.handleWait = _chunkN3G3OVL3js.handleWait; exports.readPendingAuthClaim = _chunkN3G3OVL3js.readPendingAuthClaim; exports.registerAuthCommands = _chunkN3G3OVL3js.registerAuthCommands; exports.reportSetupCompleted = _chunkN3G3OVL3js.reportSetupCompleted; exports.resolvePendingAuthClaimForResume = _chunkN3G3OVL3js.resolvePendingAuthClaimForResume;
@@ -10,12 +10,12 @@ import {
10
10
  registerAuthCommands,
11
11
  reportSetupCompleted,
12
12
  resolvePendingAuthClaimForResume
13
- } from "./chunk-JIECDRJ5.mjs";
14
- import "./chunk-EYIROXZM.mjs";
15
- import "./chunk-GB76G34M.mjs";
13
+ } from "./chunk-BTUYN2YZ.mjs";
14
+ import "./chunk-TSMUWVJW.mjs";
15
+ import "./chunk-VR5AT72F.mjs";
16
16
  import "./chunk-DLIRSHV6.mjs";
17
17
  import "./chunk-NXGCO4JB.mjs";
18
- import "./chunk-CDIMKTXU.mjs";
18
+ import "./chunk-2UQLI6U7.mjs";
19
19
  import "./chunk-WZYKRD7T.mjs";
20
20
  import "./chunk-KRD6H754.mjs";
21
21
  export {