@independo/inderun-contracts 0.3.0-dev.1 → 0.3.0-dev.11

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.
@@ -51,9 +51,21 @@ export type RejectedProvider = {
51
51
  [property: string]: unknown;
52
52
  };
53
53
  export type Reason = {
54
+ /**
55
+ * Normalized rejection reason. 'streaming_not_supported' means the descriptor does not
56
+ * statically declare Mode-2 streaming; 'streaming_unavailable' means it declares streaming
57
+ * but the dynamic capability snapshot reports it cannot stream in the current host
58
+ * environment.
59
+ */
54
60
  code: Code;
55
61
  message: string;
56
62
  [property: string]: unknown;
57
63
  };
58
- export type Code = "task_not_supported" | "run_not_supported" | "privacy_constraint" | "cloud_constraint" | "offline" | "capability_unavailable";
64
+ /**
65
+ * Normalized rejection reason. 'streaming_not_supported' means the descriptor does not
66
+ * statically declare Mode-2 streaming; 'streaming_unavailable' means it declares streaming
67
+ * but the dynamic capability snapshot reports it cannot stream in the current host
68
+ * environment.
69
+ */
70
+ export type Code = "task_not_supported" | "run_not_supported" | "streaming_not_supported" | "streaming_unavailable" | "privacy_constraint" | "cloud_constraint" | "offline" | "capability_unavailable";
59
71
  //# sourceMappingURL=route-plan.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"route-plan.d.ts","sourceRoot":"","sources":["../../src/generated/route-plan.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG;IACpB;;OAEG;IACH,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB;;OAEG;IACH,WAAW,EAAE,WAAW,CAAC;IACzB;;OAEG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B;;OAEG;IACH,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B;;OAEG;IACH,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IACtC;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED,MAAM,MAAM,SAAS,GAAG;IACpB,KAAK,EAAO,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAc,MAAM,CAAC;IAC5B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,qBAAqB,GAAG,SAAS,GAAG,aAAa,CAAC;AAE5E,MAAM,MAAM,gBAAgB,GAAG;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAK,MAAM,EAAE,CAAC;IACrB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED,MAAM,MAAM,MAAM,GAAG;IACjB,IAAI,EAAK,IAAI,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED,MAAM,MAAM,IAAI,GAAG,oBAAoB,GAAG,mBAAmB,GAAG,oBAAoB,GAAG,kBAAkB,GAAG,SAAS,GAAG,wBAAwB,CAAC"}
1
+ {"version":3,"file":"route-plan.d.ts","sourceRoot":"","sources":["../../src/generated/route-plan.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG;IACpB;;OAEG;IACH,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB;;OAEG;IACH,WAAW,EAAE,WAAW,CAAC;IACzB;;OAEG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B;;OAEG;IACH,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B;;OAEG;IACH,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IACtC;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED,MAAM,MAAM,SAAS,GAAG;IACpB,KAAK,EAAO,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAc,MAAM,CAAC;IAC5B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,qBAAqB,GAAG,SAAS,GAAG,aAAa,CAAC;AAE5E,MAAM,MAAM,gBAAgB,GAAG;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAK,MAAM,EAAE,CAAC;IACrB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED,MAAM,MAAM,MAAM,GAAG;IACjB;;;;;OAKG;IACH,IAAI,EAAK,IAAI,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED;;;;;GAKG;AACH,MAAM,MAAM,IAAI,GAAG,oBAAoB,GAAG,mBAAmB,GAAG,yBAAyB,GAAG,uBAAuB,GAAG,oBAAoB,GAAG,kBAAkB,GAAG,SAAS,GAAG,wBAAwB,CAAC"}
@@ -1,11 +1,17 @@
1
1
  /**
2
- * Pure data input contract for deterministic shared-core Mode-1 route planning.
2
+ * Pure data input contract for deterministic shared-core route planning.
3
3
  */
4
4
  export type RoutePlannerInput = {
5
5
  /**
6
6
  * Hard routing constraints evaluated before provider selection.
7
7
  */
8
8
  constraints: Constraints;
9
+ /**
10
+ * Interaction mode the caller is requesting. Absent means 'run' (Mode 1), so planner inputs
11
+ * produced before this field existed keep their exact Mode-1 semantics. The mode filters
12
+ * eligible providers; it never changes candidate ordering.
13
+ */
14
+ interactionMode?: InteractionMode;
9
15
  /**
10
16
  * Soft route ordering preferences applied after hard filtering.
11
17
  */
@@ -46,6 +52,12 @@ export type Cloud = "forbidden" | "allowed" | "required";
46
52
  * Privacy requirement or preference for execution placement.
47
53
  */
48
54
  export type PrivacyEnum = "local_required" | "local_preferred" | "cloud_allowed" | "cloud_required";
55
+ /**
56
+ * Interaction mode the caller is requesting. Absent means 'run' (Mode 1), so planner inputs
57
+ * produced before this field existed keep their exact Mode-1 semantics. The mode filters
58
+ * eligible providers; it never changes candidate ordering.
59
+ */
60
+ export type InteractionMode = "run" | "stream";
49
61
  /**
50
62
  * Soft route ordering preferences applied after hard filtering.
51
63
  */
@@ -67,10 +79,30 @@ export type Provider = {
67
79
  };
68
80
  export type Capabilities = {
69
81
  available: boolean;
82
+ /**
83
+ * Whether cancellation is honored right now in this host environment. Absent inherits the
84
+ * static descriptor.cancel value (any value other than 'none' means available).
85
+ */
86
+ cancellationAvailable?: boolean;
70
87
  reason?: string;
88
+ /**
89
+ * Whether the provider can stream right now in this host environment. Absent inherits the
90
+ * static descriptor.supports.streaming value.
91
+ */
92
+ streamingAvailable?: boolean;
93
+ /**
94
+ * Human-readable explanation used when streamingAvailable is false. Absent lets the planner
95
+ * synthesize a default message.
96
+ */
97
+ streamingUnavailableReason?: string;
71
98
  [property: string]: unknown;
72
99
  };
73
100
  export type Descriptor = {
101
+ /**
102
+ * Cancellation guarantee the provider offers. Carried for route explanations and telemetry;
103
+ * the planner does not filter on it.
104
+ */
105
+ cancel?: Cancel;
74
106
  id: string;
75
107
  /**
76
108
  * Descriptor privacy metadata used to enforce local/cloud routing rules.
@@ -81,6 +113,11 @@ export type Descriptor = {
81
113
  type: Type;
82
114
  [property: string]: unknown;
83
115
  };
116
+ /**
117
+ * Cancellation guarantee the provider offers. Carried for route explanations and telemetry;
118
+ * the planner does not filter on it.
119
+ */
120
+ export type Cancel = "hard" | "soft" | "none";
84
121
  /**
85
122
  * Descriptor privacy metadata used to enforce local/cloud routing rules.
86
123
  */
@@ -91,6 +128,11 @@ export type PrivacyObject = {
91
128
  };
92
129
  export type Supports = {
93
130
  run: boolean;
131
+ /**
132
+ * Whether the provider statically declares Mode-2 streaming. Absent is treated as false: a
133
+ * descriptor that predates this field cannot be assumed to stream.
134
+ */
135
+ streaming?: boolean;
94
136
  [property: string]: unknown;
95
137
  };
96
138
  export type Type = "local" | "edge" | "cloud";
@@ -1 +1 @@
1
- {"version":3,"file":"route-planner-input.d.ts","sourceRoot":"","sources":["../../src/generated/route-planner-input.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC5B;;OAEG;IACH,WAAW,EAAE,WAAW,CAAC;IACzB;;OAEG;IACH,WAAW,EAAE,WAAW,CAAC;IACzB;;OAEG;IACH,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB;;OAEG;IACH,IAAI,EAAE,IAAI,CAAC;IACX,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACtB;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IACd;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;OAEG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,KAAK,GAAG,WAAW,GAAG,SAAS,GAAG,UAAU,CAAC;AAEzD;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,eAAe,GAAG,gBAAgB,CAAC;AAEpG;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACtB;;OAEG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,UAAU,CAAC;AAEtE,MAAM,MAAM,QAAQ,GAAG;IACnB,YAAY,EAAE,YAAY,CAAC;IAC3B,UAAU,EAAI,UAAU,CAAC;IACzB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAI,MAAM,CAAC;IAClB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IACrB,EAAE,EAAE,MAAM,CAAC;IACX;;OAEG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAK,MAAM,EAAE,CAAC;IACnB,IAAI,EAAM,IAAI,CAAC;IACf,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IACxB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAU,MAAM,EAAE,CAAC;IAC3B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED,MAAM,MAAM,QAAQ,GAAG;IACnB,GAAG,EAAE,OAAO,CAAC;IACb,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED,MAAM,MAAM,IAAI,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;AAE9C;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG;IACf,IAAI,EAAE,MAAM,CAAC;IACb,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA"}
1
+ {"version":3,"file":"route-planner-input.d.ts","sourceRoot":"","sources":["../../src/generated/route-planner-input.ts"],"names":[],"mappings":"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"}
@@ -366,7 +366,7 @@ export declare const telemetryEventSchema: {
366
366
  readonly properties: {
367
367
  readonly type: {
368
368
  readonly description: "Telemetry event kind emitted by the orchestrator or provider integration.";
369
- readonly enum: readonly ["route_decided", "attempt_succeeded", "attempt_failed"];
369
+ readonly enum: readonly ["route_decided", "attempt_succeeded", "attempt_failed", "stream_attempt_started", "stream_attempt_succeeded", "stream_attempt_failed", "stream_completed", "stream_failed", "stream_cancelled"];
370
370
  };
371
371
  readonly runId: {
372
372
  readonly description: "Opaque run identifier associated with this execution event.";
@@ -389,7 +389,7 @@ export declare const routePlannerInputSchema: {
389
389
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
390
390
  readonly $id: "https://schemas.inderun.dev/1.0/route-planner-input.schema.json";
391
391
  readonly title: "RoutePlannerInput";
392
- readonly description: "Pure data input contract for deterministic shared-core Mode-1 route planning.";
392
+ readonly description: "Pure data input contract for deterministic shared-core route planning.";
393
393
  readonly type: "object";
394
394
  readonly additionalProperties: true;
395
395
  readonly required: readonly ["task", "constraints", "preferences", "providers"];
@@ -406,6 +406,10 @@ export declare const routePlannerInputSchema: {
406
406
  };
407
407
  };
408
408
  };
409
+ readonly interactionMode: {
410
+ readonly description: "Interaction mode the caller is requesting. Absent means 'run' (Mode 1), so planner inputs produced before this field existed keep their exact Mode-1 semantics. The mode filters eligible providers; it never changes candidate ordering.";
411
+ readonly enum: readonly ["run", "stream"];
412
+ };
409
413
  readonly constraints: {
410
414
  readonly description: "Hard routing constraints evaluated before provider selection.";
411
415
  readonly type: "object";
@@ -464,8 +468,16 @@ export declare const routePlannerInputSchema: {
464
468
  readonly run: {
465
469
  readonly type: "boolean";
466
470
  };
471
+ readonly streaming: {
472
+ readonly description: "Whether the provider statically declares Mode-2 streaming. Absent is treated as false: a descriptor that predates this field cannot be assumed to stream.";
473
+ readonly type: "boolean";
474
+ };
467
475
  };
468
476
  };
477
+ readonly cancel: {
478
+ readonly description: "Cancellation guarantee the provider offers. Carried for route explanations and telemetry; the planner does not filter on it.";
479
+ readonly enum: readonly ["hard", "soft", "none"];
480
+ };
469
481
  readonly tasks: {
470
482
  readonly type: "array";
471
483
  readonly items: {
@@ -505,6 +517,19 @@ export declare const routePlannerInputSchema: {
505
517
  readonly type: "string";
506
518
  readonly minLength: 1;
507
519
  };
520
+ readonly streamingAvailable: {
521
+ readonly description: "Whether the provider can stream right now in this host environment. Absent inherits the static descriptor.supports.streaming value.";
522
+ readonly type: "boolean";
523
+ };
524
+ readonly streamingUnavailableReason: {
525
+ readonly description: "Human-readable explanation used when streamingAvailable is false. Absent lets the planner synthesize a default message.";
526
+ readonly type: "string";
527
+ readonly minLength: 1;
528
+ };
529
+ readonly cancellationAvailable: {
530
+ readonly description: "Whether cancellation is honored right now in this host environment. Absent inherits the static descriptor.cancel value (any value other than 'none' means available).";
531
+ readonly type: "boolean";
532
+ };
508
533
  };
509
534
  };
510
535
  };
@@ -573,7 +598,8 @@ export declare const routePlanSchema: {
573
598
  readonly required: readonly ["code", "message"];
574
599
  readonly properties: {
575
600
  readonly code: {
576
- readonly enum: readonly ["task_not_supported", "run_not_supported", "privacy_constraint", "cloud_constraint", "offline", "capability_unavailable"];
601
+ readonly description: "Normalized rejection reason. 'streaming_not_supported' means the descriptor does not statically declare Mode-2 streaming; 'streaming_unavailable' means it declares streaming but the dynamic capability snapshot reports it cannot stream in the current host environment.";
602
+ readonly enum: readonly ["task_not_supported", "run_not_supported", "streaming_not_supported", "streaming_unavailable", "privacy_constraint", "cloud_constraint", "offline", "capability_unavailable"];
577
603
  };
578
604
  readonly message: {
579
605
  readonly type: "string";
@@ -1002,6 +1028,9 @@ export declare const streamEventSchema: {
1002
1028
  readonly finalText: {
1003
1029
  readonly type: "string";
1004
1030
  };
1031
+ readonly finishReason: {
1032
+ readonly enum: readonly ["stop", "length", "cancelled", "error"];
1033
+ };
1005
1034
  readonly usage: {
1006
1035
  readonly type: "object";
1007
1036
  readonly additionalProperties: true;
@@ -1175,6 +1204,10 @@ export declare const streamTerminalOutcomeSchema: {
1175
1204
  readonly description: "The full, cumulative text produced by the run. Equivalent in role to TaskResult.output.text for Mode 1.";
1176
1205
  readonly type: "string";
1177
1206
  };
1207
+ readonly finishReason: {
1208
+ readonly description: "How generation ended, mirroring TaskResult.finishReason for Mode 1: 'stop' (natural end), 'length' (hit maxOutputTokens), 'error' (provider reported a non-fatal issue on an otherwise completed run). 'cancelled' is included so this enum stays identical to TaskResult.finishReason, but it is unreachable here: cancellation is its own terminal outcome branch. Optional: providers that do not report a finish reason omit it.";
1209
+ readonly enum: readonly ["stop", "length", "cancelled", "error"];
1210
+ };
1178
1211
  readonly usage: {
1179
1212
  readonly description: "Optional metadata regarding the quantity of tokens processed by the provider. Same shape as TaskResult.usage.";
1180
1213
  readonly type: "object";
@@ -1 +1 @@
1
- {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/generated/schemas.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiMpB,CAAC;AAEX,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4GnB,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2DrB,CAAC;AAEX,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4CpB,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCrB,CAAC;AAEX,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsCvB,CAAC;AAEX,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqK1B,CAAC;AAEX,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyHlB,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6KrB,CAAC;AAEX,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiClB,CAAC;AAEX,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAicpB,CAAC;AAEX,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6L9B,CAAC"}
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/generated/schemas.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiMpB,CAAC;AAEX,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4GnB,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2DrB,CAAC;AAEX,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4CpB,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCrB,CAAC;AAEX,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4CvB,CAAC;AAEX,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqM1B,CAAC;AAEX,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4HlB,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6KrB,CAAC;AAEX,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiClB,CAAC;AAEX,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAycpB,CAAC;AAEX,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsM9B,CAAC"}
@@ -463,7 +463,13 @@ export const telemetryEventSchema = {
463
463
  "enum": [
464
464
  "route_decided",
465
465
  "attempt_succeeded",
466
- "attempt_failed"
466
+ "attempt_failed",
467
+ "stream_attempt_started",
468
+ "stream_attempt_succeeded",
469
+ "stream_attempt_failed",
470
+ "stream_completed",
471
+ "stream_failed",
472
+ "stream_cancelled"
467
473
  ]
468
474
  },
469
475
  "runId": {
@@ -487,7 +493,7 @@ export const routePlannerInputSchema = {
487
493
  "$schema": "https://json-schema.org/draft/2020-12/schema",
488
494
  "$id": "https://schemas.inderun.dev/1.0/route-planner-input.schema.json",
489
495
  "title": "RoutePlannerInput",
490
- "description": "Pure data input contract for deterministic shared-core Mode-1 route planning.",
496
+ "description": "Pure data input contract for deterministic shared-core route planning.",
491
497
  "type": "object",
492
498
  "additionalProperties": true,
493
499
  "required": [
@@ -511,6 +517,13 @@ export const routePlannerInputSchema = {
511
517
  }
512
518
  }
513
519
  },
520
+ "interactionMode": {
521
+ "description": "Interaction mode the caller is requesting. Absent means 'run' (Mode 1), so planner inputs produced before this field existed keep their exact Mode-1 semantics. The mode filters eligible providers; it never changes candidate ordering.",
522
+ "enum": [
523
+ "run",
524
+ "stream"
525
+ ]
526
+ },
514
527
  "constraints": {
515
528
  "description": "Hard routing constraints evaluated before provider selection.",
516
529
  "type": "object",
@@ -596,9 +609,21 @@ export const routePlannerInputSchema = {
596
609
  "properties": {
597
610
  "run": {
598
611
  "type": "boolean"
612
+ },
613
+ "streaming": {
614
+ "description": "Whether the provider statically declares Mode-2 streaming. Absent is treated as false: a descriptor that predates this field cannot be assumed to stream.",
615
+ "type": "boolean"
599
616
  }
600
617
  }
601
618
  },
619
+ "cancel": {
620
+ "description": "Cancellation guarantee the provider offers. Carried for route explanations and telemetry; the planner does not filter on it.",
621
+ "enum": [
622
+ "hard",
623
+ "soft",
624
+ "none"
625
+ ]
626
+ },
602
627
  "tasks": {
603
628
  "type": "array",
604
629
  "items": {
@@ -641,6 +666,19 @@ export const routePlannerInputSchema = {
641
666
  "reason": {
642
667
  "type": "string",
643
668
  "minLength": 1
669
+ },
670
+ "streamingAvailable": {
671
+ "description": "Whether the provider can stream right now in this host environment. Absent inherits the static descriptor.supports.streaming value.",
672
+ "type": "boolean"
673
+ },
674
+ "streamingUnavailableReason": {
675
+ "description": "Human-readable explanation used when streamingAvailable is false. Absent lets the planner synthesize a default message.",
676
+ "type": "string",
677
+ "minLength": 1
678
+ },
679
+ "cancellationAvailable": {
680
+ "description": "Whether cancellation is honored right now in this host environment. Absent inherits the static descriptor.cancel value (any value other than 'none' means available).",
681
+ "type": "boolean"
644
682
  }
645
683
  }
646
684
  }
@@ -724,9 +762,12 @@ export const routePlanSchema = {
724
762
  ],
725
763
  "properties": {
726
764
  "code": {
765
+ "description": "Normalized rejection reason. 'streaming_not_supported' means the descriptor does not statically declare Mode-2 streaming; 'streaming_unavailable' means it declares streaming but the dynamic capability snapshot reports it cannot stream in the current host environment.",
727
766
  "enum": [
728
767
  "task_not_supported",
729
768
  "run_not_supported",
769
+ "streaming_not_supported",
770
+ "streaming_unavailable",
730
771
  "privacy_constraint",
731
772
  "cloud_constraint",
732
773
  "offline",
@@ -1241,6 +1282,14 @@ export const streamEventSchema = {
1241
1282
  "finalText": {
1242
1283
  "type": "string"
1243
1284
  },
1285
+ "finishReason": {
1286
+ "enum": [
1287
+ "stop",
1288
+ "length",
1289
+ "cancelled",
1290
+ "error"
1291
+ ]
1292
+ },
1244
1293
  "usage": {
1245
1294
  "type": "object",
1246
1295
  "additionalProperties": true,
@@ -1462,6 +1511,15 @@ export const streamTerminalOutcomeSchema = {
1462
1511
  "description": "The full, cumulative text produced by the run. Equivalent in role to TaskResult.output.text for Mode 1.",
1463
1512
  "type": "string"
1464
1513
  },
1514
+ "finishReason": {
1515
+ "description": "How generation ended, mirroring TaskResult.finishReason for Mode 1: 'stop' (natural end), 'length' (hit maxOutputTokens), 'error' (provider reported a non-fatal issue on an otherwise completed run). 'cancelled' is included so this enum stays identical to TaskResult.finishReason, but it is unreachable here: cancellation is its own terminal outcome branch. Optional: providers that do not report a finish reason omit it.",
1516
+ "enum": [
1517
+ "stop",
1518
+ "length",
1519
+ "cancelled",
1520
+ "error"
1521
+ ]
1522
+ },
1465
1523
  "usage": {
1466
1524
  "description": "Optional metadata regarding the quantity of tokens processed by the provider. Same shape as TaskResult.usage.",
1467
1525
  "type": "object",
@@ -97,6 +97,7 @@ export type Payload = {
97
97
  */
98
98
  phase?: Phase;
99
99
  finalText?: string;
100
+ finishReason?: FinishReason;
100
101
  outcome?: Outcome;
101
102
  runId?: string;
102
103
  schemaVersion?: "1.0";
@@ -120,6 +121,7 @@ export type Error = {
120
121
  [property: string]: unknown;
121
122
  };
122
123
  export type ErrorClass = "CapabilityMismatch" | "Offline" | "AuthError" | "RateLimited" | "Timeout" | "Unavailable" | "Internal";
124
+ export type FinishReason = "stop" | "length" | "cancelled" | "error";
123
125
  export type Outcome = "completed" | "error" | "cancelled";
124
126
  /**
125
127
  * The lifecycle phase reached.
@@ -1 +1 @@
1
- {"version":3,"file":"stream-event.d.ts","sourceRoot":"","sources":["../../src/generated/stream-event.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,WAAW,GAAG;IACtB;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,aAAa,EAAE,KAAK,CAAC;IACrB;;;;;;OAMG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,IAAI,EAAE,MAAM,CAAC;IACb,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED;;;;;;GAMG;AACH,MAAM,MAAM,OAAO,GAAG;IAClB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,KAAK,CAAC,EAAU,KAAK,CAAC;IACtB,SAAS,CAAC,EAAM,MAAM,CAAC;IACvB,OAAO,CAAC,EAAQ,OAAO,CAAC;IACxB,KAAK,CAAC,EAAU,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,KAAK,CAAC;IACtB,SAAS,CAAC,EAAM,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAU,KAAK,CAAC;IACtB,KAAK,CAAC,EAAU,KAAK,CAAC;IACtB,WAAW,CAAC,EAAI,MAAM,CAAC;IACvB,MAAM,CAAC,EAAS,MAAM,CAAC;IACvB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED,MAAM,MAAM,KAAK,GAAG;IAChB,OAAO,CAAC,EAAO;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IAC1C,UAAU,EAAK,UAAU,CAAC;IAC1B,OAAO,EAAQ,MAAM,CAAC;IACtB,UAAU,CAAC,EAAI,MAAM,CAAC;IACtB,SAAS,CAAC,EAAK,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,KAAK,CAAC;IACrB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED,MAAM,MAAM,UAAU,GAAG,oBAAoB,GAAG,SAAS,GAAG,WAAW,GAAG,aAAa,GAAG,SAAS,GAAG,aAAa,GAAG,UAAU,CAAC;AAEjI,MAAM,MAAM,OAAO,GAAG,WAAW,GAAG,OAAO,GAAG,WAAW,CAAC;AAE1D;;GAEG;AACH,MAAM,MAAM,KAAK,GAAG,mBAAmB,GAAG,SAAS,CAAC;AAEpD,MAAM,MAAM,SAAS,GAAG;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAO,MAAM,CAAC;IACrB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED,MAAM,MAAM,KAAK,GAAG;IAChB,WAAW,CAAC,EAAG,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAG,MAAM,CAAC;IACtB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA"}
1
+ {"version":3,"file":"stream-event.d.ts","sourceRoot":"","sources":["../../src/generated/stream-event.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,WAAW,GAAG;IACtB;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,aAAa,EAAE,KAAK,CAAC;IACrB;;;;;;OAMG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,IAAI,EAAE,MAAM,CAAC;IACb,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED;;;;;;GAMG;AACH,MAAM,MAAM,OAAO,GAAG;IAClB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,KAAK,CAAC,EAAU,KAAK,CAAC;IACtB,SAAS,CAAC,EAAM,MAAM,CAAC;IACvB,YAAY,CAAC,EAAG,YAAY,CAAC;IAC7B,OAAO,CAAC,EAAQ,OAAO,CAAC;IACxB,KAAK,CAAC,EAAU,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,KAAK,CAAC;IACtB,SAAS,CAAC,EAAM,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAU,KAAK,CAAC;IACtB,KAAK,CAAC,EAAU,KAAK,CAAC;IACtB,WAAW,CAAC,EAAI,MAAM,CAAC;IACvB,MAAM,CAAC,EAAS,MAAM,CAAC;IACvB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED,MAAM,MAAM,KAAK,GAAG;IAChB,OAAO,CAAC,EAAO;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IAC1C,UAAU,EAAK,UAAU,CAAC;IAC1B,OAAO,EAAQ,MAAM,CAAC;IACtB,UAAU,CAAC,EAAI,MAAM,CAAC;IACtB,SAAS,CAAC,EAAK,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,KAAK,CAAC;IACrB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED,MAAM,MAAM,UAAU,GAAG,oBAAoB,GAAG,SAAS,GAAG,WAAW,GAAG,aAAa,GAAG,SAAS,GAAG,aAAa,GAAG,UAAU,CAAC;AAEjI,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,OAAO,CAAC;AAErE,MAAM,MAAM,OAAO,GAAG,WAAW,GAAG,OAAO,GAAG,WAAW,CAAC;AAE1D;;GAEG;AACH,MAAM,MAAM,KAAK,GAAG,mBAAmB,GAAG,SAAS,CAAC;AAEpD,MAAM,MAAM,SAAS,GAAG;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAO,MAAM,CAAC;IACrB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED,MAAM,MAAM,KAAK,GAAG;IAChB,WAAW,CAAC,EAAG,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAG,MAAM,CAAC;IACtB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA"}
@@ -21,6 +21,14 @@ export type StreamTerminalOutcome = {
21
21
  * TaskResult.output.text for Mode 1.
22
22
  */
23
23
  finalText?: string;
24
+ /**
25
+ * How generation ended, mirroring TaskResult.finishReason for Mode 1: 'stop' (natural end),
26
+ * 'length' (hit maxOutputTokens), 'error' (provider reported a non-fatal issue on an
27
+ * otherwise completed run). 'cancelled' is included so this enum stays identical to
28
+ * TaskResult.finishReason, but it is unreachable here: cancellation is its own terminal
29
+ * outcome branch. Optional: providers that do not report a finish reason omit it.
30
+ */
31
+ finishReason?: FinishReason;
24
32
  /**
25
33
  * The stream completed normally: every provider-generated event was delivered before this
26
34
  * outcome was produced.
@@ -125,6 +133,14 @@ export type Error = {
125
133
  * (unexpected engine-side failure).
126
134
  */
127
135
  export type ErrorClass = "CapabilityMismatch" | "Offline" | "AuthError" | "RateLimited" | "Timeout" | "Unavailable" | "Internal";
136
+ /**
137
+ * How generation ended, mirroring TaskResult.finishReason for Mode 1: 'stop' (natural end),
138
+ * 'length' (hit maxOutputTokens), 'error' (provider reported a non-fatal issue on an
139
+ * otherwise completed run). 'cancelled' is included so this enum stays identical to
140
+ * TaskResult.finishReason, but it is unreachable here: cancellation is its own terminal
141
+ * outcome branch. Optional: providers that do not report a finish reason omit it.
142
+ */
143
+ export type FinishReason = "stop" | "length" | "cancelled" | "error";
128
144
  export type Outcome = "completed" | "error" | "cancelled";
129
145
  /**
130
146
  * Required metadata providing an overview of the execution result and performance metrics.
@@ -1 +1 @@
1
- {"version":3,"file":"stream-terminal-outcome.d.ts","sourceRoot":"","sources":["../../src/generated/stream-terminal-outcome.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAChC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;;;OASG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,aAAa,EAAE,KAAK,CAAC;IACrB;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;OAGG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IACd;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IACd;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED;;;;;;GAMG;AACH,MAAM,MAAM,KAAK,GAAG;IAChB;;OAEG;IACH,OAAO,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IACrC;;;;;;OAMG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,aAAa,EAAE,KAAK,CAAC;IACrB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,GAAG,oBAAoB,GAAG,SAAS,GAAG,WAAW,GAAG,aAAa,GAAG,SAAS,GAAG,aAAa,GAAG,UAAU,CAAC;AAEjI,MAAM,MAAM,OAAO,GAAG,WAAW,GAAG,OAAO,GAAG,WAAW,CAAC;AAE1D;;;GAGG;AACH,MAAM,MAAM,SAAS,GAAG;IACpB;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,KAAK,GAAG;IAChB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA"}
1
+ {"version":3,"file":"stream-terminal-outcome.d.ts","sourceRoot":"","sources":["../../src/generated/stream-terminal-outcome.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAChC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B;;;;;;;;;OASG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,aAAa,EAAE,KAAK,CAAC;IACrB;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;OAGG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IACd;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IACd;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED;;;;;;GAMG;AACH,MAAM,MAAM,KAAK,GAAG;IAChB;;OAEG;IACH,OAAO,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IACrC;;;;;;OAMG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,aAAa,EAAE,KAAK,CAAC;IACrB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,GAAG,oBAAoB,GAAG,SAAS,GAAG,WAAW,GAAG,aAAa,GAAG,SAAS,GAAG,aAAa,GAAG,UAAU,CAAC;AAEjI;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,OAAO,CAAC;AAErE,MAAM,MAAM,OAAO,GAAG,WAAW,GAAG,OAAO,GAAG,WAAW,CAAC;AAE1D;;;GAGG;AACH,MAAM,MAAM,SAAS,GAAG;IACpB;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,KAAK,GAAG;IAChB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA"}
@@ -25,5 +25,5 @@ export type TelemetryEvent = {
25
25
  /**
26
26
  * Telemetry event kind emitted by the orchestrator or provider integration.
27
27
  */
28
- export type Type = "route_decided" | "attempt_succeeded" | "attempt_failed";
28
+ export type Type = "route_decided" | "attempt_succeeded" | "attempt_failed" | "stream_attempt_started" | "stream_attempt_succeeded" | "stream_attempt_failed" | "stream_completed" | "stream_failed" | "stream_cancelled";
29
29
  //# sourceMappingURL=telemetry-event.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry-event.d.ts","sourceRoot":"","sources":["../../src/generated/telemetry-event.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IACzB;;OAEG;IACH,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IACpC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,IAAI,EAAE,IAAI,CAAC;IACX,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG,eAAe,GAAG,mBAAmB,GAAG,gBAAgB,CAAC"}
1
+ {"version":3,"file":"telemetry-event.d.ts","sourceRoot":"","sources":["../../src/generated/telemetry-event.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IACzB;;OAEG;IACH,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IACpC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,IAAI,EAAE,IAAI,CAAC;IACX,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG,eAAe,GAAG,mBAAmB,GAAG,gBAAgB,GAAG,wBAAwB,GAAG,0BAA0B,GAAG,uBAAuB,GAAG,kBAAkB,GAAG,eAAe,GAAG,kBAAkB,CAAC"}
package/dist/host.d.ts CHANGED
@@ -67,6 +67,85 @@ export interface HttpClientService {
67
67
  */
68
68
  send(request: HttpRequest): Promise<HttpResponse>;
69
69
  }
70
+ /**
71
+ * The structural subset of the standard `AbortSignal` that IndeRun relies on.
72
+ *
73
+ * The contracts package targets a platform-neutral library surface and so has
74
+ * no DOM lib; a real `AbortSignal` satisfies this shape, so host implementations
75
+ * and callers can pass one directly.
76
+ */
77
+ export interface AbortSignalLike {
78
+ /**
79
+ * Whether cancellation has already been requested.
80
+ */
81
+ readonly aborted: boolean;
82
+ /**
83
+ * Registers a cancellation listener.
84
+ */
85
+ addEventListener(type: "abort", listener: () => void, options?: {
86
+ once?: boolean;
87
+ }): void;
88
+ /**
89
+ * Removes a previously registered cancellation listener.
90
+ */
91
+ removeEventListener(type: "abort", listener: () => void): void;
92
+ }
93
+ /**
94
+ * A streamed HTTP response: the status line and headers are resolved first, and
95
+ * the body is delivered incrementally as raw byte chunks.
96
+ *
97
+ * The head is deliberately separated from the body so a caller can classify a
98
+ * non-2xx response (mapping it through the normal HTTP error taxonomy) before
99
+ * deciding to interpret the body as a protocol stream. Chunk boundaries are
100
+ * transport artifacts and carry no meaning: a chunk may split a protocol frame
101
+ * or even a multi-byte UTF-8 sequence, so consumers must buffer and decode
102
+ * incrementally rather than treating a chunk as a unit.
103
+ */
104
+ export interface HttpStreamResponse {
105
+ /**
106
+ * HTTP status code.
107
+ */
108
+ status: number;
109
+ /**
110
+ * HTTP status text.
111
+ */
112
+ statusText: string;
113
+ /**
114
+ * Response headers, with lower-cased names.
115
+ */
116
+ headers: Record<string, string>;
117
+ /**
118
+ * The response body as an incremental sequence of raw byte chunks. Iterating
119
+ * it to completion, or abandoning it, releases the underlying connection.
120
+ */
121
+ body: AsyncIterable<Uint8Array>;
122
+ }
123
+ /**
124
+ * Optional host capability for HTTP responses that must be consumed while they
125
+ * are still arriving — the transport requirement behind Mode 2 streaming over
126
+ * the network (for example server-sent events).
127
+ *
128
+ * It is a separate service rather than a method on {@link HttpClientService}
129
+ * because it is genuinely optional: a host that cannot stream simply omits it,
130
+ * and providers report that as `streamingAvailable: false` in their dynamic
131
+ * capabilities, which the route planner turns into an inspectable
132
+ * `streaming_unavailable` rejection.
133
+ */
134
+ export interface HttpStreamingClientService {
135
+ /**
136
+ * Dispatches a normalized HTTP request and resolves once the response head is
137
+ * available, leaving the body to be consumed incrementally.
138
+ *
139
+ * `HttpRequest.timeoutMs` bounds the wait for the response head only — the
140
+ * time to first byte. It cannot bound total duration, since a stream is
141
+ * open-ended by nature; use `signal` to stop a stream that runs too long.
142
+ *
143
+ * @param request - Normalized HTTP request payload.
144
+ * @param signal - Optional caller-driven cancellation. Aborting it must tear
145
+ * down the underlying connection and cause the body iterator to stop.
146
+ */
147
+ stream(request: HttpRequest, signal?: AbortSignalLike): Promise<HttpStreamResponse>;
148
+ }
70
149
  export type TelemetryEventType = TelemetryEvent["type"];
71
150
  /**
72
151
  * Telemetry service listener hook interface.
@@ -103,6 +182,11 @@ export interface HostServices {
103
182
  * HTTP Client service for performing network requests.
104
183
  */
105
184
  httpClient?: HttpClientService;
185
+ /**
186
+ * HTTP client service for responses consumed while still arriving. Absent on
187
+ * hosts that cannot stream a response body.
188
+ */
189
+ streamingHttpClient?: HttpStreamingClientService;
106
190
  /**
107
191
  * Telemetry service to monitor execution steps, latency, and success rates.
108
192
  */
@@ -1 +1 @@
1
- {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../src/host.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtF;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;AAEvE;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,eAAe,CAAC,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC;IAC1C;;OAEG;IACH,qBAAqB,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CAC5C;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAClD;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,GAAG,IAAI,MAAM,CAAC;IACd;;OAEG;IACH,YAAY,CAAC,IAAI,MAAM,CAAC;CACzB;AAED,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtF;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CACnD;AAED,MAAM,MAAM,kBAAkB,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,IAAI,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;CACnC;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,YAAY,EAAE,mBAAmB,CAAC;IAClC;;OAEG;IACH,iBAAiB,CAAC,EAAE,wBAAwB,CAAC;IAC7C;;OAEG;IACH,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC;;OAEG;IACH,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB;;OAEG;IACH,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B;;OAEG;IACH,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B"}
1
+ {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../src/host.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -2,5 +2,5 @@ export type * from "./generated/index.js";
2
2
  export { httpRequestSchema, httpResponseSchema, inderunErrorSchema, modelPackageSchema, routePlanSchema, routePlannerInputSchema, streamEventSchema, streamRunSchema, streamTerminalOutcomeSchema, taskRequestSchema, taskResultSchema, telemetryEventSchema } from "./generated/index.js";
3
3
  export { getHttpRequestValidationIssues, getHttpResponseValidationIssues, getIndeRunErrorValidationIssues, getModelPackageValidationIssues, getRoutePlanValidationIssues, getRoutePlannerInputValidationIssues, getStreamEventValidationIssues, getStreamRunHandleValidationIssues, getStreamTerminalOutcomeValidationIssues, getTaskRequestValidationIssues, getTaskResultValidationIssues, getTelemetryEventValidationIssues, validateHttpRequest, validateHttpResponse, validateIndeRunError, validateModelPackage, validateRoutePlan, validateRoutePlannerInput, validateStreamEvent, validateStreamRunHandle, validateStreamTerminalOutcome, validateTaskRequest, validateTaskResult, validateTelemetryEvent, type ValidationIssue } from "./validators.js";
4
4
  export type { FinishReason, IndeRunErrorClass, ModelPackageFormat, ModelSourceType, SchemaVersion, SharedRoutePlan, SharedRoutePlannerInput, TaskKind, RoutingConstraints, RoutingPreferences } from "./types.js";
5
- export type { ConnectivityService, ThermalState, DeviceConstraintsService, SecureStorageService, ClockService, HttpClientService, TelemetryEventType, TelemetryService, HostServices } from "./host.js";
5
+ export type { AbortSignalLike, ConnectivityService, ThermalState, DeviceConstraintsService, SecureStorageService, ClockService, HttpClientService, HttpStreamResponse, HttpStreamingClientService, TelemetryEventType, TelemetryService, HostServices } from "./host.js";
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,sBAAsB,CAAC;AAC1C,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,uBAAuB,EACvB,iBAAiB,EACjB,eAAe,EACf,2BAA2B,EAC3B,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,8BAA8B,EAC9B,+BAA+B,EAC/B,+BAA+B,EAC/B,+BAA+B,EAC/B,4BAA4B,EAC5B,oCAAoC,EACpC,8BAA8B,EAC9B,kCAAkC,EAClC,wCAAwC,EACxC,8BAA8B,EAC9B,6BAA6B,EAC7B,iCAAiC,EACjC,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,yBAAyB,EACzB,mBAAmB,EACnB,uBAAuB,EACvB,6BAA6B,EAC7B,mBAAmB,EACnB,kBAAkB,EAClB,sBAAsB,EACtB,KAAK,eAAe,EACrB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,eAAe,EACf,uBAAuB,EACvB,QAAQ,EACR,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,mBAAmB,EACnB,YAAY,EACZ,wBAAwB,EACxB,oBAAoB,EACpB,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACb,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,sBAAsB,CAAC;AAC1C,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,uBAAuB,EACvB,iBAAiB,EACjB,eAAe,EACf,2BAA2B,EAC3B,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,8BAA8B,EAC9B,+BAA+B,EAC/B,+BAA+B,EAC/B,+BAA+B,EAC/B,4BAA4B,EAC5B,oCAAoC,EACpC,8BAA8B,EAC9B,kCAAkC,EAClC,wCAAwC,EACxC,8BAA8B,EAC9B,6BAA6B,EAC7B,iCAAiC,EACjC,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,yBAAyB,EACzB,mBAAmB,EACnB,uBAAuB,EACvB,6BAA6B,EAC7B,mBAAmB,EACnB,kBAAkB,EAClB,sBAAsB,EACtB,KAAK,eAAe,EACrB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,eAAe,EACf,uBAAuB,EACvB,QAAQ,EACR,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,wBAAwB,EACxB,oBAAoB,EACpB,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,0BAA0B,EAC1B,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACb,MAAM,WAAW,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@independo/inderun-contracts",
3
- "version": "0.3.0-dev.1",
3
+ "version": "0.3.0-dev.11",
4
4
  "description": "Canonical JSON Schemas, generated TypeScript types, and validators for IndeRun contracts.",
5
5
  "license": "MIT",
6
6
  "author": {
@@ -45,8 +45,8 @@
45
45
  "ajv": "^8.20.0"
46
46
  },
47
47
  "devDependencies": {
48
- "@types/node": "^26.2.0",
49
- "vitest": "^4.1.10"
48
+ "@types/node": "^26.4.0",
49
+ "vitest": "^4.1.11"
50
50
  },
51
51
  "scripts": {
52
52
  "build": "tsc -p tsconfig.json",