deepline 0.3.174 → 0.3.176
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.
- package/dist/bundling-sources/sdk/src/client.ts +3 -0
- package/dist/bundling-sources/sdk/src/release.ts +1 -1
- package/dist/bundling-sources/shared_libs/integration-contracts/index.ts +1 -0
- package/dist/bundling-sources/shared_libs/integration-contracts/waterfall/execution-policy.ts +18 -0
- package/dist/bundling-sources/shared_libs/play-data-plane/index.ts +1 -0
- package/dist/bundling-sources/shared_libs/play-data-plane/runtime-sheet-orm.ts +489 -0
- package/dist/bundling-sources/shared_libs/play-data-plane/runtime-sheet-storage-contract.ts +4 -13
- package/dist/bundling-sources/shared_libs/play-runtime/runtime-api.ts +143 -110
- package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd.ts +73 -151
- package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/postgres.ts +113 -7
- package/dist/cli/index.js +13 -1
- package/dist/cli/index.mjs +13 -1
- package/dist/index.js +13 -1
- package/dist/index.mjs +13 -1
- package/dist/install-integrity.json +2 -0
- package/dist/release.d.mts +1 -1
- package/dist/release.d.ts +1 -1
- package/dist/release.js +1 -1
- package/dist/release.mjs +1 -1
- package/package.json +1 -1
|
@@ -11852,15 +11852,26 @@ export async function cancelPostgresSchedulerRun(
|
|
|
11852
11852
|
absurdTaskId: string;
|
|
11853
11853
|
engineTaskTable: string | null;
|
|
11854
11854
|
};
|
|
11855
|
+
/**
|
|
11856
|
+
* Optional control-plane ownership for the pending causal head. The
|
|
11857
|
+
* caller resumes this same lease after commit to make cancellation visible
|
|
11858
|
+
* synchronously in the canonical Run Ledger.
|
|
11859
|
+
*/
|
|
11860
|
+
outboxLease?: { leaseOwner: string; leaseSeconds: number };
|
|
11855
11861
|
},
|
|
11856
11862
|
options?: Pick<PostgresSchedulerOptions, 'schema'>,
|
|
11857
11863
|
): Promise<boolean> {
|
|
11858
11864
|
const reason = input.reason?.trim() || 'Cancelled.';
|
|
11865
|
+
const outboxLeaseOwner = input.outboxLease?.leaseOwner.trim() || null;
|
|
11866
|
+
const outboxLeaseSeconds = Math.max(
|
|
11867
|
+
5,
|
|
11868
|
+
Math.min(300, Math.floor(input.outboxLease?.leaseSeconds ?? 15)),
|
|
11869
|
+
);
|
|
11859
11870
|
const strandedFence = input.onlyIfStrandedPreExecution;
|
|
11860
11871
|
const strandedEligibility = strandedFence
|
|
11861
11872
|
? `AND target.status = 'queued'
|
|
11862
|
-
AND target.launch_json->>'absurdReleaseId' = $
|
|
11863
|
-
AND target.absurd_task_id = $
|
|
11873
|
+
AND target.launch_json->>'absurdReleaseId' = $8
|
|
11874
|
+
AND target.absurd_task_id = $9
|
|
11864
11875
|
AND NOT EXISTS (
|
|
11865
11876
|
SELECT 1 FROM ${tableName('attempts', options)} AS attempt
|
|
11866
11877
|
WHERE attempt.run_id = target.run_id
|
|
@@ -11991,16 +12002,46 @@ export async function cancelPostgresSchedulerRun(
|
|
|
11991
12002
|
AND NULLIF(resource->>'sandboxId', '') IS NOT NULL
|
|
11992
12003
|
ON CONFLICT (provider, sandbox_id, routing_domain_key) DO NOTHING
|
|
11993
12004
|
),
|
|
12005
|
+
cancellation_outbox_head AS MATERIALIZED (
|
|
12006
|
+
SELECT pending.event_id
|
|
12007
|
+
FROM ${tableName('outbox', options)} AS pending
|
|
12008
|
+
JOIN cancelled_run ON cancelled_run.run_id = pending.run_id
|
|
12009
|
+
WHERE pending.delivered_at IS NULL
|
|
12010
|
+
AND pending.failed_at IS NULL
|
|
12011
|
+
ORDER BY ${runLedgerOrderSql('pending')}
|
|
12012
|
+
LIMIT 1
|
|
12013
|
+
),
|
|
12014
|
+
cancellation_outbox_lease AS (
|
|
12015
|
+
UPDATE ${tableName('outbox', options)} AS pending
|
|
12016
|
+
SET lease_owner = $6::text,
|
|
12017
|
+
lease_expires_at = now() + make_interval(secs => $7::integer),
|
|
12018
|
+
next_attempt_at = NULL
|
|
12019
|
+
WHERE $6::text IS NOT NULL
|
|
12020
|
+
AND pending.event_id IN (SELECT event_id FROM cancellation_outbox_head)
|
|
12021
|
+
RETURNING pending.event_id
|
|
12022
|
+
),
|
|
11994
12023
|
terminal_outbox AS (
|
|
11995
12024
|
INSERT INTO ${tableName('outbox', options)} (
|
|
11996
|
-
event_id, run_id, event_type, payload_json, created_at
|
|
12025
|
+
event_id, run_id, event_type, payload_json, created_at,
|
|
12026
|
+
next_attempt_at, lease_owner, lease_expires_at
|
|
11997
12027
|
)
|
|
11998
12028
|
SELECT
|
|
11999
12029
|
'run-terminal:' || run_id,
|
|
12000
12030
|
cancelled_run.run_id,
|
|
12001
12031
|
'run.cancelled',
|
|
12002
12032
|
jsonb_build_object('error', $5::text),
|
|
12003
|
-
${causalOutboxCreatedAt('cancelled_run.run_id', options)}
|
|
12033
|
+
${causalOutboxCreatedAt('cancelled_run.run_id', options)},
|
|
12034
|
+
NULL,
|
|
12035
|
+
CASE
|
|
12036
|
+
WHEN EXISTS (SELECT 1 FROM cancellation_outbox_head) THEN NULL
|
|
12037
|
+
ELSE $6::text
|
|
12038
|
+
END,
|
|
12039
|
+
CASE
|
|
12040
|
+
WHEN $6::text IS NULL
|
|
12041
|
+
OR EXISTS (SELECT 1 FROM cancellation_outbox_head)
|
|
12042
|
+
THEN NULL
|
|
12043
|
+
ELSE now() + make_interval(secs => $7::integer)
|
|
12044
|
+
END
|
|
12004
12045
|
FROM cancelled_run
|
|
12005
12046
|
ON CONFLICT (event_id) DO NOTHING
|
|
12006
12047
|
),
|
|
@@ -12017,11 +12058,39 @@ export async function cancelPostgresSchedulerRun(
|
|
|
12017
12058
|
postgresSchedulerNotifyChannel('terminal', options),
|
|
12018
12059
|
JSON.stringify({ runId: input.runId, status: 'cancelled' }),
|
|
12019
12060
|
reason,
|
|
12061
|
+
outboxLeaseOwner,
|
|
12062
|
+
outboxLeaseSeconds,
|
|
12020
12063
|
...(strandedFence
|
|
12021
12064
|
? [strandedFence.releaseId, strandedFence.absurdTaskId]
|
|
12022
12065
|
: []),
|
|
12023
12066
|
],
|
|
12024
12067
|
);
|
|
12068
|
+
if (cancelled.rows.length === 0 && outboxLeaseOwner) {
|
|
12069
|
+
// A competing terminal writer may win while this UPDATE waits on the run
|
|
12070
|
+
// row. The next statement gets a fresh READ COMMITTED snapshot. Adopt its
|
|
12071
|
+
// pending causal prefix before this enclosing cancellation transaction
|
|
12072
|
+
// commits so the request can still project the winning terminal state
|
|
12073
|
+
// without waiting for a background lease.
|
|
12074
|
+
await client.query(
|
|
12075
|
+
`UPDATE ${tableName('outbox', options)} AS pending
|
|
12076
|
+
SET lease_owner = $2,
|
|
12077
|
+
lease_expires_at = now() + make_interval(secs => $3::integer),
|
|
12078
|
+
next_attempt_at = NULL
|
|
12079
|
+
WHERE pending.event_id = (
|
|
12080
|
+
SELECT candidate.event_id
|
|
12081
|
+
FROM ${tableName('outbox', options)} AS candidate
|
|
12082
|
+
JOIN ${tableName('runs', options)} AS terminal_run
|
|
12083
|
+
ON terminal_run.run_id = candidate.run_id
|
|
12084
|
+
WHERE candidate.run_id = $1
|
|
12085
|
+
AND candidate.delivered_at IS NULL
|
|
12086
|
+
AND candidate.failed_at IS NULL
|
|
12087
|
+
AND terminal_run.status IN ('completed', 'failed', 'cancelled')
|
|
12088
|
+
ORDER BY ${runLedgerOrderSql('candidate')}
|
|
12089
|
+
LIMIT 1
|
|
12090
|
+
)`,
|
|
12091
|
+
[input.runId, outboxLeaseOwner, outboxLeaseSeconds],
|
|
12092
|
+
);
|
|
12093
|
+
}
|
|
12025
12094
|
return cancelled.rows.length > 0;
|
|
12026
12095
|
}
|
|
12027
12096
|
|
|
@@ -15369,7 +15438,12 @@ export async function readPendingPostgresSchedulerOutboxEvents(
|
|
|
15369
15438
|
AND candidate.failed_at IS NULL
|
|
15370
15439
|
AND coalesce(candidate.next_attempt_at, candidate.created_at) <= now()
|
|
15371
15440
|
AND ($2::text IS NULL OR candidate.run_id = $2)
|
|
15372
|
-
AND (
|
|
15441
|
+
AND (
|
|
15442
|
+
$3::text IS NULL
|
|
15443
|
+
OR candidate.lease_owner = $3::text
|
|
15444
|
+
OR candidate.lease_expires_at IS NULL
|
|
15445
|
+
OR candidate.lease_expires_at <= now()
|
|
15446
|
+
)
|
|
15373
15447
|
-- A producer transaction may commit an older timestamp after a
|
|
15374
15448
|
-- delivery has started. Ownership covers the run, not just the
|
|
15375
15449
|
-- current oldest row: that late predecessor must wait as well.
|
|
@@ -15379,6 +15453,7 @@ export async function readPendingPostgresSchedulerOutboxEvents(
|
|
|
15379
15453
|
AND active.delivered_at IS NULL
|
|
15380
15454
|
AND active.lease_owner IS NOT NULL
|
|
15381
15455
|
AND active.lease_expires_at > now()
|
|
15456
|
+
AND active.lease_owner IS DISTINCT FROM $3::text
|
|
15382
15457
|
)
|
|
15383
15458
|
-- Competing projectors acquire one run through its oldest event.
|
|
15384
15459
|
-- Locking this head prevents another projector from splitting the
|
|
@@ -15417,7 +15492,12 @@ export async function readPendingPostgresSchedulerOutboxEvents(
|
|
|
15417
15492
|
-- its receipt stable independently of the recovery caller's limit.
|
|
15418
15493
|
AND (outbox.event_type <> 'run.events' OR outbox.event_id = head.event_id)
|
|
15419
15494
|
AND coalesce(outbox.next_attempt_at, outbox.created_at) <= now()
|
|
15420
|
-
AND (
|
|
15495
|
+
AND (
|
|
15496
|
+
$3::text IS NULL
|
|
15497
|
+
OR outbox.lease_owner = $3::text
|
|
15498
|
+
OR outbox.lease_expires_at IS NULL
|
|
15499
|
+
OR outbox.lease_expires_at <= now()
|
|
15500
|
+
)
|
|
15421
15501
|
-- A started terminal batch is deliberately stable across a retry.
|
|
15422
15502
|
-- Do not enlarge it with a later event before acknowledgement: the
|
|
15423
15503
|
-- runtime can replay the old idempotent append, but it cannot prove
|
|
@@ -15460,6 +15540,7 @@ export async function readPendingPostgresSchedulerOutboxEvents(
|
|
|
15460
15540
|
$3::text IS NOT NULL
|
|
15461
15541
|
AND predecessor.lease_expires_at IS NOT NULL
|
|
15462
15542
|
AND predecessor.lease_expires_at > now()
|
|
15543
|
+
AND predecessor.lease_owner IS DISTINCT FROM $3::text
|
|
15463
15544
|
)
|
|
15464
15545
|
)
|
|
15465
15546
|
)
|
|
@@ -16348,6 +16429,30 @@ export async function listPostgresSchedulerOutboxMaterializationPlans(
|
|
|
16348
16429
|
*/
|
|
16349
16430
|
export type RunLedgerOutboxTokenAuthority = 'local_mint' | 'gateway';
|
|
16350
16431
|
|
|
16432
|
+
const POSTGRES_SCHEDULER_CANCELLATION_OUTBOX_LEASE_SECONDS = 15;
|
|
16433
|
+
|
|
16434
|
+
/**
|
|
16435
|
+
* Stable lease identity shared by the atomic scheduler cancellation and the
|
|
16436
|
+
* app-side terminal projector. Cancellation can therefore fence a stale or
|
|
16437
|
+
* slow background delivery inside the terminal transaction, then resume from
|
|
16438
|
+
* that exact head immediately without waiting for its old lease to age.
|
|
16439
|
+
*/
|
|
16440
|
+
export function postgresSchedulerCancellationOutboxLease(runId: string): {
|
|
16441
|
+
leaseOwner: string;
|
|
16442
|
+
leaseSeconds: number;
|
|
16443
|
+
} {
|
|
16444
|
+
const normalizedRunId = runId.trim();
|
|
16445
|
+
if (!normalizedRunId) {
|
|
16446
|
+
throw new Error('Cancellation outbox lease requires a run id.');
|
|
16447
|
+
}
|
|
16448
|
+
return {
|
|
16449
|
+
leaseOwner: `run-ledger-cancel:${createHash('sha256')
|
|
16450
|
+
.update(normalizedRunId)
|
|
16451
|
+
.digest('hex')}`,
|
|
16452
|
+
leaseSeconds: POSTGRES_SCHEDULER_CANCELLATION_OUTBOX_LEASE_SECONDS,
|
|
16453
|
+
};
|
|
16454
|
+
}
|
|
16455
|
+
|
|
16351
16456
|
export type RunLedgerOutboxDispatchInput = {
|
|
16352
16457
|
runtimeApi?: WorkerRuntimeApiContext | null;
|
|
16353
16458
|
limit?: number;
|
|
@@ -16564,10 +16669,11 @@ export async function dispatchRunLedgerOutboxToLedgerBatchOnceWithClientScope(
|
|
|
16564
16669
|
AND active.delivered_at IS NULL
|
|
16565
16670
|
AND active.lease_owner IS NOT NULL
|
|
16566
16671
|
AND active.lease_expires_at > now()
|
|
16672
|
+
AND active.lease_owner IS DISTINCT FROM $2::text
|
|
16567
16673
|
)
|
|
16568
16674
|
FOR UPDATE OF runs SKIP LOCKED
|
|
16569
16675
|
`,
|
|
16570
|
-
[targetRunId],
|
|
16676
|
+
[targetRunId, leaseOwner],
|
|
16571
16677
|
)
|
|
16572
16678
|
: await client.query<{ run_id: string }>(`
|
|
16573
16679
|
WITH heads AS MATERIALIZED (
|
package/dist/cli/index.js
CHANGED
|
@@ -3051,7 +3051,7 @@ var SDK_RELEASE = {
|
|
|
3051
3051
|
// getters keep their established compatibility behavior.
|
|
3052
3052
|
// 0.3.1 deprecated the legacy `deepline enrich` command in favor of Plays.
|
|
3053
3053
|
// 0.3.90 is the first deliberately versioned SDK release for API v3.
|
|
3054
|
-
version: "0.3.
|
|
3054
|
+
version: "0.3.176",
|
|
3055
3055
|
updateSummary: "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.",
|
|
3056
3056
|
packageCapabilities: {
|
|
3057
3057
|
updatePreferences: 1
|
|
@@ -6425,6 +6425,16 @@ function resolveTheirstackClientTimeoutMs(endpointId, payload) {
|
|
|
6425
6425
|
return usesExtendedTheirstackJobSearchBudget(endpointId, payload) ? THEIRSTACK_SLOW_JOB_SEARCH_CLIENT_TIMEOUT_MS : null;
|
|
6426
6426
|
}
|
|
6427
6427
|
|
|
6428
|
+
// ../integration-contracts/waterfall/execution-policy.ts
|
|
6429
|
+
var WATERFALL_PROSPECTOR_CLIENT_TIMEOUT_MS = 18e4;
|
|
6430
|
+
var WATERFALL_PROSPECTOR_LAUNCHER_TOOL_IDS = /* @__PURE__ */ new Set([
|
|
6431
|
+
"prospector",
|
|
6432
|
+
"deepline_native_prospector"
|
|
6433
|
+
]);
|
|
6434
|
+
function resolveWaterfallClientTimeoutMs(toolId) {
|
|
6435
|
+
return WATERFALL_PROSPECTOR_LAUNCHER_TOOL_IDS.has(toolId.trim().toLowerCase()) ? WATERFALL_PROSPECTOR_CLIENT_TIMEOUT_MS : null;
|
|
6436
|
+
}
|
|
6437
|
+
|
|
6428
6438
|
// ../integration-contracts/bettercontact/execution-policy.ts
|
|
6429
6439
|
var BETTERCONTACT_LAUNCHER_CLIENT_TIMEOUT_MS = 12e4;
|
|
6430
6440
|
var BETTERCONTACT_LAUNCHER_TOOL_IDS = /* @__PURE__ */ new Set([
|
|
@@ -6835,6 +6845,8 @@ function resolveToolExecuteTimeoutMs(toolId, input2) {
|
|
|
6835
6845
|
input2
|
|
6836
6846
|
);
|
|
6837
6847
|
if (theirstackTimeoutMs !== null) return theirstackTimeoutMs;
|
|
6848
|
+
const waterfallTimeoutMs = resolveWaterfallClientTimeoutMs(normalized);
|
|
6849
|
+
if (waterfallTimeoutMs !== null) return waterfallTimeoutMs;
|
|
6838
6850
|
if (usesExtendedBetterContactLauncherBudget(normalized)) {
|
|
6839
6851
|
return BETTERCONTACT_LAUNCHER_CLIENT_TIMEOUT_MS;
|
|
6840
6852
|
}
|
package/dist/cli/index.mjs
CHANGED
|
@@ -3046,7 +3046,7 @@ var SDK_RELEASE = {
|
|
|
3046
3046
|
// getters keep their established compatibility behavior.
|
|
3047
3047
|
// 0.3.1 deprecated the legacy `deepline enrich` command in favor of Plays.
|
|
3048
3048
|
// 0.3.90 is the first deliberately versioned SDK release for API v3.
|
|
3049
|
-
version: "0.3.
|
|
3049
|
+
version: "0.3.176",
|
|
3050
3050
|
updateSummary: "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.",
|
|
3051
3051
|
packageCapabilities: {
|
|
3052
3052
|
updatePreferences: 1
|
|
@@ -6420,6 +6420,16 @@ function resolveTheirstackClientTimeoutMs(endpointId, payload) {
|
|
|
6420
6420
|
return usesExtendedTheirstackJobSearchBudget(endpointId, payload) ? THEIRSTACK_SLOW_JOB_SEARCH_CLIENT_TIMEOUT_MS : null;
|
|
6421
6421
|
}
|
|
6422
6422
|
|
|
6423
|
+
// ../integration-contracts/waterfall/execution-policy.ts
|
|
6424
|
+
var WATERFALL_PROSPECTOR_CLIENT_TIMEOUT_MS = 18e4;
|
|
6425
|
+
var WATERFALL_PROSPECTOR_LAUNCHER_TOOL_IDS = /* @__PURE__ */ new Set([
|
|
6426
|
+
"prospector",
|
|
6427
|
+
"deepline_native_prospector"
|
|
6428
|
+
]);
|
|
6429
|
+
function resolveWaterfallClientTimeoutMs(toolId) {
|
|
6430
|
+
return WATERFALL_PROSPECTOR_LAUNCHER_TOOL_IDS.has(toolId.trim().toLowerCase()) ? WATERFALL_PROSPECTOR_CLIENT_TIMEOUT_MS : null;
|
|
6431
|
+
}
|
|
6432
|
+
|
|
6423
6433
|
// ../integration-contracts/bettercontact/execution-policy.ts
|
|
6424
6434
|
var BETTERCONTACT_LAUNCHER_CLIENT_TIMEOUT_MS = 12e4;
|
|
6425
6435
|
var BETTERCONTACT_LAUNCHER_TOOL_IDS = /* @__PURE__ */ new Set([
|
|
@@ -6830,6 +6840,8 @@ function resolveToolExecuteTimeoutMs(toolId, input2) {
|
|
|
6830
6840
|
input2
|
|
6831
6841
|
);
|
|
6832
6842
|
if (theirstackTimeoutMs !== null) return theirstackTimeoutMs;
|
|
6843
|
+
const waterfallTimeoutMs = resolveWaterfallClientTimeoutMs(normalized);
|
|
6844
|
+
if (waterfallTimeoutMs !== null) return waterfallTimeoutMs;
|
|
6833
6845
|
if (usesExtendedBetterContactLauncherBudget(normalized)) {
|
|
6834
6846
|
return BETTERCONTACT_LAUNCHER_CLIENT_TIMEOUT_MS;
|
|
6835
6847
|
}
|
package/dist/index.js
CHANGED
|
@@ -864,7 +864,7 @@ var SDK_RELEASE = {
|
|
|
864
864
|
// getters keep their established compatibility behavior.
|
|
865
865
|
// 0.3.1 deprecated the legacy `deepline enrich` command in favor of Plays.
|
|
866
866
|
// 0.3.90 is the first deliberately versioned SDK release for API v3.
|
|
867
|
-
version: "0.3.
|
|
867
|
+
version: "0.3.176",
|
|
868
868
|
updateSummary: "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.",
|
|
869
869
|
packageCapabilities: {
|
|
870
870
|
updatePreferences: 1
|
|
@@ -4095,6 +4095,16 @@ function resolveTheirstackClientTimeoutMs(endpointId, payload) {
|
|
|
4095
4095
|
return usesExtendedTheirstackJobSearchBudget(endpointId, payload) ? THEIRSTACK_SLOW_JOB_SEARCH_CLIENT_TIMEOUT_MS : null;
|
|
4096
4096
|
}
|
|
4097
4097
|
|
|
4098
|
+
// ../integration-contracts/waterfall/execution-policy.ts
|
|
4099
|
+
var WATERFALL_PROSPECTOR_CLIENT_TIMEOUT_MS = 18e4;
|
|
4100
|
+
var WATERFALL_PROSPECTOR_LAUNCHER_TOOL_IDS = /* @__PURE__ */ new Set([
|
|
4101
|
+
"prospector",
|
|
4102
|
+
"deepline_native_prospector"
|
|
4103
|
+
]);
|
|
4104
|
+
function resolveWaterfallClientTimeoutMs(toolId) {
|
|
4105
|
+
return WATERFALL_PROSPECTOR_LAUNCHER_TOOL_IDS.has(toolId.trim().toLowerCase()) ? WATERFALL_PROSPECTOR_CLIENT_TIMEOUT_MS : null;
|
|
4106
|
+
}
|
|
4107
|
+
|
|
4098
4108
|
// ../integration-contracts/bettercontact/execution-policy.ts
|
|
4099
4109
|
var BETTERCONTACT_LAUNCHER_CLIENT_TIMEOUT_MS = 12e4;
|
|
4100
4110
|
var BETTERCONTACT_LAUNCHER_TOOL_IDS = /* @__PURE__ */ new Set([
|
|
@@ -4505,6 +4515,8 @@ function resolveToolExecuteTimeoutMs(toolId, input) {
|
|
|
4505
4515
|
input
|
|
4506
4516
|
);
|
|
4507
4517
|
if (theirstackTimeoutMs !== null) return theirstackTimeoutMs;
|
|
4518
|
+
const waterfallTimeoutMs = resolveWaterfallClientTimeoutMs(normalized);
|
|
4519
|
+
if (waterfallTimeoutMs !== null) return waterfallTimeoutMs;
|
|
4508
4520
|
if (usesExtendedBetterContactLauncherBudget(normalized)) {
|
|
4509
4521
|
return BETTERCONTACT_LAUNCHER_CLIENT_TIMEOUT_MS;
|
|
4510
4522
|
}
|
package/dist/index.mjs
CHANGED
|
@@ -768,7 +768,7 @@ var SDK_RELEASE = {
|
|
|
768
768
|
// getters keep their established compatibility behavior.
|
|
769
769
|
// 0.3.1 deprecated the legacy `deepline enrich` command in favor of Plays.
|
|
770
770
|
// 0.3.90 is the first deliberately versioned SDK release for API v3.
|
|
771
|
-
version: "0.3.
|
|
771
|
+
version: "0.3.176",
|
|
772
772
|
updateSummary: "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.",
|
|
773
773
|
packageCapabilities: {
|
|
774
774
|
updatePreferences: 1
|
|
@@ -3999,6 +3999,16 @@ function resolveTheirstackClientTimeoutMs(endpointId, payload) {
|
|
|
3999
3999
|
return usesExtendedTheirstackJobSearchBudget(endpointId, payload) ? THEIRSTACK_SLOW_JOB_SEARCH_CLIENT_TIMEOUT_MS : null;
|
|
4000
4000
|
}
|
|
4001
4001
|
|
|
4002
|
+
// ../integration-contracts/waterfall/execution-policy.ts
|
|
4003
|
+
var WATERFALL_PROSPECTOR_CLIENT_TIMEOUT_MS = 18e4;
|
|
4004
|
+
var WATERFALL_PROSPECTOR_LAUNCHER_TOOL_IDS = /* @__PURE__ */ new Set([
|
|
4005
|
+
"prospector",
|
|
4006
|
+
"deepline_native_prospector"
|
|
4007
|
+
]);
|
|
4008
|
+
function resolveWaterfallClientTimeoutMs(toolId) {
|
|
4009
|
+
return WATERFALL_PROSPECTOR_LAUNCHER_TOOL_IDS.has(toolId.trim().toLowerCase()) ? WATERFALL_PROSPECTOR_CLIENT_TIMEOUT_MS : null;
|
|
4010
|
+
}
|
|
4011
|
+
|
|
4002
4012
|
// ../integration-contracts/bettercontact/execution-policy.ts
|
|
4003
4013
|
var BETTERCONTACT_LAUNCHER_CLIENT_TIMEOUT_MS = 12e4;
|
|
4004
4014
|
var BETTERCONTACT_LAUNCHER_TOOL_IDS = /* @__PURE__ */ new Set([
|
|
@@ -4409,6 +4419,8 @@ function resolveToolExecuteTimeoutMs(toolId, input) {
|
|
|
4409
4419
|
input
|
|
4410
4420
|
);
|
|
4411
4421
|
if (theirstackTimeoutMs !== null) return theirstackTimeoutMs;
|
|
4422
|
+
const waterfallTimeoutMs = resolveWaterfallClientTimeoutMs(normalized);
|
|
4423
|
+
if (waterfallTimeoutMs !== null) return waterfallTimeoutMs;
|
|
4412
4424
|
if (usesExtendedBetterContactLauncherBudget(normalized)) {
|
|
4413
4425
|
return BETTERCONTACT_LAUNCHER_CLIENT_TIMEOUT_MS;
|
|
4414
4426
|
}
|
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
"dist/bundling-sources/shared_libs/integration-contracts/monitor-input-contract.ts",
|
|
33
33
|
"dist/bundling-sources/shared_libs/integration-contracts/README.md",
|
|
34
34
|
"dist/bundling-sources/shared_libs/integration-contracts/theirstack/execution-policy.ts",
|
|
35
|
+
"dist/bundling-sources/shared_libs/integration-contracts/waterfall/execution-policy.ts",
|
|
35
36
|
"dist/bundling-sources/shared_libs/monitors/analytics-install-guides.ts",
|
|
36
37
|
"dist/bundling-sources/shared_libs/monitors/analytics-public.ts",
|
|
37
38
|
"dist/bundling-sources/shared_libs/monitors/billing/charges.ts",
|
|
@@ -114,6 +115,7 @@
|
|
|
114
115
|
"dist/bundling-sources/shared_libs/play-data-plane/index.ts",
|
|
115
116
|
"dist/bundling-sources/shared_libs/play-data-plane/neon-constants.ts",
|
|
116
117
|
"dist/bundling-sources/shared_libs/play-data-plane/r2.ts",
|
|
118
|
+
"dist/bundling-sources/shared_libs/play-data-plane/runtime-sheet-orm.ts",
|
|
117
119
|
"dist/bundling-sources/shared_libs/play-data-plane/runtime-sheet-storage-contract.ts",
|
|
118
120
|
"dist/bundling-sources/shared_libs/play-data-plane/sheet-contract.ts",
|
|
119
121
|
"dist/bundling-sources/shared_libs/play-runtime/activity-observation.ts",
|
package/dist/release.d.mts
CHANGED
|
@@ -149,7 +149,7 @@ type SdkRelease = {
|
|
|
149
149
|
supportPolicy: SdkSupportPolicy;
|
|
150
150
|
};
|
|
151
151
|
declare const SDK_RELEASE: {
|
|
152
|
-
readonly version: "0.3.
|
|
152
|
+
readonly version: "0.3.176";
|
|
153
153
|
readonly updateSummary: "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.";
|
|
154
154
|
readonly packageCapabilities: {
|
|
155
155
|
readonly updatePreferences: 1;
|
package/dist/release.d.ts
CHANGED
|
@@ -149,7 +149,7 @@ type SdkRelease = {
|
|
|
149
149
|
supportPolicy: SdkSupportPolicy;
|
|
150
150
|
};
|
|
151
151
|
declare const SDK_RELEASE: {
|
|
152
|
-
readonly version: "0.3.
|
|
152
|
+
readonly version: "0.3.176";
|
|
153
153
|
readonly updateSummary: "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.";
|
|
154
154
|
readonly packageCapabilities: {
|
|
155
155
|
readonly updatePreferences: 1;
|
package/dist/release.js
CHANGED
|
@@ -74,7 +74,7 @@ var SDK_RELEASE = {
|
|
|
74
74
|
// getters keep their established compatibility behavior.
|
|
75
75
|
// 0.3.1 deprecated the legacy `deepline enrich` command in favor of Plays.
|
|
76
76
|
// 0.3.90 is the first deliberately versioned SDK release for API v3.
|
|
77
|
-
version: "0.3.
|
|
77
|
+
version: "0.3.176",
|
|
78
78
|
updateSummary: "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.",
|
|
79
79
|
packageCapabilities: {
|
|
80
80
|
updatePreferences: 1
|
package/dist/release.mjs
CHANGED
|
@@ -48,7 +48,7 @@ var SDK_RELEASE = {
|
|
|
48
48
|
// getters keep their established compatibility behavior.
|
|
49
49
|
// 0.3.1 deprecated the legacy `deepline enrich` command in favor of Plays.
|
|
50
50
|
// 0.3.90 is the first deliberately versioned SDK release for API v3.
|
|
51
|
-
version: "0.3.
|
|
51
|
+
version: "0.3.176",
|
|
52
52
|
updateSummary: "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.",
|
|
53
53
|
packageCapabilities: {
|
|
54
54
|
updatePreferences: 1
|