deepline 0.3.10 → 0.3.12

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.
@@ -192,7 +192,7 @@ export const SDK_RELEASE = {
192
192
  // 0.3.0 introduces raw-v2: complete scrubbed provider responses are
193
193
  // available at toolResponse.rawV2 while toolResponse.raw and all declared
194
194
  // getters keep their established compatibility behavior.
195
- version: '0.3.10',
195
+ version: '0.3.12',
196
196
  updateSummary:
197
197
  'New raw-v2 tool responses preserve complete scrubbed provider envelopes at toolResponse.rawV2, including JSON:API included resources, links, cursors, and totals. Existing toolResponse.raw and declared getters keep working unchanged.',
198
198
  contracts: {
@@ -575,6 +575,11 @@ async function acquireOneShotDaytonaSandbox(input: {
575
575
  attempt: result.attempt,
576
576
  elapsedMs: billingStartedAt - input.startedAt,
577
577
  attemptElapsedMs: result.attemptElapsedMs,
578
+ // Daytona's default snapshot is intentionally provider-managed. Record the
579
+ // resolved immutable snapshot identifier so a slow acquisition can be
580
+ // distinguished from a bad warm-pool/default-snapshot selection without
581
+ // logging provider credentials or customer-code details.
582
+ snapshot: sandbox.snapshot?.trim() || null,
578
583
  cpu: granted.cpu,
579
584
  memoryGiB: granted.memoryGiB,
580
585
  diskGiB: granted.diskGiB,
@@ -109,6 +109,13 @@ export type PlaySchedulerSubmitInput = {
109
109
  * When omitted, legacy schedulers fall back to baseUrl.
110
110
  */
111
111
  runtimeApiBaseUrl?: string | null;
112
+ /**
113
+ * Stable signing origin for executor JWTs. This is intentionally distinct
114
+ * from runtimeApiBaseUrl: a staged Vercel deployment must receive the
115
+ * canary's runtime API traffic without forcing a long-lived gateway fleet to
116
+ * trust a one-off deployment hostname.
117
+ */
118
+ runtimeTokenOrigin?: string | null;
112
119
  baseUrl: string;
113
120
  /** Optional per-run provider execution mode. Defaults to server policy when omitted. */
114
121
  integrationMode?: 'live' | 'eval_stub' | 'fixture';
@@ -12,6 +12,18 @@ export type PlayCompilerDependencyManifest = {
12
12
  graphHash: string;
13
13
  artifactHash: string;
14
14
  staticPipeline: PlayStaticPipeline;
15
+ /** Compact transitive dependency closure from the child manifest. */
16
+ importedPlayDependencies?: PlayCompilerDependencyManifest[];
17
+ };
18
+
19
+ /**
20
+ * A unique named ctx.runPlay target resolved while compiling the root Play.
21
+ * Keeping this separate from source imports lets artifact registration reuse a
22
+ * freshly resolved child shape without embedding it at every call site.
23
+ */
24
+ export type PlayCompilerNamedPlayDependency = {
25
+ playName: string;
26
+ staticPipeline: PlayStaticPipeline;
15
27
  };
16
28
 
17
29
  export type PlayCompilerManifest = {
@@ -23,6 +35,7 @@ export type PlayCompilerManifest = {
23
35
  artifactKind?: PlayArtifactKind;
24
36
  staticPipeline: PlayStaticPipeline;
25
37
  importedPlayDependencies: PlayCompilerDependencyManifest[];
38
+ namedPlayDependencies?: PlayCompilerNamedPlayDependency[];
26
39
  authoringContract?: AdmittedPlayAuthoringContract;
27
40
  };
28
41
 
@@ -41,3 +54,54 @@ export type PlayRuntimeManifest = {
41
54
  };
42
55
 
43
56
  export type PlayRuntimeManifestMap = Record<string, PlayRuntimeManifest>;
57
+
58
+ /**
59
+ * Indexes the complete compact dependency closure carried by compiler
60
+ * manifests. A direct child can itself reference unpublished local plays, so
61
+ * callers must not limit resolution to the root's direct imports.
62
+ */
63
+ export function collectPlayCompilerDependencies(
64
+ dependencies: readonly PlayCompilerDependencyManifest[],
65
+ ): Map<string, PlayCompilerDependencyManifest> {
66
+ const byName = new Map<string, PlayCompilerDependencyManifest>();
67
+ const visit = (dependency: PlayCompilerDependencyManifest) => {
68
+ const existing = byName.get(dependency.playName);
69
+ if (existing) {
70
+ if (
71
+ existing.graphHash !== dependency.graphHash ||
72
+ existing.artifactHash !== dependency.artifactHash
73
+ ) {
74
+ throw new Error(
75
+ `Conflicting compiler manifests for imported Play "${dependency.playName}".`,
76
+ );
77
+ }
78
+ return;
79
+ }
80
+ byName.set(dependency.playName, dependency);
81
+ for (const child of dependency.importedPlayDependencies ?? []) {
82
+ visit(child);
83
+ }
84
+ };
85
+ for (const dependency of dependencies) visit(dependency);
86
+ return byName;
87
+ }
88
+
89
+ export function collectNamedPlayCompilerDependencies(
90
+ dependencies: readonly PlayCompilerNamedPlayDependency[] | undefined,
91
+ ): Map<string, PlayCompilerNamedPlayDependency> {
92
+ const byName = new Map<string, PlayCompilerNamedPlayDependency>();
93
+ for (const dependency of dependencies ?? []) {
94
+ const existing = byName.get(dependency.playName);
95
+ if (
96
+ existing &&
97
+ JSON.stringify(existing.staticPipeline) !==
98
+ JSON.stringify(dependency.staticPipeline)
99
+ ) {
100
+ throw new Error(
101
+ `Conflicting compiler manifests for named Play "${dependency.playName}".`,
102
+ );
103
+ }
104
+ byName.set(dependency.playName, dependency);
105
+ }
106
+ return byName;
107
+ }
@@ -502,6 +502,17 @@ function truncateStaticSubstepsForStorage(
502
502
  return base;
503
503
  }
504
504
 
505
+ // A normalized authoring graph intentionally leaves a named play-call's
506
+ // child pipeline absent. That is a reference edge, not a failed or
507
+ // truncated resolution, so preserve it without inventing an error.
508
+ if (
509
+ !base.pipeline &&
510
+ !Object.prototype.hasOwnProperty.call(substep, 'pipeline') &&
511
+ !base.resolutionError
512
+ ) {
513
+ return base;
514
+ }
515
+
505
516
  if (
506
517
  !base.pipeline ||
507
518
  input.embeddedPlayCallPipelineDepth >=
@@ -591,6 +602,67 @@ export function truncateStaticPipelineForRuntimeContract(
591
602
  });
592
603
  }
593
604
 
605
+ /**
606
+ * Creates the normalized graph used at transport and control-plane seams.
607
+ * Named child pipelines are derived from the live child definition, so retain
608
+ * each call site but remove the recursively embedded child snapshot.
609
+ */
610
+ export function createStaticPipelineReferenceProjection(
611
+ pipeline: PlayStaticPipeline | null | undefined,
612
+ ): PlayStaticPipeline | null | undefined {
613
+ const stored = truncateStaticPipelineForStorage(pipeline, {
614
+ maxEmbeddedPlayCallPipelineDepth: Number.POSITIVE_INFINITY,
615
+ maxStoredSubstepDepth: Number.POSITIVE_INFINITY,
616
+ });
617
+ if (!stored) return stored;
618
+
619
+ const projectSteps = (
620
+ steps: PlayStaticSubstep[] | undefined,
621
+ ): PlayStaticSubstep[] =>
622
+ (steps ?? []).map((substep) => {
623
+ const projected = { ...substep } as PlayStaticSubstep & {
624
+ pipeline?: PlayStaticPipeline | null;
625
+ branches?: Array<{
626
+ label: string;
627
+ condition?: string;
628
+ steps: PlayStaticSubstep[];
629
+ }>;
630
+ };
631
+ if (projected.type === 'play_call') {
632
+ delete projected.pipeline;
633
+ if (
634
+ projected.resolutionError?.startsWith(
635
+ 'Stored static pipeline truncated at ',
636
+ )
637
+ ) {
638
+ delete projected.resolutionError;
639
+ }
640
+ return projected;
641
+ }
642
+ if (
643
+ (projected.type === 'dataset' ||
644
+ projected.type === 'step_suite' ||
645
+ projected.type === 'control_flow') &&
646
+ Array.isArray(projected.steps)
647
+ ) {
648
+ projected.steps = projectSteps(projected.steps);
649
+ }
650
+ if (Array.isArray(projected.branches)) {
651
+ projected.branches = projected.branches.map((branch) => ({
652
+ ...branch,
653
+ steps: projectSteps(branch.steps),
654
+ }));
655
+ }
656
+ return projected;
657
+ });
658
+
659
+ return {
660
+ ...stored,
661
+ stages: projectSteps(stored.stages),
662
+ substeps: projectSteps(stored.substeps),
663
+ };
664
+ }
665
+
594
666
  function asStaticRecord(value: unknown): Record<string, unknown> | null {
595
667
  return value && typeof value === 'object' && !Array.isArray(value)
596
668
  ? (value as Record<string, unknown>)
package/dist/cli/index.js CHANGED
@@ -1047,7 +1047,7 @@ var SDK_RELEASE = {
1047
1047
  // 0.3.0 introduces raw-v2: complete scrubbed provider responses are
1048
1048
  // available at toolResponse.rawV2 while toolResponse.raw and all declared
1049
1049
  // getters keep their established compatibility behavior.
1050
- version: "0.3.10",
1050
+ version: "0.3.12",
1051
1051
  updateSummary: "New raw-v2 tool responses preserve complete scrubbed provider envelopes at toolResponse.rawV2, including JSON:API included resources, links, cursors, and totals. Existing toolResponse.raw and declared getters keep working unchanged.",
1052
1052
  contracts: {
1053
1053
  api: {
@@ -1033,7 +1033,7 @@ var SDK_RELEASE = {
1033
1033
  // 0.3.0 introduces raw-v2: complete scrubbed provider responses are
1034
1034
  // available at toolResponse.rawV2 while toolResponse.raw and all declared
1035
1035
  // getters keep their established compatibility behavior.
1036
- version: "0.3.10",
1036
+ version: "0.3.12",
1037
1037
  updateSummary: "New raw-v2 tool responses preserve complete scrubbed provider envelopes at toolResponse.rawV2, including JSON:API included resources, links, cursors, and totals. Existing toolResponse.raw and declared getters keep working unchanged.",
1038
1038
  contracts: {
1039
1039
  api: {
@@ -2847,6 +2847,17 @@ type PlayCompilerDependencyManifest = {
2847
2847
  graphHash: string;
2848
2848
  artifactHash: string;
2849
2849
  staticPipeline: PlayStaticPipeline;
2850
+ /** Compact transitive dependency closure from the child manifest. */
2851
+ importedPlayDependencies?: PlayCompilerDependencyManifest[];
2852
+ };
2853
+ /**
2854
+ * A unique named ctx.runPlay target resolved while compiling the root Play.
2855
+ * Keeping this separate from source imports lets artifact registration reuse a
2856
+ * freshly resolved child shape without embedding it at every call site.
2857
+ */
2858
+ type PlayCompilerNamedPlayDependency = {
2859
+ playName: string;
2860
+ staticPipeline: PlayStaticPipeline;
2850
2861
  };
2851
2862
  type PlayCompilerManifest = {
2852
2863
  compilerVersion: number;
@@ -2857,6 +2868,7 @@ type PlayCompilerManifest = {
2857
2868
  artifactKind?: PlayArtifactKind;
2858
2869
  staticPipeline: PlayStaticPipeline;
2859
2870
  importedPlayDependencies: PlayCompilerDependencyManifest[];
2871
+ namedPlayDependencies?: PlayCompilerNamedPlayDependency[];
2860
2872
  authoringContract?: AdmittedPlayAuthoringContract;
2861
2873
  };
2862
2874
 
@@ -2847,6 +2847,17 @@ type PlayCompilerDependencyManifest = {
2847
2847
  graphHash: string;
2848
2848
  artifactHash: string;
2849
2849
  staticPipeline: PlayStaticPipeline;
2850
+ /** Compact transitive dependency closure from the child manifest. */
2851
+ importedPlayDependencies?: PlayCompilerDependencyManifest[];
2852
+ };
2853
+ /**
2854
+ * A unique named ctx.runPlay target resolved while compiling the root Play.
2855
+ * Keeping this separate from source imports lets artifact registration reuse a
2856
+ * freshly resolved child shape without embedding it at every call site.
2857
+ */
2858
+ type PlayCompilerNamedPlayDependency = {
2859
+ playName: string;
2860
+ staticPipeline: PlayStaticPipeline;
2850
2861
  };
2851
2862
  type PlayCompilerManifest = {
2852
2863
  compilerVersion: number;
@@ -2857,6 +2868,7 @@ type PlayCompilerManifest = {
2857
2868
  artifactKind?: PlayArtifactKind;
2858
2869
  staticPipeline: PlayStaticPipeline;
2859
2870
  importedPlayDependencies: PlayCompilerDependencyManifest[];
2871
+ namedPlayDependencies?: PlayCompilerNamedPlayDependency[];
2860
2872
  authoringContract?: AdmittedPlayAuthoringContract;
2861
2873
  };
2862
2874
 
package/dist/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
- import { e as PlayRuntimeBackendId, c as PlayCompilerManifest, D as DeeplineError, f as ToolExecutionError, g as ToolExecutionErrorOptions, h as PlayAuthoringColumnMap, i as PlayAuthoringColumnResolver, j as PlayAuthoringRuntimeContext, k as PlayAuthoringConditionalStepResolver, l as PlayAuthoringCsvInput, m as PlayAuthoringCsvOptions, n as PlayAuthoringDatasetBuilder, o as PlayAuthoringDatasetColumnDefinition, p as PlayAuthoringDatasetColumnRunInput, q as ToolExecuteResult, r as PlayAuthoringReferenceLike, s as PlayReturnObject$1, t as PlayAuthoringDefineConfig, u as PlayAuthoringDefinedPlay, v as PlayAuthoringFetchOptions, w as PlayAuthoringFileInput, x as PlayAuthoringBindings, y as PlayAuthoringCallExecution, z as PlayAuthoringCallOptions, A as PlayAuthoringFetchResponse, B as PlayAuthoringInputContract, C as PlayAuthoringStepProgramStep, E as PlayAuthoringRuntimeStepOptions, F as PlaySqlListenerDeclaration, G as PlaySqlListenerEvent, H as PlaySqlListenerOperation, I as PlaySqlQuery, J as PlayAuthoringStepOptions, K as PlayAuthoringStepProgram, L as PlayAuthoringStepProgramResolver, M as PlayAuthoringStepResolver, N as PlayToolExecutionRequest, O as PlayAuthoringStepProgramOptions } from './compiler-manifest-YIjoJo8y.mjs';
2
- export { Q as DEEPLINE_EXTRACTOR_TARGETS, R as DEEPLINE_EXTRACTOR_TARGET_DEFINITIONS, S as DeeplineEmailStatusGetterValue, U as DeeplineExtractorTarget, V as DeeplineGetterValue, W as DeeplineGetterValueMap, X as JOB_CHANGE_STATUS_VALUES, Y as JobChangeStatus, Z as PHONE_STATUS_VALUES, _ as PhoneStatus, $ as PlayDataset, a0 as PlayDatasetInput, a1 as PreviousCell, a2 as ProviderTransientError, a3 as ProviderTransientErrorCategory, a4 as ProviderUnavailableError, a5 as ProviderUnavailableReason, a6 as ToolExecutionErrorCategory, a7 as ToolExecutionErrorOrigin, a8 as ToolExecutionFailureV1, a9 as ToolExecutionNetworkKind, aa as ToolExecutionNetworkScope, ab as getProviderUnavailableReason, ac as isDeeplineExtractorTarget, ad as isProviderUnavailable, ae as isProviderWaterfallUnavailableError } from './compiler-manifest-YIjoJo8y.mjs';
1
+ import { e as PlayRuntimeBackendId, c as PlayCompilerManifest, D as DeeplineError, f as ToolExecutionError, g as ToolExecutionErrorOptions, h as PlayAuthoringColumnMap, i as PlayAuthoringColumnResolver, j as PlayAuthoringRuntimeContext, k as PlayAuthoringConditionalStepResolver, l as PlayAuthoringCsvInput, m as PlayAuthoringCsvOptions, n as PlayAuthoringDatasetBuilder, o as PlayAuthoringDatasetColumnDefinition, p as PlayAuthoringDatasetColumnRunInput, q as ToolExecuteResult, r as PlayAuthoringReferenceLike, s as PlayReturnObject$1, t as PlayAuthoringDefineConfig, u as PlayAuthoringDefinedPlay, v as PlayAuthoringFetchOptions, w as PlayAuthoringFileInput, x as PlayAuthoringBindings, y as PlayAuthoringCallExecution, z as PlayAuthoringCallOptions, A as PlayAuthoringFetchResponse, B as PlayAuthoringInputContract, C as PlayAuthoringStepProgramStep, E as PlayAuthoringRuntimeStepOptions, F as PlaySqlListenerDeclaration, G as PlaySqlListenerEvent, H as PlaySqlListenerOperation, I as PlaySqlQuery, J as PlayAuthoringStepOptions, K as PlayAuthoringStepProgram, L as PlayAuthoringStepProgramResolver, M as PlayAuthoringStepResolver, N as PlayToolExecutionRequest, O as PlayAuthoringStepProgramOptions } from './compiler-manifest-Bth3lcZ_.mjs';
2
+ export { Q as DEEPLINE_EXTRACTOR_TARGETS, R as DEEPLINE_EXTRACTOR_TARGET_DEFINITIONS, S as DeeplineEmailStatusGetterValue, U as DeeplineExtractorTarget, V as DeeplineGetterValue, W as DeeplineGetterValueMap, X as JOB_CHANGE_STATUS_VALUES, Y as JobChangeStatus, Z as PHONE_STATUS_VALUES, _ as PhoneStatus, $ as PlayDataset, a0 as PlayDatasetInput, a1 as PreviousCell, a2 as ProviderTransientError, a3 as ProviderTransientErrorCategory, a4 as ProviderUnavailableError, a5 as ProviderUnavailableReason, a6 as ToolExecutionErrorCategory, a7 as ToolExecutionErrorOrigin, a8 as ToolExecutionFailureV1, a9 as ToolExecutionNetworkKind, aa as ToolExecutionNetworkScope, ab as getProviderUnavailableReason, ac as isDeeplineExtractorTarget, ad as isProviderUnavailable, ae as isProviderWaterfallUnavailableError } from './compiler-manifest-Bth3lcZ_.mjs';
3
3
  import '@sinclair/typebox';
4
4
 
5
5
  declare const FIXTURE_BEHAVIOR_VERSION: 1;
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { e as PlayRuntimeBackendId, c as PlayCompilerManifest, D as DeeplineError, f as ToolExecutionError, g as ToolExecutionErrorOptions, h as PlayAuthoringColumnMap, i as PlayAuthoringColumnResolver, j as PlayAuthoringRuntimeContext, k as PlayAuthoringConditionalStepResolver, l as PlayAuthoringCsvInput, m as PlayAuthoringCsvOptions, n as PlayAuthoringDatasetBuilder, o as PlayAuthoringDatasetColumnDefinition, p as PlayAuthoringDatasetColumnRunInput, q as ToolExecuteResult, r as PlayAuthoringReferenceLike, s as PlayReturnObject$1, t as PlayAuthoringDefineConfig, u as PlayAuthoringDefinedPlay, v as PlayAuthoringFetchOptions, w as PlayAuthoringFileInput, x as PlayAuthoringBindings, y as PlayAuthoringCallExecution, z as PlayAuthoringCallOptions, A as PlayAuthoringFetchResponse, B as PlayAuthoringInputContract, C as PlayAuthoringStepProgramStep, E as PlayAuthoringRuntimeStepOptions, F as PlaySqlListenerDeclaration, G as PlaySqlListenerEvent, H as PlaySqlListenerOperation, I as PlaySqlQuery, J as PlayAuthoringStepOptions, K as PlayAuthoringStepProgram, L as PlayAuthoringStepProgramResolver, M as PlayAuthoringStepResolver, N as PlayToolExecutionRequest, O as PlayAuthoringStepProgramOptions } from './compiler-manifest-YIjoJo8y.js';
2
- export { Q as DEEPLINE_EXTRACTOR_TARGETS, R as DEEPLINE_EXTRACTOR_TARGET_DEFINITIONS, S as DeeplineEmailStatusGetterValue, U as DeeplineExtractorTarget, V as DeeplineGetterValue, W as DeeplineGetterValueMap, X as JOB_CHANGE_STATUS_VALUES, Y as JobChangeStatus, Z as PHONE_STATUS_VALUES, _ as PhoneStatus, $ as PlayDataset, a0 as PlayDatasetInput, a1 as PreviousCell, a2 as ProviderTransientError, a3 as ProviderTransientErrorCategory, a4 as ProviderUnavailableError, a5 as ProviderUnavailableReason, a6 as ToolExecutionErrorCategory, a7 as ToolExecutionErrorOrigin, a8 as ToolExecutionFailureV1, a9 as ToolExecutionNetworkKind, aa as ToolExecutionNetworkScope, ab as getProviderUnavailableReason, ac as isDeeplineExtractorTarget, ad as isProviderUnavailable, ae as isProviderWaterfallUnavailableError } from './compiler-manifest-YIjoJo8y.js';
1
+ import { e as PlayRuntimeBackendId, c as PlayCompilerManifest, D as DeeplineError, f as ToolExecutionError, g as ToolExecutionErrorOptions, h as PlayAuthoringColumnMap, i as PlayAuthoringColumnResolver, j as PlayAuthoringRuntimeContext, k as PlayAuthoringConditionalStepResolver, l as PlayAuthoringCsvInput, m as PlayAuthoringCsvOptions, n as PlayAuthoringDatasetBuilder, o as PlayAuthoringDatasetColumnDefinition, p as PlayAuthoringDatasetColumnRunInput, q as ToolExecuteResult, r as PlayAuthoringReferenceLike, s as PlayReturnObject$1, t as PlayAuthoringDefineConfig, u as PlayAuthoringDefinedPlay, v as PlayAuthoringFetchOptions, w as PlayAuthoringFileInput, x as PlayAuthoringBindings, y as PlayAuthoringCallExecution, z as PlayAuthoringCallOptions, A as PlayAuthoringFetchResponse, B as PlayAuthoringInputContract, C as PlayAuthoringStepProgramStep, E as PlayAuthoringRuntimeStepOptions, F as PlaySqlListenerDeclaration, G as PlaySqlListenerEvent, H as PlaySqlListenerOperation, I as PlaySqlQuery, J as PlayAuthoringStepOptions, K as PlayAuthoringStepProgram, L as PlayAuthoringStepProgramResolver, M as PlayAuthoringStepResolver, N as PlayToolExecutionRequest, O as PlayAuthoringStepProgramOptions } from './compiler-manifest-Bth3lcZ_.js';
2
+ export { Q as DEEPLINE_EXTRACTOR_TARGETS, R as DEEPLINE_EXTRACTOR_TARGET_DEFINITIONS, S as DeeplineEmailStatusGetterValue, U as DeeplineExtractorTarget, V as DeeplineGetterValue, W as DeeplineGetterValueMap, X as JOB_CHANGE_STATUS_VALUES, Y as JobChangeStatus, Z as PHONE_STATUS_VALUES, _ as PhoneStatus, $ as PlayDataset, a0 as PlayDatasetInput, a1 as PreviousCell, a2 as ProviderTransientError, a3 as ProviderTransientErrorCategory, a4 as ProviderUnavailableError, a5 as ProviderUnavailableReason, a6 as ToolExecutionErrorCategory, a7 as ToolExecutionErrorOrigin, a8 as ToolExecutionFailureV1, a9 as ToolExecutionNetworkKind, aa as ToolExecutionNetworkScope, ab as getProviderUnavailableReason, ac as isDeeplineExtractorTarget, ad as isProviderUnavailable, ae as isProviderWaterfallUnavailableError } from './compiler-manifest-Bth3lcZ_.js';
3
3
  import '@sinclair/typebox';
4
4
 
5
5
  declare const FIXTURE_BEHAVIOR_VERSION: 1;
package/dist/index.js CHANGED
@@ -783,7 +783,7 @@ var SDK_RELEASE = {
783
783
  // 0.3.0 introduces raw-v2: complete scrubbed provider responses are
784
784
  // available at toolResponse.rawV2 while toolResponse.raw and all declared
785
785
  // getters keep their established compatibility behavior.
786
- version: "0.3.10",
786
+ version: "0.3.12",
787
787
  updateSummary: "New raw-v2 tool responses preserve complete scrubbed provider envelopes at toolResponse.rawV2, including JSON:API included resources, links, cursors, and totals. Existing toolResponse.raw and declared getters keep working unchanged.",
788
788
  contracts: {
789
789
  api: {
package/dist/index.mjs CHANGED
@@ -706,7 +706,7 @@ var SDK_RELEASE = {
706
706
  // 0.3.0 introduces raw-v2: complete scrubbed provider responses are
707
707
  // available at toolResponse.rawV2 while toolResponse.raw and all declared
708
708
  // getters keep their established compatibility behavior.
709
- version: "0.3.10",
709
+ version: "0.3.12",
710
710
  updateSummary: "New raw-v2 tool responses preserve complete scrubbed provider envelopes at toolResponse.rawV2, including JSON:API included resources, links, cursors, and totals. Existing toolResponse.raw and declared getters keep working unchanged.",
711
711
  contracts: {
712
712
  api: {
@@ -226,8 +226,8 @@
226
226
  "dist/cli/index.d.ts",
227
227
  "dist/cli/index.js",
228
228
  "dist/cli/index.mjs",
229
- "dist/compiler-manifest-YIjoJo8y.d.mts",
230
- "dist/compiler-manifest-YIjoJo8y.d.ts",
229
+ "dist/compiler-manifest-Bth3lcZ_.d.mts",
230
+ "dist/compiler-manifest-Bth3lcZ_.d.ts",
231
231
  "dist/helpers.d.mts",
232
232
  "dist/helpers.d.ts",
233
233
  "dist/helpers.js",
@@ -1,5 +1,5 @@
1
- import { T as ToolExecutionErrorSchemaVersion, P as PlayAuthoringContractEdition, a as PlayArtifactKind$1, b as PlaySandboxRuntimeDeclaration, c as PlayCompilerManifest } from '../compiler-manifest-YIjoJo8y.mjs';
2
- export { d as PLAY_ARTIFACT_KINDS } from '../compiler-manifest-YIjoJo8y.mjs';
1
+ import { T as ToolExecutionErrorSchemaVersion, P as PlayAuthoringContractEdition, a as PlayArtifactKind$1, b as PlaySandboxRuntimeDeclaration, c as PlayCompilerManifest } from '../compiler-manifest-Bth3lcZ_.mjs';
2
+ export { d as PLAY_ARTIFACT_KINDS } from '../compiler-manifest-Bth3lcZ_.mjs';
3
3
  import '@sinclair/typebox';
4
4
 
5
5
  /**
@@ -1,5 +1,5 @@
1
- import { T as ToolExecutionErrorSchemaVersion, P as PlayAuthoringContractEdition, a as PlayArtifactKind$1, b as PlaySandboxRuntimeDeclaration, c as PlayCompilerManifest } from '../compiler-manifest-YIjoJo8y.js';
2
- export { d as PLAY_ARTIFACT_KINDS } from '../compiler-manifest-YIjoJo8y.js';
1
+ import { T as ToolExecutionErrorSchemaVersion, P as PlayAuthoringContractEdition, a as PlayArtifactKind$1, b as PlaySandboxRuntimeDeclaration, c as PlayCompilerManifest } from '../compiler-manifest-Bth3lcZ_.js';
2
+ export { d as PLAY_ARTIFACT_KINDS } from '../compiler-manifest-Bth3lcZ_.js';
3
3
  import '@sinclair/typebox';
4
4
 
5
5
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "deepline",
3
- "version": "0.3.10",
3
+ "version": "0.3.12",
4
4
  "description": "GTM data CLI and TypeScript SDK for coding agents",
5
5
  "license": "MIT",
6
6
  "homepage": "https://code.deepline.com",