deepline 0.3.80 → 0.3.81

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.
@@ -199,7 +199,7 @@ export const SDK_RELEASE = {
199
199
  // available at toolResponse.rawV2 while toolResponse.raw and all declared
200
200
  // getters keep their established compatibility behavior.
201
201
  // 0.3.1 deprecated the legacy `deepline enrich` command in favor of Plays.
202
- version: '0.3.80',
202
+ version: '0.3.81',
203
203
  updateSummary:
204
204
  'Automatic CLI updates are now enabled by default. To opt out, run `deepline settings autoupdate off`; use `deepline settings autoupdate on` to re-enable updates or `deepline settings autoupdate pin <version>` to hold an exact release. This release also adds raw-v2 tool responses at toolResponse.rawV2 while preserving existing toolResponse.raw and declared getters.',
205
205
  packageCapabilities: {
@@ -240,7 +240,8 @@ export function recoveryForRuntimeInitializationTransportFailure(
240
240
  reason:
241
241
  | 'runtime_postgres_connect'
242
242
  | 'runtime_api_transport'
243
- | 'runtime_receipt_gateway_transport',
243
+ | 'runtime_receipt_gateway_transport'
244
+ | 'daytona_public_status',
244
245
  ): PlayRunRecoveryError {
245
246
  return new PlayRunRecoveryError({
246
247
  decision: {
@@ -61,6 +61,13 @@ const RUNTIME_RECEIPT_GATEWAY_TRANSPORT_RETRY_PATTERN =
61
61
  /AppRuntimeApiTransportError: (?:App runtime API|Runtime receipt gateway) transport exhausted action=(?:get|claim|mark|complete|fail|heartbeat|release|skip)_runtime_step_receipts?/i;
62
62
  const RUNTIME_API_TRANSPORT_RETRY_PATTERN =
63
63
  /\bRuntime API request to .+ failed before receiving a response:\s*(?:fetch failed|connection (?:terminated|timed out|closed|reset)|ECONNRESET|ETIMEDOUT|ECONNREFUSED)\b/i;
64
+ // Daytona has returned this 400 while looking up the newly-created sandbox's
65
+ // public status. It is a provider control-plane fault, not a caller-invalid
66
+ // sandbox request. Only retry it when the terminal result proves no row or
67
+ // Play step began, because a later public-status lookup could otherwise race
68
+ // with user code that has already had side effects.
69
+ const DAYTONA_PUBLIC_STATUS_TRANSIENT_RETRY_PATTERN =
70
+ /\bDaytonaValidationError:\s*bad request:\s*failed to get sandbox public status:\s*an unexpected error occurred\.?\b/i;
64
71
  const DAYTONA_INFRASTRUCTURE_RETRY_PATTERN =
65
72
  /\b(?:Request failed with status code (?:408|429|500|502|503|504)|ECONNRESET|ECONNREFUSED|ETIMEDOUT|UND_ERR_CONNECT_TIMEOUT|fetch failed|socket hang up|Daytona sandbox create failed across|Daytona sandbox create did not complete|Daytona readiness baseline)\b/i;
66
73
 
@@ -893,6 +900,7 @@ export function retryableRuntimeInitializationFailureReason(
893
900
  | 'runtime_postgres_connect'
894
901
  | 'runtime_api_transport'
895
902
  | 'runtime_receipt_gateway_transport'
903
+ | 'daytona_public_status'
896
904
  | null {
897
905
  if (result.status !== 'failed') return null;
898
906
  if (RUNTIME_POSTGRES_CONNECT_RETRY_PATTERN.test(result.error)) {
@@ -902,6 +910,13 @@ export function retryableRuntimeInitializationFailureReason(
902
910
  return 'runtime_receipt_gateway_transport';
903
911
  }
904
912
  const rowsProcessed = Number(result.stats?.rowsProcessed ?? 0);
913
+ if (
914
+ rowsProcessed === 0 &&
915
+ result.steps.length === 0 &&
916
+ DAYTONA_PUBLIC_STATUS_TRANSIENT_RETRY_PATTERN.test(result.error)
917
+ ) {
918
+ return 'daytona_public_status';
919
+ }
905
920
  if (
906
921
  rowsProcessed === 0 &&
907
922
  result.steps.length === 0 &&
package/dist/cli/index.js CHANGED
@@ -1225,7 +1225,7 @@ var SDK_RELEASE = {
1225
1225
  // available at toolResponse.rawV2 while toolResponse.raw and all declared
1226
1226
  // getters keep their established compatibility behavior.
1227
1227
  // 0.3.1 deprecated the legacy `deepline enrich` command in favor of Plays.
1228
- version: "0.3.80",
1228
+ version: "0.3.81",
1229
1229
  updateSummary: "Automatic CLI updates are now enabled by default. To opt out, run `deepline settings autoupdate off`; use `deepline settings autoupdate on` to re-enable updates or `deepline settings autoupdate pin <version>` to hold an exact release. This release also adds raw-v2 tool responses at toolResponse.rawV2 while preserving existing toolResponse.raw and declared getters.",
1230
1230
  packageCapabilities: {
1231
1231
  updatePreferences: 1
@@ -36923,6 +36923,7 @@ async function syncSdkSkillsIfNeeded(baseUrl, options = {}) {
36923
36923
  }
36924
36924
 
36925
36925
  // src/cli/commands/skills.ts
36926
+ var SKILLS_PROCESS_TIMEOUT_MS = 45e3;
36926
36927
  var RUNTIME_TO_SKILLS_AGENT = {
36927
36928
  antigravity: "antigravity",
36928
36929
  claude_code: "claude-code",
@@ -37080,8 +37081,20 @@ function runProcess(command, args, cwd) {
37080
37081
  stderr += chunk.toString("utf8");
37081
37082
  process.stderr.write(chunk);
37082
37083
  });
37083
- child.once("error", reject);
37084
+ const timeout = setTimeout(() => {
37085
+ child.kill("SIGTERM");
37086
+ reject(
37087
+ new Error(
37088
+ `${SKILLS_NPX_PACKAGE} timed out after ${SKILLS_PROCESS_TIMEOUT_MS}ms.`
37089
+ )
37090
+ );
37091
+ }, SKILLS_PROCESS_TIMEOUT_MS);
37092
+ child.once("error", (error) => {
37093
+ clearTimeout(timeout);
37094
+ reject(error);
37095
+ });
37084
37096
  child.once("close", (code) => {
37097
+ clearTimeout(timeout);
37085
37098
  if (code && stderr.trim()) {
37086
37099
  process.stderr.write(`${SKILLS_NPX_PACKAGE} exited ${code}.
37087
37100
  `);
@@ -1210,7 +1210,7 @@ var SDK_RELEASE = {
1210
1210
  // available at toolResponse.rawV2 while toolResponse.raw and all declared
1211
1211
  // getters keep their established compatibility behavior.
1212
1212
  // 0.3.1 deprecated the legacy `deepline enrich` command in favor of Plays.
1213
- version: "0.3.80",
1213
+ version: "0.3.81",
1214
1214
  updateSummary: "Automatic CLI updates are now enabled by default. To opt out, run `deepline settings autoupdate off`; use `deepline settings autoupdate on` to re-enable updates or `deepline settings autoupdate pin <version>` to hold an exact release. This release also adds raw-v2 tool responses at toolResponse.rawV2 while preserving existing toolResponse.raw and declared getters.",
1215
1215
  packageCapabilities: {
1216
1216
  updatePreferences: 1
@@ -37017,6 +37017,7 @@ async function syncSdkSkillsIfNeeded(baseUrl, options = {}) {
37017
37017
  }
37018
37018
 
37019
37019
  // src/cli/commands/skills.ts
37020
+ var SKILLS_PROCESS_TIMEOUT_MS = 45e3;
37020
37021
  var RUNTIME_TO_SKILLS_AGENT = {
37021
37022
  antigravity: "antigravity",
37022
37023
  claude_code: "claude-code",
@@ -37174,8 +37175,20 @@ function runProcess(command, args, cwd) {
37174
37175
  stderr += chunk.toString("utf8");
37175
37176
  process.stderr.write(chunk);
37176
37177
  });
37177
- child.once("error", reject);
37178
+ const timeout = setTimeout(() => {
37179
+ child.kill("SIGTERM");
37180
+ reject(
37181
+ new Error(
37182
+ `${SKILLS_NPX_PACKAGE} timed out after ${SKILLS_PROCESS_TIMEOUT_MS}ms.`
37183
+ )
37184
+ );
37185
+ }, SKILLS_PROCESS_TIMEOUT_MS);
37186
+ child.once("error", (error) => {
37187
+ clearTimeout(timeout);
37188
+ reject(error);
37189
+ });
37178
37190
  child.once("close", (code) => {
37191
+ clearTimeout(timeout);
37179
37192
  if (code && stderr.trim()) {
37180
37193
  process.stderr.write(`${SKILLS_NPX_PACKAGE} exited ${code}.
37181
37194
  `);
package/dist/index.js CHANGED
@@ -832,7 +832,7 @@ var SDK_RELEASE = {
832
832
  // available at toolResponse.rawV2 while toolResponse.raw and all declared
833
833
  // getters keep their established compatibility behavior.
834
834
  // 0.3.1 deprecated the legacy `deepline enrich` command in favor of Plays.
835
- version: "0.3.80",
835
+ version: "0.3.81",
836
836
  updateSummary: "Automatic CLI updates are now enabled by default. To opt out, run `deepline settings autoupdate off`; use `deepline settings autoupdate on` to re-enable updates or `deepline settings autoupdate pin <version>` to hold an exact release. This release also adds raw-v2 tool responses at toolResponse.rawV2 while preserving existing toolResponse.raw and declared getters.",
837
837
  packageCapabilities: {
838
838
  updatePreferences: 1
package/dist/index.mjs CHANGED
@@ -744,7 +744,7 @@ var SDK_RELEASE = {
744
744
  // available at toolResponse.rawV2 while toolResponse.raw and all declared
745
745
  // getters keep their established compatibility behavior.
746
746
  // 0.3.1 deprecated the legacy `deepline enrich` command in favor of Plays.
747
- version: "0.3.80",
747
+ version: "0.3.81",
748
748
  updateSummary: "Automatic CLI updates are now enabled by default. To opt out, run `deepline settings autoupdate off`; use `deepline settings autoupdate on` to re-enable updates or `deepline settings autoupdate pin <version>` to hold an exact release. This release also adds raw-v2 tool responses at toolResponse.rawV2 while preserving existing toolResponse.raw and declared getters.",
749
749
  packageCapabilities: {
750
750
  updatePreferences: 1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "deepline",
3
- "version": "0.3.80",
3
+ "version": "0.3.81",
4
4
  "description": "GTM data CLI and TypeScript SDK for coding agents",
5
5
  "license": "MIT",
6
6
  "homepage": "https://code.deepline.com",