@independo/inderun-contracts 0.3.0-dev.4 → 0.3.0-dev.5

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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"}
@@ -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";
@@ -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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4CvB,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAicpB,CAAC;AAEX,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6L9B,CAAC"}
@@ -493,7 +493,7 @@ export const routePlannerInputSchema = {
493
493
  "$schema": "https://json-schema.org/draft/2020-12/schema",
494
494
  "$id": "https://schemas.inderun.dev/1.0/route-planner-input.schema.json",
495
495
  "title": "RoutePlannerInput",
496
- "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.",
497
497
  "type": "object",
498
498
  "additionalProperties": true,
499
499
  "required": [
@@ -517,6 +517,13 @@ export const routePlannerInputSchema = {
517
517
  }
518
518
  }
519
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
+ },
520
527
  "constraints": {
521
528
  "description": "Hard routing constraints evaluated before provider selection.",
522
529
  "type": "object",
@@ -602,9 +609,21 @@ export const routePlannerInputSchema = {
602
609
  "properties": {
603
610
  "run": {
604
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"
605
616
  }
606
617
  }
607
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
+ },
608
627
  "tasks": {
609
628
  "type": "array",
610
629
  "items": {
@@ -647,6 +666,19 @@ export const routePlannerInputSchema = {
647
666
  "reason": {
648
667
  "type": "string",
649
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"
650
682
  }
651
683
  }
652
684
  }
@@ -730,9 +762,12 @@ export const routePlanSchema = {
730
762
  ],
731
763
  "properties": {
732
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.",
733
766
  "enum": [
734
767
  "task_not_supported",
735
768
  "run_not_supported",
769
+ "streaming_not_supported",
770
+ "streaming_unavailable",
736
771
  "privacy_constraint",
737
772
  "cloud_constraint",
738
773
  "offline",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@independo/inderun-contracts",
3
- "version": "0.3.0-dev.4",
3
+ "version": "0.3.0-dev.5",
4
4
  "description": "Canonical JSON Schemas, generated TypeScript types, and validators for IndeRun contracts.",
5
5
  "license": "MIT",
6
6
  "author": {