@crewhaus/spec 0.1.8 → 0.2.0

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.
Files changed (3) hide show
  1. package/dist/index.d.ts +2450 -188
  2. package/dist/index.js +235 -3
  3. package/package.json +2 -2
package/dist/index.d.ts CHANGED
@@ -65,6 +65,93 @@ declare const subAgentDefinitionSchema: z.ZodObject<{
65
65
  } | undefined;
66
66
  inherit_bypass?: boolean | undefined;
67
67
  }>;
68
+ /**
69
+ * Item 22 — spec-declared provider failover chain, on the agent blocks of
70
+ * the shapes whose emitted runtime calls `runChatLoop` with a single
71
+ * primary model (cli, channel, managed today).
72
+ *
73
+ * `model_fallbacks` is an ordered list of model strings tried when the
74
+ * primary's circuit breaker is open — each entry follows the SAME
75
+ * model-string grammar as `agent.model` (`claude-*`, `openai/*`,
76
+ * `bedrock/*`, `groq/*`, …; validated like `agent.model` at parse time,
77
+ * with the full grammar enforced by the model-router when resolved).
78
+ * Cross-provider fallbacks resolve their own credentials lazily via the
79
+ * normal model-router path — a fallback with a missing key warns at boot
80
+ * and is skipped when tried, never hard-failing the run.
81
+ *
82
+ * `circuit_breaker` tunes the per-candidate breakers. Field names mirror
83
+ * `CircuitBreakerOptions` in `@crewhaus/circuit-breaker` exactly
84
+ * (failureThreshold / windowMs / cooldownMs); package defaults (5 failures
85
+ * / 60s window / 30s cooldown) apply per field when omitted. Declaring
86
+ * `circuit_breaker` WITHOUT `model_fallbacks` is valid: the primary
87
+ * adapter alone gets breaker-wrapped (fail-fast on a degraded provider
88
+ * instead of hammering it).
89
+ */
90
+ declare const modelFallbacksBlock: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
91
+ declare const circuitBreakerBlock: z.ZodOptional<z.ZodObject<{
92
+ /** Consecutive failures inside windowMs that trip the breaker. */
93
+ failureThreshold: z.ZodOptional<z.ZodNumber>;
94
+ /** Window for counting consecutive failures (ms). */
95
+ windowMs: z.ZodOptional<z.ZodNumber>;
96
+ /** How long the breaker stays open before allowing a probe (ms). */
97
+ cooldownMs: z.ZodOptional<z.ZodNumber>;
98
+ }, "strict", z.ZodTypeAny, {
99
+ failureThreshold?: number | undefined;
100
+ windowMs?: number | undefined;
101
+ cooldownMs?: number | undefined;
102
+ }, {
103
+ failureThreshold?: number | undefined;
104
+ windowMs?: number | undefined;
105
+ cooldownMs?: number | undefined;
106
+ }>>;
107
+ /**
108
+ * Item 26 — opt-in two-tier turn-difficulty router. When present, the runtime
109
+ * picks a model tier PER TURN from deterministic signals (estimated context
110
+ * tokens, whether tools are in play, turn index, prior-turn tool_use density):
111
+ * the cheap `fast` model for easy turns, the `default` model for hard ones. A
112
+ * fast-tier turn that FAILS re-runs on `default` (misroute recovery). Both are
113
+ * full model-router grammar strings. `routing` tunes the escalation thresholds
114
+ * (all optional — sensible defaults apply). Omitted entirely → single-model
115
+ * behaviour, byte-identical bundles.
116
+ */
117
+ declare const modelTiersBlock: z.ZodOptional<z.ZodObject<{
118
+ fast: z.ZodString;
119
+ default: z.ZodString;
120
+ routing: z.ZodOptional<z.ZodObject<{
121
+ contextTokenThreshold: z.ZodOptional<z.ZodNumber>;
122
+ toolsToDefault: z.ZodOptional<z.ZodBoolean>;
123
+ firstTurnToDefault: z.ZodOptional<z.ZodBoolean>;
124
+ priorToolDensityThreshold: z.ZodOptional<z.ZodNumber>;
125
+ }, "strict", z.ZodTypeAny, {
126
+ contextTokenThreshold?: number | undefined;
127
+ toolsToDefault?: boolean | undefined;
128
+ firstTurnToDefault?: boolean | undefined;
129
+ priorToolDensityThreshold?: number | undefined;
130
+ }, {
131
+ contextTokenThreshold?: number | undefined;
132
+ toolsToDefault?: boolean | undefined;
133
+ firstTurnToDefault?: boolean | undefined;
134
+ priorToolDensityThreshold?: number | undefined;
135
+ }>>;
136
+ }, "strict", z.ZodTypeAny, {
137
+ default: string;
138
+ fast: string;
139
+ routing?: {
140
+ contextTokenThreshold?: number | undefined;
141
+ toolsToDefault?: boolean | undefined;
142
+ firstTurnToDefault?: boolean | undefined;
143
+ priorToolDensityThreshold?: number | undefined;
144
+ } | undefined;
145
+ }, {
146
+ default: string;
147
+ fast: string;
148
+ routing?: {
149
+ contextTokenThreshold?: number | undefined;
150
+ toolsToDefault?: boolean | undefined;
151
+ firstTurnToDefault?: boolean | undefined;
152
+ priorToolDensityThreshold?: number | undefined;
153
+ } | undefined;
154
+ }>>;
68
155
  /**
69
156
  * Section 17 — optional override for the model used by
70
157
  * `compaction-autocompact` when summarising long conversations. Defaults
@@ -185,43 +272,94 @@ declare const securityBlock: z.ZodOptional<z.ZodObject<{
185
272
  declare const failureTaxonomyEntrySchema: z.ZodObject<{
186
273
  class: z.ZodString;
187
274
  pattern: z.ZodString;
188
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
275
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
189
276
  hint: z.ZodOptional<z.ZodString>;
190
277
  }, "strict", z.ZodTypeAny, {
191
278
  pattern: string;
192
279
  class: string;
193
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
280
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
194
281
  hint?: string | undefined;
195
282
  }, {
196
283
  pattern: string;
197
284
  class: string;
198
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
285
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
199
286
  hint?: string | undefined;
200
287
  }>;
201
288
  declare const failureTaxonomyBlock: z.ZodOptional<z.ZodArray<z.ZodObject<{
202
289
  class: z.ZodString;
203
290
  pattern: z.ZodString;
204
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
291
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
205
292
  hint: z.ZodOptional<z.ZodString>;
206
293
  }, "strict", z.ZodTypeAny, {
207
294
  pattern: string;
208
295
  class: string;
209
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
296
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
210
297
  hint?: string | undefined;
211
298
  }, {
212
299
  pattern: string;
213
300
  class: string;
214
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
301
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
215
302
  hint?: string | undefined;
216
303
  }>, "many">>;
304
+ /**
305
+ * Item 27 — run-level spend cap with a degradation ladder. Generalizes the
306
+ * optimizer's `--budget-usd` to normal runs. `usd` is the dollar ceiling;
307
+ * when the run's accrued spend reaches it, `on_exceed` decides:
308
+ * - `{ action: "stop" }` — end the run cleanly before the next turn.
309
+ * - `{ action: "degrade", model }` — re-resolve the primary model to the
310
+ * cheaper `model` (one rung) and continue; a later breach on the
311
+ * degraded model stops the run.
312
+ * The check is PRE-TURN (beside compaction), so an in-flight turn always
313
+ * completes. Carried on the same interactive shapes as the failover chain
314
+ * (cli, channel, managed). `on_exceed.model` follows the agent.model
315
+ * grammar. Defaults to `{ action: "stop" }` when `on_exceed` is omitted.
316
+ */
317
+ declare const budgetBlock: z.ZodOptional<z.ZodObject<{
318
+ usd: z.ZodNumber;
319
+ on_exceed: z.ZodDefault<z.ZodDiscriminatedUnion<"action", [z.ZodObject<{
320
+ action: z.ZodLiteral<"stop">;
321
+ }, "strict", z.ZodTypeAny, {
322
+ action: "stop";
323
+ }, {
324
+ action: "stop";
325
+ }>, z.ZodObject<{
326
+ action: z.ZodLiteral<"degrade">;
327
+ model: z.ZodString;
328
+ }, "strict", z.ZodTypeAny, {
329
+ model: string;
330
+ action: "degrade";
331
+ }, {
332
+ model: string;
333
+ action: "degrade";
334
+ }>]>>;
335
+ }, "strict", z.ZodTypeAny, {
336
+ usd: number;
337
+ on_exceed: {
338
+ action: "stop";
339
+ } | {
340
+ model: string;
341
+ action: "degrade";
342
+ };
343
+ }, {
344
+ usd: number;
345
+ on_exceed?: {
346
+ action: "stop";
347
+ } | {
348
+ model: string;
349
+ action: "degrade";
350
+ } | undefined;
351
+ }>>;
217
352
  /**
218
353
  * Response-feedback block — declares that a harness collects human ratings on
219
354
  * agent responses (thumbs/stars/scale/comment) which `crewhaus distill` turns
220
355
  * into eval datasets + graders. Cross-cutting like security: carried on the
221
356
  * interactive shapes that consume it (cli, channel). `channelReactions` gates
222
357
  * codegen of Slack 👍/👎 → feedback in the channel target; `modality`/`storage`
223
- * configure the capture surfaces; `autoDistill` is a forward-looking flag for a
224
- * continuous flywheel. `.strict()` so a typo'd sub-key fails the build.
358
+ * configure the capture surfaces; `autoDistill` turns accumulated ratings into
359
+ * versioned `<name>-ratings` registry datasets at CLI run teardown (item 1);
360
+ * `exitPrompt` gates the one-keystroke REPL exit rating prompt (default on
361
+ * when the block is present; set `false` to keep capture surfaces without the
362
+ * prompt). `.strict()` so a typo'd sub-key fails the build.
225
363
  */
226
364
  declare const feedbackBlock: z.ZodOptional<z.ZodObject<{
227
365
  enabled: z.ZodOptional<z.ZodBoolean>;
@@ -244,6 +382,7 @@ declare const feedbackBlock: z.ZodOptional<z.ZodObject<{
244
382
  location: string;
245
383
  }>>;
246
384
  autoDistill: z.ZodOptional<z.ZodBoolean>;
385
+ exitPrompt: z.ZodOptional<z.ZodBoolean>;
247
386
  channelReactions: z.ZodOptional<z.ZodBoolean>;
248
387
  }, "strict", z.ZodTypeAny, {
249
388
  modality: "binary" | "stars" | "scale" | "comment";
@@ -256,6 +395,7 @@ declare const feedbackBlock: z.ZodOptional<z.ZodObject<{
256
395
  location: string;
257
396
  } | undefined;
258
397
  autoDistill?: boolean | undefined;
398
+ exitPrompt?: boolean | undefined;
259
399
  channelReactions?: boolean | undefined;
260
400
  }, {
261
401
  enabled?: boolean | undefined;
@@ -268,15 +408,101 @@ declare const feedbackBlock: z.ZodOptional<z.ZodObject<{
268
408
  location: string;
269
409
  } | undefined;
270
410
  autoDistill?: boolean | undefined;
411
+ exitPrompt?: boolean | undefined;
271
412
  channelReactions?: boolean | undefined;
272
413
  }>>;
414
+ /**
415
+ * Feature #53 — cross-session memory block. Its mere presence wires the
416
+ * Remember/Recall tools into the harness (no hand-editing). The auto-*
417
+ * switches layer on top: `autoCapture` summarizes the session's durable
418
+ * outcomes into `.crewhaus/memories/<name>.jsonl` at run teardown;
419
+ * `autoRecall` injects the top-`recallK` relevant memories into the system
420
+ * prompt at session start (mirrors project-memory auto-load). Carried on the
421
+ * interactive shapes that run a chat loop (cli, channel, managed, research).
422
+ * `.strict()` so a typo'd sub-key fails the build.
423
+ */
424
+ declare const memoryBlock: z.ZodOptional<z.ZodObject<{
425
+ enabled: z.ZodOptional<z.ZodBoolean>;
426
+ autoCapture: z.ZodOptional<z.ZodBoolean>;
427
+ autoCaptureThreshold: z.ZodOptional<z.ZodNumber>;
428
+ autoRecall: z.ZodOptional<z.ZodBoolean>;
429
+ recallK: z.ZodOptional<z.ZodNumber>;
430
+ }, "strict", z.ZodTypeAny, {
431
+ enabled?: boolean | undefined;
432
+ autoCapture?: boolean | undefined;
433
+ autoCaptureThreshold?: number | undefined;
434
+ autoRecall?: boolean | undefined;
435
+ recallK?: number | undefined;
436
+ }, {
437
+ enabled?: boolean | undefined;
438
+ autoCapture?: boolean | undefined;
439
+ autoCaptureThreshold?: number | undefined;
440
+ autoRecall?: boolean | undefined;
441
+ recallK?: number | undefined;
442
+ }>>;
273
443
  declare const cliSchema: z.ZodObject<{
274
444
  name: z.ZodString;
445
+ version: z.ZodOptional<z.ZodNumber>;
275
446
  target: z.ZodLiteral<"cli">;
276
447
  agent: z.ZodObject<{
277
448
  model: z.ZodString;
278
449
  instructions: z.ZodString;
279
450
  max_tokens: z.ZodOptional<z.ZodNumber>;
451
+ model_fallbacks: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
452
+ circuit_breaker: z.ZodOptional<z.ZodObject<{
453
+ /** Consecutive failures inside windowMs that trip the breaker. */
454
+ failureThreshold: z.ZodOptional<z.ZodNumber>;
455
+ /** Window for counting consecutive failures (ms). */
456
+ windowMs: z.ZodOptional<z.ZodNumber>;
457
+ /** How long the breaker stays open before allowing a probe (ms). */
458
+ cooldownMs: z.ZodOptional<z.ZodNumber>;
459
+ }, "strict", z.ZodTypeAny, {
460
+ failureThreshold?: number | undefined;
461
+ windowMs?: number | undefined;
462
+ cooldownMs?: number | undefined;
463
+ }, {
464
+ failureThreshold?: number | undefined;
465
+ windowMs?: number | undefined;
466
+ cooldownMs?: number | undefined;
467
+ }>>;
468
+ model_tiers: z.ZodOptional<z.ZodObject<{
469
+ fast: z.ZodString;
470
+ default: z.ZodString;
471
+ routing: z.ZodOptional<z.ZodObject<{
472
+ contextTokenThreshold: z.ZodOptional<z.ZodNumber>;
473
+ toolsToDefault: z.ZodOptional<z.ZodBoolean>;
474
+ firstTurnToDefault: z.ZodOptional<z.ZodBoolean>;
475
+ priorToolDensityThreshold: z.ZodOptional<z.ZodNumber>;
476
+ }, "strict", z.ZodTypeAny, {
477
+ contextTokenThreshold?: number | undefined;
478
+ toolsToDefault?: boolean | undefined;
479
+ firstTurnToDefault?: boolean | undefined;
480
+ priorToolDensityThreshold?: number | undefined;
481
+ }, {
482
+ contextTokenThreshold?: number | undefined;
483
+ toolsToDefault?: boolean | undefined;
484
+ firstTurnToDefault?: boolean | undefined;
485
+ priorToolDensityThreshold?: number | undefined;
486
+ }>>;
487
+ }, "strict", z.ZodTypeAny, {
488
+ default: string;
489
+ fast: string;
490
+ routing?: {
491
+ contextTokenThreshold?: number | undefined;
492
+ toolsToDefault?: boolean | undefined;
493
+ firstTurnToDefault?: boolean | undefined;
494
+ priorToolDensityThreshold?: number | undefined;
495
+ } | undefined;
496
+ }, {
497
+ default: string;
498
+ fast: string;
499
+ routing?: {
500
+ contextTokenThreshold?: number | undefined;
501
+ toolsToDefault?: boolean | undefined;
502
+ firstTurnToDefault?: boolean | undefined;
503
+ priorToolDensityThreshold?: number | undefined;
504
+ } | undefined;
505
+ }>>;
280
506
  sub_agents: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
281
507
  description: z.ZodString;
282
508
  instructions: z.ZodString;
@@ -318,6 +544,22 @@ declare const cliSchema: z.ZodObject<{
318
544
  instructions: string;
319
545
  model: string;
320
546
  max_tokens?: number | undefined;
547
+ model_fallbacks?: string[] | undefined;
548
+ circuit_breaker?: {
549
+ failureThreshold?: number | undefined;
550
+ windowMs?: number | undefined;
551
+ cooldownMs?: number | undefined;
552
+ } | undefined;
553
+ model_tiers?: {
554
+ default: string;
555
+ fast: string;
556
+ routing?: {
557
+ contextTokenThreshold?: number | undefined;
558
+ toolsToDefault?: boolean | undefined;
559
+ firstTurnToDefault?: boolean | undefined;
560
+ priorToolDensityThreshold?: number | undefined;
561
+ } | undefined;
562
+ } | undefined;
321
563
  sub_agents?: Record<string, {
322
564
  description: string;
323
565
  instructions: string;
@@ -333,6 +575,22 @@ declare const cliSchema: z.ZodObject<{
333
575
  instructions: string;
334
576
  model: string;
335
577
  max_tokens?: number | undefined;
578
+ model_fallbacks?: string[] | undefined;
579
+ circuit_breaker?: {
580
+ failureThreshold?: number | undefined;
581
+ windowMs?: number | undefined;
582
+ cooldownMs?: number | undefined;
583
+ } | undefined;
584
+ model_tiers?: {
585
+ default: string;
586
+ fast: string;
587
+ routing?: {
588
+ contextTokenThreshold?: number | undefined;
589
+ toolsToDefault?: boolean | undefined;
590
+ firstTurnToDefault?: boolean | undefined;
591
+ priorToolDensityThreshold?: number | undefined;
592
+ } | undefined;
593
+ } | undefined;
336
594
  sub_agents?: Record<string, {
337
595
  description: string;
338
596
  instructions: string;
@@ -482,19 +740,54 @@ declare const cliSchema: z.ZodObject<{
482
740
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
483
741
  class: z.ZodString;
484
742
  pattern: z.ZodString;
485
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
743
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
486
744
  hint: z.ZodOptional<z.ZodString>;
487
745
  }, "strict", z.ZodTypeAny, {
488
746
  pattern: string;
489
747
  class: string;
490
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
748
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
491
749
  hint?: string | undefined;
492
750
  }, {
493
751
  pattern: string;
494
752
  class: string;
495
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
753
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
496
754
  hint?: string | undefined;
497
755
  }>, "many">>;
756
+ budget: z.ZodOptional<z.ZodObject<{
757
+ usd: z.ZodNumber;
758
+ on_exceed: z.ZodDefault<z.ZodDiscriminatedUnion<"action", [z.ZodObject<{
759
+ action: z.ZodLiteral<"stop">;
760
+ }, "strict", z.ZodTypeAny, {
761
+ action: "stop";
762
+ }, {
763
+ action: "stop";
764
+ }>, z.ZodObject<{
765
+ action: z.ZodLiteral<"degrade">;
766
+ model: z.ZodString;
767
+ }, "strict", z.ZodTypeAny, {
768
+ model: string;
769
+ action: "degrade";
770
+ }, {
771
+ model: string;
772
+ action: "degrade";
773
+ }>]>>;
774
+ }, "strict", z.ZodTypeAny, {
775
+ usd: number;
776
+ on_exceed: {
777
+ action: "stop";
778
+ } | {
779
+ model: string;
780
+ action: "degrade";
781
+ };
782
+ }, {
783
+ usd: number;
784
+ on_exceed?: {
785
+ action: "stop";
786
+ } | {
787
+ model: string;
788
+ action: "degrade";
789
+ } | undefined;
790
+ }>>;
498
791
  feedback: z.ZodOptional<z.ZodObject<{
499
792
  enabled: z.ZodOptional<z.ZodBoolean>;
500
793
  modality: z.ZodDefault<z.ZodEnum<["binary", "stars", "scale", "comment"]>>;
@@ -516,6 +809,7 @@ declare const cliSchema: z.ZodObject<{
516
809
  location: string;
517
810
  }>>;
518
811
  autoDistill: z.ZodOptional<z.ZodBoolean>;
812
+ exitPrompt: z.ZodOptional<z.ZodBoolean>;
519
813
  channelReactions: z.ZodOptional<z.ZodBoolean>;
520
814
  }, "strict", z.ZodTypeAny, {
521
815
  modality: "binary" | "stars" | "scale" | "comment";
@@ -528,6 +822,7 @@ declare const cliSchema: z.ZodObject<{
528
822
  location: string;
529
823
  } | undefined;
530
824
  autoDistill?: boolean | undefined;
825
+ exitPrompt?: boolean | undefined;
531
826
  channelReactions?: boolean | undefined;
532
827
  }, {
533
828
  enabled?: boolean | undefined;
@@ -540,8 +835,106 @@ declare const cliSchema: z.ZodObject<{
540
835
  location: string;
541
836
  } | undefined;
542
837
  autoDistill?: boolean | undefined;
838
+ exitPrompt?: boolean | undefined;
543
839
  channelReactions?: boolean | undefined;
544
840
  }>>;
841
+ memory: z.ZodOptional<z.ZodObject<{
842
+ enabled: z.ZodOptional<z.ZodBoolean>;
843
+ autoCapture: z.ZodOptional<z.ZodBoolean>;
844
+ autoCaptureThreshold: z.ZodOptional<z.ZodNumber>;
845
+ autoRecall: z.ZodOptional<z.ZodBoolean>;
846
+ recallK: z.ZodOptional<z.ZodNumber>;
847
+ }, "strict", z.ZodTypeAny, {
848
+ enabled?: boolean | undefined;
849
+ autoCapture?: boolean | undefined;
850
+ autoCaptureThreshold?: number | undefined;
851
+ autoRecall?: boolean | undefined;
852
+ recallK?: number | undefined;
853
+ }, {
854
+ enabled?: boolean | undefined;
855
+ autoCapture?: boolean | undefined;
856
+ autoCaptureThreshold?: number | undefined;
857
+ autoRecall?: boolean | undefined;
858
+ recallK?: number | undefined;
859
+ }>>;
860
+ observability: z.ZodOptional<z.ZodObject<{
861
+ slo: z.ZodOptional<z.ZodEffects<z.ZodObject<{
862
+ /** Fractional error rate ceiling (unrecovered errors / model calls), e.g. 0.05. */
863
+ error_rate: z.ZodOptional<z.ZodNumber>;
864
+ /** p95 per-turn latency ceiling, milliseconds. */
865
+ p95_latency_ms: z.ZodOptional<z.ZodNumber>;
866
+ /** p95 time-to-first-token ceiling, milliseconds. */
867
+ ttft_ms: z.ZodOptional<z.ZodNumber>;
868
+ /** Cost burn ceiling, USD per hour of wall-clock. */
869
+ cost_per_hour_usd: z.ZodOptional<z.ZodNumber>;
870
+ /** Fractional egress-block rate ceiling (egress-blocked / external calls), e.g. 0.1. */
871
+ egress_block_rate: z.ZodOptional<z.ZodNumber>;
872
+ /**
873
+ * Rolling window (seconds) a breach must persist before the ladder fires.
874
+ * A single blip never mitigates — the monitor only acts on a SUSTAINED
875
+ * breach across this window. Default 300s (5 min).
876
+ */
877
+ window_seconds: z.ZodOptional<z.ZodNumber>;
878
+ /**
879
+ * Mitigation ladder, walked in declared order on a sustained breach. Each
880
+ * rung is executed at most once per session. `alert` is always safe;
881
+ * `pause-intake` / `rollback` touch traffic + deploys so they are opt-in.
882
+ */
883
+ mitigation: z.ZodOptional<z.ZodArray<z.ZodEnum<["alert", "pause-intake", "rollback"]>, "atleastone">>;
884
+ }, "strict", z.ZodTypeAny, {
885
+ error_rate?: number | undefined;
886
+ p95_latency_ms?: number | undefined;
887
+ ttft_ms?: number | undefined;
888
+ cost_per_hour_usd?: number | undefined;
889
+ egress_block_rate?: number | undefined;
890
+ window_seconds?: number | undefined;
891
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
892
+ }, {
893
+ error_rate?: number | undefined;
894
+ p95_latency_ms?: number | undefined;
895
+ ttft_ms?: number | undefined;
896
+ cost_per_hour_usd?: number | undefined;
897
+ egress_block_rate?: number | undefined;
898
+ window_seconds?: number | undefined;
899
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
900
+ }>, {
901
+ error_rate?: number | undefined;
902
+ p95_latency_ms?: number | undefined;
903
+ ttft_ms?: number | undefined;
904
+ cost_per_hour_usd?: number | undefined;
905
+ egress_block_rate?: number | undefined;
906
+ window_seconds?: number | undefined;
907
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
908
+ }, {
909
+ error_rate?: number | undefined;
910
+ p95_latency_ms?: number | undefined;
911
+ ttft_ms?: number | undefined;
912
+ cost_per_hour_usd?: number | undefined;
913
+ egress_block_rate?: number | undefined;
914
+ window_seconds?: number | undefined;
915
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
916
+ }>>;
917
+ }, "strict", z.ZodTypeAny, {
918
+ slo?: {
919
+ error_rate?: number | undefined;
920
+ p95_latency_ms?: number | undefined;
921
+ ttft_ms?: number | undefined;
922
+ cost_per_hour_usd?: number | undefined;
923
+ egress_block_rate?: number | undefined;
924
+ window_seconds?: number | undefined;
925
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
926
+ } | undefined;
927
+ }, {
928
+ slo?: {
929
+ error_rate?: number | undefined;
930
+ p95_latency_ms?: number | undefined;
931
+ ttft_ms?: number | undefined;
932
+ cost_per_hour_usd?: number | undefined;
933
+ egress_block_rate?: number | undefined;
934
+ window_seconds?: number | undefined;
935
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
936
+ } | undefined;
937
+ }>>;
545
938
  cli: z.ZodOptional<z.ZodObject<{
546
939
  banner: z.ZodOptional<z.ZodObject<{
547
940
  taglineMode: z.ZodDefault<z.ZodEnum<["static", "random"]>>;
@@ -691,6 +1084,22 @@ declare const cliSchema: z.ZodObject<{
691
1084
  instructions: string;
692
1085
  model: string;
693
1086
  max_tokens?: number | undefined;
1087
+ model_fallbacks?: string[] | undefined;
1088
+ circuit_breaker?: {
1089
+ failureThreshold?: number | undefined;
1090
+ windowMs?: number | undefined;
1091
+ cooldownMs?: number | undefined;
1092
+ } | undefined;
1093
+ model_tiers?: {
1094
+ default: string;
1095
+ fast: string;
1096
+ routing?: {
1097
+ contextTokenThreshold?: number | undefined;
1098
+ toolsToDefault?: boolean | undefined;
1099
+ firstTurnToDefault?: boolean | undefined;
1100
+ priorToolDensityThreshold?: number | undefined;
1101
+ } | undefined;
1102
+ } | undefined;
694
1103
  sub_agents?: Record<string, {
695
1104
  description: string;
696
1105
  instructions: string;
@@ -711,6 +1120,7 @@ declare const cliSchema: z.ZodObject<{
711
1120
  pattern: string;
712
1121
  }[] | undefined;
713
1122
  } | undefined;
1123
+ version?: number | undefined;
714
1124
  cli?: {
715
1125
  tui: "basic" | "rich";
716
1126
  banner?: {
@@ -745,9 +1155,18 @@ declare const cliSchema: z.ZodObject<{
745
1155
  failure_taxonomy?: {
746
1156
  pattern: string;
747
1157
  class: string;
748
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
1158
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
749
1159
  hint?: string | undefined;
750
1160
  }[] | undefined;
1161
+ budget?: {
1162
+ usd: number;
1163
+ on_exceed: {
1164
+ action: "stop";
1165
+ } | {
1166
+ model: string;
1167
+ action: "degrade";
1168
+ };
1169
+ } | undefined;
751
1170
  feedback?: {
752
1171
  modality: "binary" | "stars" | "scale" | "comment";
753
1172
  enabled?: boolean | undefined;
@@ -759,8 +1178,27 @@ declare const cliSchema: z.ZodObject<{
759
1178
  location: string;
760
1179
  } | undefined;
761
1180
  autoDistill?: boolean | undefined;
1181
+ exitPrompt?: boolean | undefined;
762
1182
  channelReactions?: boolean | undefined;
763
1183
  } | undefined;
1184
+ memory?: {
1185
+ enabled?: boolean | undefined;
1186
+ autoCapture?: boolean | undefined;
1187
+ autoCaptureThreshold?: number | undefined;
1188
+ autoRecall?: boolean | undefined;
1189
+ recallK?: number | undefined;
1190
+ } | undefined;
1191
+ observability?: {
1192
+ slo?: {
1193
+ error_rate?: number | undefined;
1194
+ p95_latency_ms?: number | undefined;
1195
+ ttft_ms?: number | undefined;
1196
+ cost_per_hour_usd?: number | undefined;
1197
+ egress_block_rate?: number | undefined;
1198
+ window_seconds?: number | undefined;
1199
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
1200
+ } | undefined;
1201
+ } | undefined;
764
1202
  chains?: {
765
1203
  kind: "evm";
766
1204
  id: string;
@@ -803,6 +1241,22 @@ declare const cliSchema: z.ZodObject<{
803
1241
  instructions: string;
804
1242
  model: string;
805
1243
  max_tokens?: number | undefined;
1244
+ model_fallbacks?: string[] | undefined;
1245
+ circuit_breaker?: {
1246
+ failureThreshold?: number | undefined;
1247
+ windowMs?: number | undefined;
1248
+ cooldownMs?: number | undefined;
1249
+ } | undefined;
1250
+ model_tiers?: {
1251
+ default: string;
1252
+ fast: string;
1253
+ routing?: {
1254
+ contextTokenThreshold?: number | undefined;
1255
+ toolsToDefault?: boolean | undefined;
1256
+ firstTurnToDefault?: boolean | undefined;
1257
+ priorToolDensityThreshold?: number | undefined;
1258
+ } | undefined;
1259
+ } | undefined;
806
1260
  sub_agents?: Record<string, {
807
1261
  description: string;
808
1262
  instructions: string;
@@ -823,6 +1277,7 @@ declare const cliSchema: z.ZodObject<{
823
1277
  pattern: string;
824
1278
  }[] | undefined;
825
1279
  } | undefined;
1280
+ version?: number | undefined;
826
1281
  cli?: {
827
1282
  banner?: {
828
1283
  taglines: string[];
@@ -857,9 +1312,18 @@ declare const cliSchema: z.ZodObject<{
857
1312
  failure_taxonomy?: {
858
1313
  pattern: string;
859
1314
  class: string;
860
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
1315
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
861
1316
  hint?: string | undefined;
862
1317
  }[] | undefined;
1318
+ budget?: {
1319
+ usd: number;
1320
+ on_exceed?: {
1321
+ action: "stop";
1322
+ } | {
1323
+ model: string;
1324
+ action: "degrade";
1325
+ } | undefined;
1326
+ } | undefined;
863
1327
  feedback?: {
864
1328
  enabled?: boolean | undefined;
865
1329
  scale?: {
@@ -871,8 +1335,27 @@ declare const cliSchema: z.ZodObject<{
871
1335
  location: string;
872
1336
  } | undefined;
873
1337
  autoDistill?: boolean | undefined;
1338
+ exitPrompt?: boolean | undefined;
874
1339
  channelReactions?: boolean | undefined;
875
1340
  } | undefined;
1341
+ memory?: {
1342
+ enabled?: boolean | undefined;
1343
+ autoCapture?: boolean | undefined;
1344
+ autoCaptureThreshold?: number | undefined;
1345
+ autoRecall?: boolean | undefined;
1346
+ recallK?: number | undefined;
1347
+ } | undefined;
1348
+ observability?: {
1349
+ slo?: {
1350
+ error_rate?: number | undefined;
1351
+ p95_latency_ms?: number | undefined;
1352
+ ttft_ms?: number | undefined;
1353
+ cost_per_hour_usd?: number | undefined;
1354
+ egress_block_rate?: number | undefined;
1355
+ window_seconds?: number | undefined;
1356
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
1357
+ } | undefined;
1358
+ } | undefined;
876
1359
  chains?: {
877
1360
  kind: "evm";
878
1361
  id: string;
@@ -930,6 +1413,7 @@ declare const workflowStepSchema: z.ZodObject<{
930
1413
  }>;
931
1414
  declare const workflowSchema: z.ZodObject<{
932
1415
  name: z.ZodString;
1416
+ version: z.ZodOptional<z.ZodNumber>;
933
1417
  target: z.ZodLiteral<"workflow">;
934
1418
  model: z.ZodString;
935
1419
  steps: z.ZodArray<z.ZodObject<{
@@ -1035,17 +1519,17 @@ declare const workflowSchema: z.ZodObject<{
1035
1519
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
1036
1520
  class: z.ZodString;
1037
1521
  pattern: z.ZodString;
1038
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
1522
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
1039
1523
  hint: z.ZodOptional<z.ZodString>;
1040
1524
  }, "strict", z.ZodTypeAny, {
1041
1525
  pattern: string;
1042
1526
  class: string;
1043
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
1527
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
1044
1528
  hint?: string | undefined;
1045
1529
  }, {
1046
1530
  pattern: string;
1047
1531
  class: string;
1048
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
1532
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
1049
1533
  hint?: string | undefined;
1050
1534
  }>, "many">>;
1051
1535
  chains: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -1177,6 +1661,7 @@ declare const workflowSchema: z.ZodObject<{
1177
1661
  pattern: string;
1178
1662
  }[] | undefined;
1179
1663
  } | undefined;
1664
+ version?: number | undefined;
1180
1665
  mcp_servers?: Record<string, {
1181
1666
  transport: "stdio";
1182
1667
  command: string;
@@ -1196,7 +1681,7 @@ declare const workflowSchema: z.ZodObject<{
1196
1681
  failure_taxonomy?: {
1197
1682
  pattern: string;
1198
1683
  class: string;
1199
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
1684
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
1200
1685
  hint?: string | undefined;
1201
1686
  }[] | undefined;
1202
1687
  chains?: {
@@ -1252,6 +1737,7 @@ declare const workflowSchema: z.ZodObject<{
1252
1737
  pattern: string;
1253
1738
  }[] | undefined;
1254
1739
  } | undefined;
1740
+ version?: number | undefined;
1255
1741
  mcp_servers?: Record<string, {
1256
1742
  transport: "stdio";
1257
1743
  command: string;
@@ -1271,7 +1757,7 @@ declare const workflowSchema: z.ZodObject<{
1271
1757
  failure_taxonomy?: {
1272
1758
  pattern: string;
1273
1759
  class: string;
1274
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
1760
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
1275
1761
  hint?: string | undefined;
1276
1762
  }[] | undefined;
1277
1763
  chains?: {
@@ -1372,6 +1858,61 @@ declare const imessageChannelSchema: z.ZodObject<{
1372
1858
  declare const channelAgentSchema: z.ZodObject<{
1373
1859
  model: z.ZodString;
1374
1860
  instructions: z.ZodString;
1861
+ model_fallbacks: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1862
+ circuit_breaker: z.ZodOptional<z.ZodObject<{
1863
+ /** Consecutive failures inside windowMs that trip the breaker. */
1864
+ failureThreshold: z.ZodOptional<z.ZodNumber>;
1865
+ /** Window for counting consecutive failures (ms). */
1866
+ windowMs: z.ZodOptional<z.ZodNumber>;
1867
+ /** How long the breaker stays open before allowing a probe (ms). */
1868
+ cooldownMs: z.ZodOptional<z.ZodNumber>;
1869
+ }, "strict", z.ZodTypeAny, {
1870
+ failureThreshold?: number | undefined;
1871
+ windowMs?: number | undefined;
1872
+ cooldownMs?: number | undefined;
1873
+ }, {
1874
+ failureThreshold?: number | undefined;
1875
+ windowMs?: number | undefined;
1876
+ cooldownMs?: number | undefined;
1877
+ }>>;
1878
+ model_tiers: z.ZodOptional<z.ZodObject<{
1879
+ fast: z.ZodString;
1880
+ default: z.ZodString;
1881
+ routing: z.ZodOptional<z.ZodObject<{
1882
+ contextTokenThreshold: z.ZodOptional<z.ZodNumber>;
1883
+ toolsToDefault: z.ZodOptional<z.ZodBoolean>;
1884
+ firstTurnToDefault: z.ZodOptional<z.ZodBoolean>;
1885
+ priorToolDensityThreshold: z.ZodOptional<z.ZodNumber>;
1886
+ }, "strict", z.ZodTypeAny, {
1887
+ contextTokenThreshold?: number | undefined;
1888
+ toolsToDefault?: boolean | undefined;
1889
+ firstTurnToDefault?: boolean | undefined;
1890
+ priorToolDensityThreshold?: number | undefined;
1891
+ }, {
1892
+ contextTokenThreshold?: number | undefined;
1893
+ toolsToDefault?: boolean | undefined;
1894
+ firstTurnToDefault?: boolean | undefined;
1895
+ priorToolDensityThreshold?: number | undefined;
1896
+ }>>;
1897
+ }, "strict", z.ZodTypeAny, {
1898
+ default: string;
1899
+ fast: string;
1900
+ routing?: {
1901
+ contextTokenThreshold?: number | undefined;
1902
+ toolsToDefault?: boolean | undefined;
1903
+ firstTurnToDefault?: boolean | undefined;
1904
+ priorToolDensityThreshold?: number | undefined;
1905
+ } | undefined;
1906
+ }, {
1907
+ default: string;
1908
+ fast: string;
1909
+ routing?: {
1910
+ contextTokenThreshold?: number | undefined;
1911
+ toolsToDefault?: boolean | undefined;
1912
+ firstTurnToDefault?: boolean | undefined;
1913
+ priorToolDensityThreshold?: number | undefined;
1914
+ } | undefined;
1915
+ }>>;
1375
1916
  tools: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1376
1917
  tool_config: z.ZodOptional<z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodUnknown>, Record<string, unknown>, Record<string, unknown>>>;
1377
1918
  sub_agents: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
@@ -1415,6 +1956,22 @@ declare const channelAgentSchema: z.ZodObject<{
1415
1956
  instructions: string;
1416
1957
  model: string;
1417
1958
  tools?: string[] | undefined;
1959
+ model_fallbacks?: string[] | undefined;
1960
+ circuit_breaker?: {
1961
+ failureThreshold?: number | undefined;
1962
+ windowMs?: number | undefined;
1963
+ cooldownMs?: number | undefined;
1964
+ } | undefined;
1965
+ model_tiers?: {
1966
+ default: string;
1967
+ fast: string;
1968
+ routing?: {
1969
+ contextTokenThreshold?: number | undefined;
1970
+ toolsToDefault?: boolean | undefined;
1971
+ firstTurnToDefault?: boolean | undefined;
1972
+ priorToolDensityThreshold?: number | undefined;
1973
+ } | undefined;
1974
+ } | undefined;
1418
1975
  sub_agents?: Record<string, {
1419
1976
  description: string;
1420
1977
  instructions: string;
@@ -1431,6 +1988,22 @@ declare const channelAgentSchema: z.ZodObject<{
1431
1988
  instructions: string;
1432
1989
  model: string;
1433
1990
  tools?: string[] | undefined;
1991
+ model_fallbacks?: string[] | undefined;
1992
+ circuit_breaker?: {
1993
+ failureThreshold?: number | undefined;
1994
+ windowMs?: number | undefined;
1995
+ cooldownMs?: number | undefined;
1996
+ } | undefined;
1997
+ model_tiers?: {
1998
+ default: string;
1999
+ fast: string;
2000
+ routing?: {
2001
+ contextTokenThreshold?: number | undefined;
2002
+ toolsToDefault?: boolean | undefined;
2003
+ firstTurnToDefault?: boolean | undefined;
2004
+ priorToolDensityThreshold?: number | undefined;
2005
+ } | undefined;
2006
+ } | undefined;
1434
2007
  sub_agents?: Record<string, {
1435
2008
  description: string;
1436
2009
  instructions: string;
@@ -1446,10 +2019,66 @@ declare const channelAgentSchema: z.ZodObject<{
1446
2019
  }>;
1447
2020
  declare const channelSchema: z.ZodObject<{
1448
2021
  name: z.ZodString;
2022
+ version: z.ZodOptional<z.ZodNumber>;
1449
2023
  target: z.ZodLiteral<"channel">;
1450
2024
  agent: z.ZodObject<{
1451
2025
  model: z.ZodString;
1452
2026
  instructions: z.ZodString;
2027
+ model_fallbacks: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2028
+ circuit_breaker: z.ZodOptional<z.ZodObject<{
2029
+ /** Consecutive failures inside windowMs that trip the breaker. */
2030
+ failureThreshold: z.ZodOptional<z.ZodNumber>;
2031
+ /** Window for counting consecutive failures (ms). */
2032
+ windowMs: z.ZodOptional<z.ZodNumber>;
2033
+ /** How long the breaker stays open before allowing a probe (ms). */
2034
+ cooldownMs: z.ZodOptional<z.ZodNumber>;
2035
+ }, "strict", z.ZodTypeAny, {
2036
+ failureThreshold?: number | undefined;
2037
+ windowMs?: number | undefined;
2038
+ cooldownMs?: number | undefined;
2039
+ }, {
2040
+ failureThreshold?: number | undefined;
2041
+ windowMs?: number | undefined;
2042
+ cooldownMs?: number | undefined;
2043
+ }>>;
2044
+ model_tiers: z.ZodOptional<z.ZodObject<{
2045
+ fast: z.ZodString;
2046
+ default: z.ZodString;
2047
+ routing: z.ZodOptional<z.ZodObject<{
2048
+ contextTokenThreshold: z.ZodOptional<z.ZodNumber>;
2049
+ toolsToDefault: z.ZodOptional<z.ZodBoolean>;
2050
+ firstTurnToDefault: z.ZodOptional<z.ZodBoolean>;
2051
+ priorToolDensityThreshold: z.ZodOptional<z.ZodNumber>;
2052
+ }, "strict", z.ZodTypeAny, {
2053
+ contextTokenThreshold?: number | undefined;
2054
+ toolsToDefault?: boolean | undefined;
2055
+ firstTurnToDefault?: boolean | undefined;
2056
+ priorToolDensityThreshold?: number | undefined;
2057
+ }, {
2058
+ contextTokenThreshold?: number | undefined;
2059
+ toolsToDefault?: boolean | undefined;
2060
+ firstTurnToDefault?: boolean | undefined;
2061
+ priorToolDensityThreshold?: number | undefined;
2062
+ }>>;
2063
+ }, "strict", z.ZodTypeAny, {
2064
+ default: string;
2065
+ fast: string;
2066
+ routing?: {
2067
+ contextTokenThreshold?: number | undefined;
2068
+ toolsToDefault?: boolean | undefined;
2069
+ firstTurnToDefault?: boolean | undefined;
2070
+ priorToolDensityThreshold?: number | undefined;
2071
+ } | undefined;
2072
+ }, {
2073
+ default: string;
2074
+ fast: string;
2075
+ routing?: {
2076
+ contextTokenThreshold?: number | undefined;
2077
+ toolsToDefault?: boolean | undefined;
2078
+ firstTurnToDefault?: boolean | undefined;
2079
+ priorToolDensityThreshold?: number | undefined;
2080
+ } | undefined;
2081
+ }>>;
1453
2082
  tools: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1454
2083
  tool_config: z.ZodOptional<z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodUnknown>, Record<string, unknown>, Record<string, unknown>>>;
1455
2084
  sub_agents: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
@@ -1493,6 +2122,22 @@ declare const channelSchema: z.ZodObject<{
1493
2122
  instructions: string;
1494
2123
  model: string;
1495
2124
  tools?: string[] | undefined;
2125
+ model_fallbacks?: string[] | undefined;
2126
+ circuit_breaker?: {
2127
+ failureThreshold?: number | undefined;
2128
+ windowMs?: number | undefined;
2129
+ cooldownMs?: number | undefined;
2130
+ } | undefined;
2131
+ model_tiers?: {
2132
+ default: string;
2133
+ fast: string;
2134
+ routing?: {
2135
+ contextTokenThreshold?: number | undefined;
2136
+ toolsToDefault?: boolean | undefined;
2137
+ firstTurnToDefault?: boolean | undefined;
2138
+ priorToolDensityThreshold?: number | undefined;
2139
+ } | undefined;
2140
+ } | undefined;
1496
2141
  sub_agents?: Record<string, {
1497
2142
  description: string;
1498
2143
  instructions: string;
@@ -1509,6 +2154,22 @@ declare const channelSchema: z.ZodObject<{
1509
2154
  instructions: string;
1510
2155
  model: string;
1511
2156
  tools?: string[] | undefined;
2157
+ model_fallbacks?: string[] | undefined;
2158
+ circuit_breaker?: {
2159
+ failureThreshold?: number | undefined;
2160
+ windowMs?: number | undefined;
2161
+ cooldownMs?: number | undefined;
2162
+ } | undefined;
2163
+ model_tiers?: {
2164
+ default: string;
2165
+ fast: string;
2166
+ routing?: {
2167
+ contextTokenThreshold?: number | undefined;
2168
+ toolsToDefault?: boolean | undefined;
2169
+ firstTurnToDefault?: boolean | undefined;
2170
+ priorToolDensityThreshold?: number | undefined;
2171
+ } | undefined;
2172
+ } | undefined;
1512
2173
  sub_agents?: Record<string, {
1513
2174
  description: string;
1514
2175
  instructions: string;
@@ -1770,19 +2431,54 @@ declare const channelSchema: z.ZodObject<{
1770
2431
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
1771
2432
  class: z.ZodString;
1772
2433
  pattern: z.ZodString;
1773
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
2434
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
1774
2435
  hint: z.ZodOptional<z.ZodString>;
1775
2436
  }, "strict", z.ZodTypeAny, {
1776
2437
  pattern: string;
1777
2438
  class: string;
1778
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
2439
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
1779
2440
  hint?: string | undefined;
1780
2441
  }, {
1781
2442
  pattern: string;
1782
2443
  class: string;
1783
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
2444
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
1784
2445
  hint?: string | undefined;
1785
2446
  }>, "many">>;
2447
+ budget: z.ZodOptional<z.ZodObject<{
2448
+ usd: z.ZodNumber;
2449
+ on_exceed: z.ZodDefault<z.ZodDiscriminatedUnion<"action", [z.ZodObject<{
2450
+ action: z.ZodLiteral<"stop">;
2451
+ }, "strict", z.ZodTypeAny, {
2452
+ action: "stop";
2453
+ }, {
2454
+ action: "stop";
2455
+ }>, z.ZodObject<{
2456
+ action: z.ZodLiteral<"degrade">;
2457
+ model: z.ZodString;
2458
+ }, "strict", z.ZodTypeAny, {
2459
+ model: string;
2460
+ action: "degrade";
2461
+ }, {
2462
+ model: string;
2463
+ action: "degrade";
2464
+ }>]>>;
2465
+ }, "strict", z.ZodTypeAny, {
2466
+ usd: number;
2467
+ on_exceed: {
2468
+ action: "stop";
2469
+ } | {
2470
+ model: string;
2471
+ action: "degrade";
2472
+ };
2473
+ }, {
2474
+ usd: number;
2475
+ on_exceed?: {
2476
+ action: "stop";
2477
+ } | {
2478
+ model: string;
2479
+ action: "degrade";
2480
+ } | undefined;
2481
+ }>>;
1786
2482
  feedback: z.ZodOptional<z.ZodObject<{
1787
2483
  enabled: z.ZodOptional<z.ZodBoolean>;
1788
2484
  modality: z.ZodDefault<z.ZodEnum<["binary", "stars", "scale", "comment"]>>;
@@ -1804,6 +2500,7 @@ declare const channelSchema: z.ZodObject<{
1804
2500
  location: string;
1805
2501
  }>>;
1806
2502
  autoDistill: z.ZodOptional<z.ZodBoolean>;
2503
+ exitPrompt: z.ZodOptional<z.ZodBoolean>;
1807
2504
  channelReactions: z.ZodOptional<z.ZodBoolean>;
1808
2505
  }, "strict", z.ZodTypeAny, {
1809
2506
  modality: "binary" | "stars" | "scale" | "comment";
@@ -1816,6 +2513,7 @@ declare const channelSchema: z.ZodObject<{
1816
2513
  location: string;
1817
2514
  } | undefined;
1818
2515
  autoDistill?: boolean | undefined;
2516
+ exitPrompt?: boolean | undefined;
1819
2517
  channelReactions?: boolean | undefined;
1820
2518
  }, {
1821
2519
  enabled?: boolean | undefined;
@@ -1828,8 +2526,106 @@ declare const channelSchema: z.ZodObject<{
1828
2526
  location: string;
1829
2527
  } | undefined;
1830
2528
  autoDistill?: boolean | undefined;
2529
+ exitPrompt?: boolean | undefined;
1831
2530
  channelReactions?: boolean | undefined;
1832
2531
  }>>;
2532
+ memory: z.ZodOptional<z.ZodObject<{
2533
+ enabled: z.ZodOptional<z.ZodBoolean>;
2534
+ autoCapture: z.ZodOptional<z.ZodBoolean>;
2535
+ autoCaptureThreshold: z.ZodOptional<z.ZodNumber>;
2536
+ autoRecall: z.ZodOptional<z.ZodBoolean>;
2537
+ recallK: z.ZodOptional<z.ZodNumber>;
2538
+ }, "strict", z.ZodTypeAny, {
2539
+ enabled?: boolean | undefined;
2540
+ autoCapture?: boolean | undefined;
2541
+ autoCaptureThreshold?: number | undefined;
2542
+ autoRecall?: boolean | undefined;
2543
+ recallK?: number | undefined;
2544
+ }, {
2545
+ enabled?: boolean | undefined;
2546
+ autoCapture?: boolean | undefined;
2547
+ autoCaptureThreshold?: number | undefined;
2548
+ autoRecall?: boolean | undefined;
2549
+ recallK?: number | undefined;
2550
+ }>>;
2551
+ observability: z.ZodOptional<z.ZodObject<{
2552
+ slo: z.ZodOptional<z.ZodEffects<z.ZodObject<{
2553
+ /** Fractional error rate ceiling (unrecovered errors / model calls), e.g. 0.05. */
2554
+ error_rate: z.ZodOptional<z.ZodNumber>;
2555
+ /** p95 per-turn latency ceiling, milliseconds. */
2556
+ p95_latency_ms: z.ZodOptional<z.ZodNumber>;
2557
+ /** p95 time-to-first-token ceiling, milliseconds. */
2558
+ ttft_ms: z.ZodOptional<z.ZodNumber>;
2559
+ /** Cost burn ceiling, USD per hour of wall-clock. */
2560
+ cost_per_hour_usd: z.ZodOptional<z.ZodNumber>;
2561
+ /** Fractional egress-block rate ceiling (egress-blocked / external calls), e.g. 0.1. */
2562
+ egress_block_rate: z.ZodOptional<z.ZodNumber>;
2563
+ /**
2564
+ * Rolling window (seconds) a breach must persist before the ladder fires.
2565
+ * A single blip never mitigates — the monitor only acts on a SUSTAINED
2566
+ * breach across this window. Default 300s (5 min).
2567
+ */
2568
+ window_seconds: z.ZodOptional<z.ZodNumber>;
2569
+ /**
2570
+ * Mitigation ladder, walked in declared order on a sustained breach. Each
2571
+ * rung is executed at most once per session. `alert` is always safe;
2572
+ * `pause-intake` / `rollback` touch traffic + deploys so they are opt-in.
2573
+ */
2574
+ mitigation: z.ZodOptional<z.ZodArray<z.ZodEnum<["alert", "pause-intake", "rollback"]>, "atleastone">>;
2575
+ }, "strict", z.ZodTypeAny, {
2576
+ error_rate?: number | undefined;
2577
+ p95_latency_ms?: number | undefined;
2578
+ ttft_ms?: number | undefined;
2579
+ cost_per_hour_usd?: number | undefined;
2580
+ egress_block_rate?: number | undefined;
2581
+ window_seconds?: number | undefined;
2582
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
2583
+ }, {
2584
+ error_rate?: number | undefined;
2585
+ p95_latency_ms?: number | undefined;
2586
+ ttft_ms?: number | undefined;
2587
+ cost_per_hour_usd?: number | undefined;
2588
+ egress_block_rate?: number | undefined;
2589
+ window_seconds?: number | undefined;
2590
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
2591
+ }>, {
2592
+ error_rate?: number | undefined;
2593
+ p95_latency_ms?: number | undefined;
2594
+ ttft_ms?: number | undefined;
2595
+ cost_per_hour_usd?: number | undefined;
2596
+ egress_block_rate?: number | undefined;
2597
+ window_seconds?: number | undefined;
2598
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
2599
+ }, {
2600
+ error_rate?: number | undefined;
2601
+ p95_latency_ms?: number | undefined;
2602
+ ttft_ms?: number | undefined;
2603
+ cost_per_hour_usd?: number | undefined;
2604
+ egress_block_rate?: number | undefined;
2605
+ window_seconds?: number | undefined;
2606
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
2607
+ }>>;
2608
+ }, "strict", z.ZodTypeAny, {
2609
+ slo?: {
2610
+ error_rate?: number | undefined;
2611
+ p95_latency_ms?: number | undefined;
2612
+ ttft_ms?: number | undefined;
2613
+ cost_per_hour_usd?: number | undefined;
2614
+ egress_block_rate?: number | undefined;
2615
+ window_seconds?: number | undefined;
2616
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
2617
+ } | undefined;
2618
+ }, {
2619
+ slo?: {
2620
+ error_rate?: number | undefined;
2621
+ p95_latency_ms?: number | undefined;
2622
+ ttft_ms?: number | undefined;
2623
+ cost_per_hour_usd?: number | undefined;
2624
+ egress_block_rate?: number | undefined;
2625
+ window_seconds?: number | undefined;
2626
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
2627
+ } | undefined;
2628
+ }>>;
1833
2629
  heartbeat: z.ZodOptional<z.ZodObject<{
1834
2630
  every: z.ZodString;
1835
2631
  instructions: z.ZodString;
@@ -1962,12 +2758,31 @@ declare const channelSchema: z.ZodObject<{
1962
2758
  simulationRequired?: boolean | undefined;
1963
2759
  }>>;
1964
2760
  }, "strict", z.ZodTypeAny, {
2761
+ routing: {
2762
+ sessionKey: "thread" | "user" | "channel";
2763
+ };
1965
2764
  name: string;
1966
2765
  target: "channel";
1967
2766
  agent: {
1968
2767
  instructions: string;
1969
2768
  model: string;
1970
2769
  tools?: string[] | undefined;
2770
+ model_fallbacks?: string[] | undefined;
2771
+ circuit_breaker?: {
2772
+ failureThreshold?: number | undefined;
2773
+ windowMs?: number | undefined;
2774
+ cooldownMs?: number | undefined;
2775
+ } | undefined;
2776
+ model_tiers?: {
2777
+ default: string;
2778
+ fast: string;
2779
+ routing?: {
2780
+ contextTokenThreshold?: number | undefined;
2781
+ toolsToDefault?: boolean | undefined;
2782
+ firstTurnToDefault?: boolean | undefined;
2783
+ priorToolDensityThreshold?: number | undefined;
2784
+ } | undefined;
2785
+ } | undefined;
1971
2786
  sub_agents?: Record<string, {
1972
2787
  description: string;
1973
2788
  instructions: string;
@@ -2006,9 +2821,6 @@ declare const channelSchema: z.ZodObject<{
2006
2821
  cursorPath?: string | undefined;
2007
2822
  } | undefined;
2008
2823
  };
2009
- routing: {
2010
- sessionKey: "thread" | "user" | "channel";
2011
- };
2012
2824
  permissions?: {
2013
2825
  mode?: "default" | "plan" | "auto" | undefined;
2014
2826
  rules?: {
@@ -2016,6 +2828,7 @@ declare const channelSchema: z.ZodObject<{
2016
2828
  pattern: string;
2017
2829
  }[] | undefined;
2018
2830
  } | undefined;
2831
+ version?: number | undefined;
2019
2832
  mcp_servers?: Record<string, {
2020
2833
  transport: "stdio";
2021
2834
  command: string;
@@ -2035,9 +2848,18 @@ declare const channelSchema: z.ZodObject<{
2035
2848
  failure_taxonomy?: {
2036
2849
  pattern: string;
2037
2850
  class: string;
2038
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
2851
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
2039
2852
  hint?: string | undefined;
2040
2853
  }[] | undefined;
2854
+ budget?: {
2855
+ usd: number;
2856
+ on_exceed: {
2857
+ action: "stop";
2858
+ } | {
2859
+ model: string;
2860
+ action: "degrade";
2861
+ };
2862
+ } | undefined;
2041
2863
  feedback?: {
2042
2864
  modality: "binary" | "stars" | "scale" | "comment";
2043
2865
  enabled?: boolean | undefined;
@@ -2049,8 +2871,27 @@ declare const channelSchema: z.ZodObject<{
2049
2871
  location: string;
2050
2872
  } | undefined;
2051
2873
  autoDistill?: boolean | undefined;
2874
+ exitPrompt?: boolean | undefined;
2052
2875
  channelReactions?: boolean | undefined;
2053
2876
  } | undefined;
2877
+ memory?: {
2878
+ enabled?: boolean | undefined;
2879
+ autoCapture?: boolean | undefined;
2880
+ autoCaptureThreshold?: number | undefined;
2881
+ autoRecall?: boolean | undefined;
2882
+ recallK?: number | undefined;
2883
+ } | undefined;
2884
+ observability?: {
2885
+ slo?: {
2886
+ error_rate?: number | undefined;
2887
+ p95_latency_ms?: number | undefined;
2888
+ ttft_ms?: number | undefined;
2889
+ cost_per_hour_usd?: number | undefined;
2890
+ egress_block_rate?: number | undefined;
2891
+ window_seconds?: number | undefined;
2892
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
2893
+ } | undefined;
2894
+ } | undefined;
2054
2895
  chains?: {
2055
2896
  kind: "evm";
2056
2897
  id: string;
@@ -2095,12 +2936,31 @@ declare const channelSchema: z.ZodObject<{
2095
2936
  ui: boolean;
2096
2937
  } | undefined;
2097
2938
  }, {
2939
+ routing: {
2940
+ sessionKey: "thread" | "user" | "channel";
2941
+ };
2098
2942
  name: string;
2099
2943
  target: "channel";
2100
2944
  agent: {
2101
2945
  instructions: string;
2102
2946
  model: string;
2103
2947
  tools?: string[] | undefined;
2948
+ model_fallbacks?: string[] | undefined;
2949
+ circuit_breaker?: {
2950
+ failureThreshold?: number | undefined;
2951
+ windowMs?: number | undefined;
2952
+ cooldownMs?: number | undefined;
2953
+ } | undefined;
2954
+ model_tiers?: {
2955
+ default: string;
2956
+ fast: string;
2957
+ routing?: {
2958
+ contextTokenThreshold?: number | undefined;
2959
+ toolsToDefault?: boolean | undefined;
2960
+ firstTurnToDefault?: boolean | undefined;
2961
+ priorToolDensityThreshold?: number | undefined;
2962
+ } | undefined;
2963
+ } | undefined;
2104
2964
  sub_agents?: Record<string, {
2105
2965
  description: string;
2106
2966
  instructions: string;
@@ -2139,9 +2999,6 @@ declare const channelSchema: z.ZodObject<{
2139
2999
  cursorPath?: string | undefined;
2140
3000
  } | undefined;
2141
3001
  };
2142
- routing: {
2143
- sessionKey: "thread" | "user" | "channel";
2144
- };
2145
3002
  permissions?: {
2146
3003
  mode?: "default" | "plan" | "auto" | undefined;
2147
3004
  rules?: {
@@ -2149,6 +3006,7 @@ declare const channelSchema: z.ZodObject<{
2149
3006
  pattern: string;
2150
3007
  }[] | undefined;
2151
3008
  } | undefined;
3009
+ version?: number | undefined;
2152
3010
  mcp_servers?: Record<string, {
2153
3011
  transport: "stdio";
2154
3012
  command: string;
@@ -2168,9 +3026,18 @@ declare const channelSchema: z.ZodObject<{
2168
3026
  failure_taxonomy?: {
2169
3027
  pattern: string;
2170
3028
  class: string;
2171
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
3029
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
2172
3030
  hint?: string | undefined;
2173
3031
  }[] | undefined;
3032
+ budget?: {
3033
+ usd: number;
3034
+ on_exceed?: {
3035
+ action: "stop";
3036
+ } | {
3037
+ model: string;
3038
+ action: "degrade";
3039
+ } | undefined;
3040
+ } | undefined;
2174
3041
  feedback?: {
2175
3042
  enabled?: boolean | undefined;
2176
3043
  scale?: {
@@ -2182,8 +3049,27 @@ declare const channelSchema: z.ZodObject<{
2182
3049
  location: string;
2183
3050
  } | undefined;
2184
3051
  autoDistill?: boolean | undefined;
3052
+ exitPrompt?: boolean | undefined;
2185
3053
  channelReactions?: boolean | undefined;
2186
3054
  } | undefined;
3055
+ memory?: {
3056
+ enabled?: boolean | undefined;
3057
+ autoCapture?: boolean | undefined;
3058
+ autoCaptureThreshold?: number | undefined;
3059
+ autoRecall?: boolean | undefined;
3060
+ recallK?: number | undefined;
3061
+ } | undefined;
3062
+ observability?: {
3063
+ slo?: {
3064
+ error_rate?: number | undefined;
3065
+ p95_latency_ms?: number | undefined;
3066
+ ttft_ms?: number | undefined;
3067
+ cost_per_hour_usd?: number | undefined;
3068
+ egress_block_rate?: number | undefined;
3069
+ window_seconds?: number | undefined;
3070
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
3071
+ } | undefined;
3072
+ } | undefined;
2187
3073
  chains?: {
2188
3074
  kind: "evm";
2189
3075
  id: string;
@@ -2274,6 +3160,7 @@ declare const graphEdgeSchema: z.ZodObject<{
2274
3160
  }>;
2275
3161
  declare const graphSchema: z.ZodObject<{
2276
3162
  name: z.ZodString;
3163
+ version: z.ZodOptional<z.ZodNumber>;
2277
3164
  target: z.ZodLiteral<"graph">;
2278
3165
  model: z.ZodString;
2279
3166
  entry: z.ZodString;
@@ -2377,17 +3264,17 @@ declare const graphSchema: z.ZodObject<{
2377
3264
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
2378
3265
  class: z.ZodString;
2379
3266
  pattern: z.ZodString;
2380
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
3267
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
2381
3268
  hint: z.ZodOptional<z.ZodString>;
2382
3269
  }, "strict", z.ZodTypeAny, {
2383
3270
  pattern: string;
2384
3271
  class: string;
2385
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
3272
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
2386
3273
  hint?: string | undefined;
2387
3274
  }, {
2388
3275
  pattern: string;
2389
3276
  class: string;
2390
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
3277
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
2391
3278
  hint?: string | undefined;
2392
3279
  }>, "many">>;
2393
3280
  chains: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -2526,6 +3413,7 @@ declare const graphSchema: z.ZodObject<{
2526
3413
  pattern: string;
2527
3414
  }[] | undefined;
2528
3415
  } | undefined;
3416
+ version?: number | undefined;
2529
3417
  compaction?: {
2530
3418
  model?: string | undefined;
2531
3419
  curate?: boolean | undefined;
@@ -2535,7 +3423,7 @@ declare const graphSchema: z.ZodObject<{
2535
3423
  failure_taxonomy?: {
2536
3424
  pattern: string;
2537
3425
  class: string;
2538
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
3426
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
2539
3427
  hint?: string | undefined;
2540
3428
  }[] | undefined;
2541
3429
  chains?: {
@@ -2594,6 +3482,7 @@ declare const graphSchema: z.ZodObject<{
2594
3482
  pattern: string;
2595
3483
  }[] | undefined;
2596
3484
  } | undefined;
3485
+ version?: number | undefined;
2597
3486
  compaction?: {
2598
3487
  model?: string | undefined;
2599
3488
  curate?: boolean | undefined;
@@ -2603,7 +3492,7 @@ declare const graphSchema: z.ZodObject<{
2603
3492
  failure_taxonomy?: {
2604
3493
  pattern: string;
2605
3494
  class: string;
2606
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
3495
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
2607
3496
  hint?: string | undefined;
2608
3497
  }[] | undefined;
2609
3498
  chains?: {
@@ -2673,16 +3562,104 @@ declare const managedTenantSchema: z.ZodObject<{
2673
3562
  }>;
2674
3563
  declare const managedSchema: z.ZodObject<{
2675
3564
  name: z.ZodString;
3565
+ version: z.ZodOptional<z.ZodNumber>;
2676
3566
  target: z.ZodLiteral<"managed">;
2677
3567
  agent: z.ZodObject<{
2678
3568
  model: z.ZodString;
2679
3569
  instructions: z.ZodString;
3570
+ model_fallbacks: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
3571
+ circuit_breaker: z.ZodOptional<z.ZodObject<{
3572
+ /** Consecutive failures inside windowMs that trip the breaker. */
3573
+ failureThreshold: z.ZodOptional<z.ZodNumber>;
3574
+ /** Window for counting consecutive failures (ms). */
3575
+ windowMs: z.ZodOptional<z.ZodNumber>;
3576
+ /** How long the breaker stays open before allowing a probe (ms). */
3577
+ cooldownMs: z.ZodOptional<z.ZodNumber>;
3578
+ }, "strict", z.ZodTypeAny, {
3579
+ failureThreshold?: number | undefined;
3580
+ windowMs?: number | undefined;
3581
+ cooldownMs?: number | undefined;
3582
+ }, {
3583
+ failureThreshold?: number | undefined;
3584
+ windowMs?: number | undefined;
3585
+ cooldownMs?: number | undefined;
3586
+ }>>;
3587
+ model_tiers: z.ZodOptional<z.ZodObject<{
3588
+ fast: z.ZodString;
3589
+ default: z.ZodString;
3590
+ routing: z.ZodOptional<z.ZodObject<{
3591
+ contextTokenThreshold: z.ZodOptional<z.ZodNumber>;
3592
+ toolsToDefault: z.ZodOptional<z.ZodBoolean>;
3593
+ firstTurnToDefault: z.ZodOptional<z.ZodBoolean>;
3594
+ priorToolDensityThreshold: z.ZodOptional<z.ZodNumber>;
3595
+ }, "strict", z.ZodTypeAny, {
3596
+ contextTokenThreshold?: number | undefined;
3597
+ toolsToDefault?: boolean | undefined;
3598
+ firstTurnToDefault?: boolean | undefined;
3599
+ priorToolDensityThreshold?: number | undefined;
3600
+ }, {
3601
+ contextTokenThreshold?: number | undefined;
3602
+ toolsToDefault?: boolean | undefined;
3603
+ firstTurnToDefault?: boolean | undefined;
3604
+ priorToolDensityThreshold?: number | undefined;
3605
+ }>>;
3606
+ }, "strict", z.ZodTypeAny, {
3607
+ default: string;
3608
+ fast: string;
3609
+ routing?: {
3610
+ contextTokenThreshold?: number | undefined;
3611
+ toolsToDefault?: boolean | undefined;
3612
+ firstTurnToDefault?: boolean | undefined;
3613
+ priorToolDensityThreshold?: number | undefined;
3614
+ } | undefined;
3615
+ }, {
3616
+ default: string;
3617
+ fast: string;
3618
+ routing?: {
3619
+ contextTokenThreshold?: number | undefined;
3620
+ toolsToDefault?: boolean | undefined;
3621
+ firstTurnToDefault?: boolean | undefined;
3622
+ priorToolDensityThreshold?: number | undefined;
3623
+ } | undefined;
3624
+ }>>;
2680
3625
  }, "strict", z.ZodTypeAny, {
2681
3626
  instructions: string;
2682
3627
  model: string;
3628
+ model_fallbacks?: string[] | undefined;
3629
+ circuit_breaker?: {
3630
+ failureThreshold?: number | undefined;
3631
+ windowMs?: number | undefined;
3632
+ cooldownMs?: number | undefined;
3633
+ } | undefined;
3634
+ model_tiers?: {
3635
+ default: string;
3636
+ fast: string;
3637
+ routing?: {
3638
+ contextTokenThreshold?: number | undefined;
3639
+ toolsToDefault?: boolean | undefined;
3640
+ firstTurnToDefault?: boolean | undefined;
3641
+ priorToolDensityThreshold?: number | undefined;
3642
+ } | undefined;
3643
+ } | undefined;
2683
3644
  }, {
2684
3645
  instructions: string;
2685
3646
  model: string;
3647
+ model_fallbacks?: string[] | undefined;
3648
+ circuit_breaker?: {
3649
+ failureThreshold?: number | undefined;
3650
+ windowMs?: number | undefined;
3651
+ cooldownMs?: number | undefined;
3652
+ } | undefined;
3653
+ model_tiers?: {
3654
+ default: string;
3655
+ fast: string;
3656
+ routing?: {
3657
+ contextTokenThreshold?: number | undefined;
3658
+ toolsToDefault?: boolean | undefined;
3659
+ firstTurnToDefault?: boolean | undefined;
3660
+ priorToolDensityThreshold?: number | undefined;
3661
+ } | undefined;
3662
+ } | undefined;
2686
3663
  }>;
2687
3664
  tenants: z.ZodArray<z.ZodObject<{
2688
3665
  id: z.ZodString;
@@ -2765,25 +3742,173 @@ declare const managedSchema: z.ZodObject<{
2765
3742
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
2766
3743
  class: z.ZodString;
2767
3744
  pattern: z.ZodString;
2768
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
3745
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
2769
3746
  hint: z.ZodOptional<z.ZodString>;
2770
3747
  }, "strict", z.ZodTypeAny, {
2771
3748
  pattern: string;
2772
3749
  class: string;
2773
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
3750
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
2774
3751
  hint?: string | undefined;
2775
3752
  }, {
2776
3753
  pattern: string;
2777
3754
  class: string;
2778
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
3755
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
2779
3756
  hint?: string | undefined;
2780
3757
  }>, "many">>;
3758
+ budget: z.ZodOptional<z.ZodObject<{
3759
+ usd: z.ZodNumber;
3760
+ on_exceed: z.ZodDefault<z.ZodDiscriminatedUnion<"action", [z.ZodObject<{
3761
+ action: z.ZodLiteral<"stop">;
3762
+ }, "strict", z.ZodTypeAny, {
3763
+ action: "stop";
3764
+ }, {
3765
+ action: "stop";
3766
+ }>, z.ZodObject<{
3767
+ action: z.ZodLiteral<"degrade">;
3768
+ model: z.ZodString;
3769
+ }, "strict", z.ZodTypeAny, {
3770
+ model: string;
3771
+ action: "degrade";
3772
+ }, {
3773
+ model: string;
3774
+ action: "degrade";
3775
+ }>]>>;
3776
+ }, "strict", z.ZodTypeAny, {
3777
+ usd: number;
3778
+ on_exceed: {
3779
+ action: "stop";
3780
+ } | {
3781
+ model: string;
3782
+ action: "degrade";
3783
+ };
3784
+ }, {
3785
+ usd: number;
3786
+ on_exceed?: {
3787
+ action: "stop";
3788
+ } | {
3789
+ model: string;
3790
+ action: "degrade";
3791
+ } | undefined;
3792
+ }>>;
3793
+ memory: z.ZodOptional<z.ZodObject<{
3794
+ enabled: z.ZodOptional<z.ZodBoolean>;
3795
+ autoCapture: z.ZodOptional<z.ZodBoolean>;
3796
+ autoCaptureThreshold: z.ZodOptional<z.ZodNumber>;
3797
+ autoRecall: z.ZodOptional<z.ZodBoolean>;
3798
+ recallK: z.ZodOptional<z.ZodNumber>;
3799
+ }, "strict", z.ZodTypeAny, {
3800
+ enabled?: boolean | undefined;
3801
+ autoCapture?: boolean | undefined;
3802
+ autoCaptureThreshold?: number | undefined;
3803
+ autoRecall?: boolean | undefined;
3804
+ recallK?: number | undefined;
3805
+ }, {
3806
+ enabled?: boolean | undefined;
3807
+ autoCapture?: boolean | undefined;
3808
+ autoCaptureThreshold?: number | undefined;
3809
+ autoRecall?: boolean | undefined;
3810
+ recallK?: number | undefined;
3811
+ }>>;
3812
+ observability: z.ZodOptional<z.ZodObject<{
3813
+ slo: z.ZodOptional<z.ZodEffects<z.ZodObject<{
3814
+ /** Fractional error rate ceiling (unrecovered errors / model calls), e.g. 0.05. */
3815
+ error_rate: z.ZodOptional<z.ZodNumber>;
3816
+ /** p95 per-turn latency ceiling, milliseconds. */
3817
+ p95_latency_ms: z.ZodOptional<z.ZodNumber>;
3818
+ /** p95 time-to-first-token ceiling, milliseconds. */
3819
+ ttft_ms: z.ZodOptional<z.ZodNumber>;
3820
+ /** Cost burn ceiling, USD per hour of wall-clock. */
3821
+ cost_per_hour_usd: z.ZodOptional<z.ZodNumber>;
3822
+ /** Fractional egress-block rate ceiling (egress-blocked / external calls), e.g. 0.1. */
3823
+ egress_block_rate: z.ZodOptional<z.ZodNumber>;
3824
+ /**
3825
+ * Rolling window (seconds) a breach must persist before the ladder fires.
3826
+ * A single blip never mitigates — the monitor only acts on a SUSTAINED
3827
+ * breach across this window. Default 300s (5 min).
3828
+ */
3829
+ window_seconds: z.ZodOptional<z.ZodNumber>;
3830
+ /**
3831
+ * Mitigation ladder, walked in declared order on a sustained breach. Each
3832
+ * rung is executed at most once per session. `alert` is always safe;
3833
+ * `pause-intake` / `rollback` touch traffic + deploys so they are opt-in.
3834
+ */
3835
+ mitigation: z.ZodOptional<z.ZodArray<z.ZodEnum<["alert", "pause-intake", "rollback"]>, "atleastone">>;
3836
+ }, "strict", z.ZodTypeAny, {
3837
+ error_rate?: number | undefined;
3838
+ p95_latency_ms?: number | undefined;
3839
+ ttft_ms?: number | undefined;
3840
+ cost_per_hour_usd?: number | undefined;
3841
+ egress_block_rate?: number | undefined;
3842
+ window_seconds?: number | undefined;
3843
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
3844
+ }, {
3845
+ error_rate?: number | undefined;
3846
+ p95_latency_ms?: number | undefined;
3847
+ ttft_ms?: number | undefined;
3848
+ cost_per_hour_usd?: number | undefined;
3849
+ egress_block_rate?: number | undefined;
3850
+ window_seconds?: number | undefined;
3851
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
3852
+ }>, {
3853
+ error_rate?: number | undefined;
3854
+ p95_latency_ms?: number | undefined;
3855
+ ttft_ms?: number | undefined;
3856
+ cost_per_hour_usd?: number | undefined;
3857
+ egress_block_rate?: number | undefined;
3858
+ window_seconds?: number | undefined;
3859
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
3860
+ }, {
3861
+ error_rate?: number | undefined;
3862
+ p95_latency_ms?: number | undefined;
3863
+ ttft_ms?: number | undefined;
3864
+ cost_per_hour_usd?: number | undefined;
3865
+ egress_block_rate?: number | undefined;
3866
+ window_seconds?: number | undefined;
3867
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
3868
+ }>>;
3869
+ }, "strict", z.ZodTypeAny, {
3870
+ slo?: {
3871
+ error_rate?: number | undefined;
3872
+ p95_latency_ms?: number | undefined;
3873
+ ttft_ms?: number | undefined;
3874
+ cost_per_hour_usd?: number | undefined;
3875
+ egress_block_rate?: number | undefined;
3876
+ window_seconds?: number | undefined;
3877
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
3878
+ } | undefined;
3879
+ }, {
3880
+ slo?: {
3881
+ error_rate?: number | undefined;
3882
+ p95_latency_ms?: number | undefined;
3883
+ ttft_ms?: number | undefined;
3884
+ cost_per_hour_usd?: number | undefined;
3885
+ egress_block_rate?: number | undefined;
3886
+ window_seconds?: number | undefined;
3887
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
3888
+ } | undefined;
3889
+ }>>;
2781
3890
  }, "strict", z.ZodTypeAny, {
2782
3891
  name: string;
2783
3892
  target: "managed";
2784
3893
  agent: {
2785
3894
  instructions: string;
2786
3895
  model: string;
3896
+ model_fallbacks?: string[] | undefined;
3897
+ circuit_breaker?: {
3898
+ failureThreshold?: number | undefined;
3899
+ windowMs?: number | undefined;
3900
+ cooldownMs?: number | undefined;
3901
+ } | undefined;
3902
+ model_tiers?: {
3903
+ default: string;
3904
+ fast: string;
3905
+ routing?: {
3906
+ contextTokenThreshold?: number | undefined;
3907
+ toolsToDefault?: boolean | undefined;
3908
+ firstTurnToDefault?: boolean | undefined;
3909
+ priorToolDensityThreshold?: number | undefined;
3910
+ } | undefined;
3911
+ } | undefined;
2787
3912
  };
2788
3913
  tenants: {
2789
3914
  id: string;
@@ -2799,6 +3924,7 @@ declare const managedSchema: z.ZodObject<{
2799
3924
  pattern: string;
2800
3925
  }[] | undefined;
2801
3926
  } | undefined;
3927
+ version?: number | undefined;
2802
3928
  compaction?: {
2803
3929
  model?: string | undefined;
2804
3930
  curate?: boolean | undefined;
@@ -2808,15 +3934,58 @@ declare const managedSchema: z.ZodObject<{
2808
3934
  failure_taxonomy?: {
2809
3935
  pattern: string;
2810
3936
  class: string;
2811
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
3937
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
2812
3938
  hint?: string | undefined;
2813
3939
  }[] | undefined;
3940
+ budget?: {
3941
+ usd: number;
3942
+ on_exceed: {
3943
+ action: "stop";
3944
+ } | {
3945
+ model: string;
3946
+ action: "degrade";
3947
+ };
3948
+ } | undefined;
3949
+ memory?: {
3950
+ enabled?: boolean | undefined;
3951
+ autoCapture?: boolean | undefined;
3952
+ autoCaptureThreshold?: number | undefined;
3953
+ autoRecall?: boolean | undefined;
3954
+ recallK?: number | undefined;
3955
+ } | undefined;
3956
+ observability?: {
3957
+ slo?: {
3958
+ error_rate?: number | undefined;
3959
+ p95_latency_ms?: number | undefined;
3960
+ ttft_ms?: number | undefined;
3961
+ cost_per_hour_usd?: number | undefined;
3962
+ egress_block_rate?: number | undefined;
3963
+ window_seconds?: number | undefined;
3964
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
3965
+ } | undefined;
3966
+ } | undefined;
2814
3967
  }, {
2815
3968
  name: string;
2816
3969
  target: "managed";
2817
3970
  agent: {
2818
3971
  instructions: string;
2819
3972
  model: string;
3973
+ model_fallbacks?: string[] | undefined;
3974
+ circuit_breaker?: {
3975
+ failureThreshold?: number | undefined;
3976
+ windowMs?: number | undefined;
3977
+ cooldownMs?: number | undefined;
3978
+ } | undefined;
3979
+ model_tiers?: {
3980
+ default: string;
3981
+ fast: string;
3982
+ routing?: {
3983
+ contextTokenThreshold?: number | undefined;
3984
+ toolsToDefault?: boolean | undefined;
3985
+ firstTurnToDefault?: boolean | undefined;
3986
+ priorToolDensityThreshold?: number | undefined;
3987
+ } | undefined;
3988
+ } | undefined;
2820
3989
  };
2821
3990
  tenants: {
2822
3991
  id: string;
@@ -2832,6 +4001,7 @@ declare const managedSchema: z.ZodObject<{
2832
4001
  pattern: string;
2833
4002
  }[] | undefined;
2834
4003
  } | undefined;
4004
+ version?: number | undefined;
2835
4005
  compaction?: {
2836
4006
  model?: string | undefined;
2837
4007
  curate?: boolean | undefined;
@@ -2841,9 +4011,36 @@ declare const managedSchema: z.ZodObject<{
2841
4011
  failure_taxonomy?: {
2842
4012
  pattern: string;
2843
4013
  class: string;
2844
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
4014
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
2845
4015
  hint?: string | undefined;
2846
4016
  }[] | undefined;
4017
+ budget?: {
4018
+ usd: number;
4019
+ on_exceed?: {
4020
+ action: "stop";
4021
+ } | {
4022
+ model: string;
4023
+ action: "degrade";
4024
+ } | undefined;
4025
+ } | undefined;
4026
+ memory?: {
4027
+ enabled?: boolean | undefined;
4028
+ autoCapture?: boolean | undefined;
4029
+ autoCaptureThreshold?: number | undefined;
4030
+ autoRecall?: boolean | undefined;
4031
+ recallK?: number | undefined;
4032
+ } | undefined;
4033
+ observability?: {
4034
+ slo?: {
4035
+ error_rate?: number | undefined;
4036
+ p95_latency_ms?: number | undefined;
4037
+ ttft_ms?: number | undefined;
4038
+ cost_per_hour_usd?: number | undefined;
4039
+ egress_block_rate?: number | undefined;
4040
+ window_seconds?: number | undefined;
4041
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
4042
+ } | undefined;
4043
+ } | undefined;
2847
4044
  }>;
2848
4045
  declare const pipelineDocumentSchema: z.ZodObject<{
2849
4046
  id: z.ZodString;
@@ -2860,6 +4057,7 @@ declare const pipelineDocumentSchema: z.ZodObject<{
2860
4057
  }>;
2861
4058
  declare const pipelineSchema: z.ZodObject<{
2862
4059
  name: z.ZodString;
4060
+ version: z.ZodOptional<z.ZodNumber>;
2863
4061
  target: z.ZodLiteral<"pipeline">;
2864
4062
  agent: z.ZodObject<{
2865
4063
  model: z.ZodString;
@@ -2985,17 +4183,17 @@ declare const pipelineSchema: z.ZodObject<{
2985
4183
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
2986
4184
  class: z.ZodString;
2987
4185
  pattern: z.ZodString;
2988
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
4186
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
2989
4187
  hint: z.ZodOptional<z.ZodString>;
2990
4188
  }, "strict", z.ZodTypeAny, {
2991
4189
  pattern: string;
2992
4190
  class: string;
2993
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
4191
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
2994
4192
  hint?: string | undefined;
2995
4193
  }, {
2996
4194
  pattern: string;
2997
4195
  class: string;
2998
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
4196
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
2999
4197
  hint?: string | undefined;
3000
4198
  }>, "many">>;
3001
4199
  }, "strict", z.ZodTypeAny, {
@@ -3030,6 +4228,7 @@ declare const pipelineSchema: z.ZodObject<{
3030
4228
  pattern: string;
3031
4229
  }[] | undefined;
3032
4230
  } | undefined;
4231
+ version?: number | undefined;
3033
4232
  compaction?: {
3034
4233
  model?: string | undefined;
3035
4234
  curate?: boolean | undefined;
@@ -3039,7 +4238,7 @@ declare const pipelineSchema: z.ZodObject<{
3039
4238
  failure_taxonomy?: {
3040
4239
  pattern: string;
3041
4240
  class: string;
3042
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
4241
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
3043
4242
  hint?: string | undefined;
3044
4243
  }[] | undefined;
3045
4244
  }, {
@@ -3074,6 +4273,7 @@ declare const pipelineSchema: z.ZodObject<{
3074
4273
  pattern: string;
3075
4274
  }[] | undefined;
3076
4275
  } | undefined;
4276
+ version?: number | undefined;
3077
4277
  compaction?: {
3078
4278
  model?: string | undefined;
3079
4279
  curate?: boolean | undefined;
@@ -3083,7 +4283,7 @@ declare const pipelineSchema: z.ZodObject<{
3083
4283
  failure_taxonomy?: {
3084
4284
  pattern: string;
3085
4285
  class: string;
3086
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
4286
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
3087
4287
  hint?: string | undefined;
3088
4288
  }[] | undefined;
3089
4289
  }>;
@@ -3189,6 +4389,7 @@ declare const crewRoutingSchema: z.ZodObject<{
3189
4389
  }>;
3190
4390
  declare const crewSchema: z.ZodObject<{
3191
4391
  name: z.ZodString;
4392
+ version: z.ZodOptional<z.ZodNumber>;
3192
4393
  target: z.ZodLiteral<"crew">;
3193
4394
  /** Crew-wide model fallback used by any role that omits `role.model`. */
3194
4395
  model: z.ZodString;
@@ -3377,17 +4578,17 @@ declare const crewSchema: z.ZodObject<{
3377
4578
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
3378
4579
  class: z.ZodString;
3379
4580
  pattern: z.ZodString;
3380
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
4581
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
3381
4582
  hint: z.ZodOptional<z.ZodString>;
3382
4583
  }, "strict", z.ZodTypeAny, {
3383
4584
  pattern: string;
3384
4585
  class: string;
3385
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
4586
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
3386
4587
  hint?: string | undefined;
3387
4588
  }, {
3388
4589
  pattern: string;
3389
4590
  class: string;
3390
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
4591
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
3391
4592
  hint?: string | undefined;
3392
4593
  }>, "many">>;
3393
4594
  chains: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -3530,6 +4731,14 @@ declare const crewSchema: z.ZodObject<{
3530
4731
  pattern: string;
3531
4732
  }[] | undefined;
3532
4733
  } | undefined;
4734
+ routing?: {
4735
+ kind: "match" | "llm";
4736
+ match?: Record<string, {
4737
+ to: string;
4738
+ contains: string;
4739
+ }[]> | undefined;
4740
+ } | undefined;
4741
+ version?: number | undefined;
3533
4742
  mcp_servers?: Record<string, {
3534
4743
  transport: "stdio";
3535
4744
  command: string;
@@ -3549,7 +4758,7 @@ declare const crewSchema: z.ZodObject<{
3549
4758
  failure_taxonomy?: {
3550
4759
  pattern: string;
3551
4760
  class: string;
3552
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
4761
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
3553
4762
  hint?: string | undefined;
3554
4763
  }[] | undefined;
3555
4764
  chains?: {
@@ -3587,13 +4796,6 @@ declare const crewSchema: z.ZodObject<{
3587
4796
  maxValueUsd?: number | undefined;
3588
4797
  maxValueWei?: string | undefined;
3589
4798
  } | undefined;
3590
- routing?: {
3591
- kind: "match" | "llm";
3592
- match?: Record<string, {
3593
- to: string;
3594
- contains: string;
3595
- }[]> | undefined;
3596
- } | undefined;
3597
4799
  }, {
3598
4800
  model: string;
3599
4801
  name: string;
@@ -3623,6 +4825,14 @@ declare const crewSchema: z.ZodObject<{
3623
4825
  pattern: string;
3624
4826
  }[] | undefined;
3625
4827
  } | undefined;
4828
+ routing?: {
4829
+ kind: "match" | "llm";
4830
+ match?: Record<string, {
4831
+ to: string;
4832
+ contains: string;
4833
+ }[]> | undefined;
4834
+ } | undefined;
4835
+ version?: number | undefined;
3626
4836
  mcp_servers?: Record<string, {
3627
4837
  transport: "stdio";
3628
4838
  command: string;
@@ -3642,7 +4852,7 @@ declare const crewSchema: z.ZodObject<{
3642
4852
  failure_taxonomy?: {
3643
4853
  pattern: string;
3644
4854
  class: string;
3645
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
4855
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
3646
4856
  hint?: string | undefined;
3647
4857
  }[] | undefined;
3648
4858
  chains?: {
@@ -3680,13 +4890,6 @@ declare const crewSchema: z.ZodObject<{
3680
4890
  allowedContracts?: string[] | undefined;
3681
4891
  simulationRequired?: boolean | undefined;
3682
4892
  } | undefined;
3683
- routing?: {
3684
- kind: "match" | "llm";
3685
- match?: Record<string, {
3686
- to: string;
3687
- contains: string;
3688
- }[]> | undefined;
3689
- } | undefined;
3690
4893
  }>;
3691
4894
  declare const researchRetrieveSchema: z.ZodObject<{
3692
4895
  allowedOrigins: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
@@ -3703,6 +4906,7 @@ declare const researchRetrieveSchema: z.ZodObject<{
3703
4906
  }>;
3704
4907
  declare const researchSchema: z.ZodObject<{
3705
4908
  name: z.ZodString;
4909
+ version: z.ZodOptional<z.ZodNumber>;
3706
4910
  target: z.ZodLiteral<"research">;
3707
4911
  agent: z.ZodObject<{
3708
4912
  model: z.ZodString;
@@ -3816,19 +5020,38 @@ declare const researchSchema: z.ZodObject<{
3816
5020
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
3817
5021
  class: z.ZodString;
3818
5022
  pattern: z.ZodString;
3819
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
5023
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
3820
5024
  hint: z.ZodOptional<z.ZodString>;
3821
5025
  }, "strict", z.ZodTypeAny, {
3822
5026
  pattern: string;
3823
5027
  class: string;
3824
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
5028
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
3825
5029
  hint?: string | undefined;
3826
5030
  }, {
3827
5031
  pattern: string;
3828
5032
  class: string;
3829
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
5033
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
3830
5034
  hint?: string | undefined;
3831
5035
  }>, "many">>;
5036
+ memory: z.ZodOptional<z.ZodObject<{
5037
+ enabled: z.ZodOptional<z.ZodBoolean>;
5038
+ autoCapture: z.ZodOptional<z.ZodBoolean>;
5039
+ autoCaptureThreshold: z.ZodOptional<z.ZodNumber>;
5040
+ autoRecall: z.ZodOptional<z.ZodBoolean>;
5041
+ recallK: z.ZodOptional<z.ZodNumber>;
5042
+ }, "strict", z.ZodTypeAny, {
5043
+ enabled?: boolean | undefined;
5044
+ autoCapture?: boolean | undefined;
5045
+ autoCaptureThreshold?: number | undefined;
5046
+ autoRecall?: boolean | undefined;
5047
+ recallK?: number | undefined;
5048
+ }, {
5049
+ enabled?: boolean | undefined;
5050
+ autoCapture?: boolean | undefined;
5051
+ autoCaptureThreshold?: number | undefined;
5052
+ autoRecall?: boolean | undefined;
5053
+ recallK?: number | undefined;
5054
+ }>>;
3832
5055
  chains: z.ZodOptional<z.ZodArray<z.ZodObject<{
3833
5056
  id: z.ZodString;
3834
5057
  kind: z.ZodLiteral<"evm">;
@@ -3963,6 +5186,7 @@ declare const researchSchema: z.ZodObject<{
3963
5186
  pattern: string;
3964
5187
  }[] | undefined;
3965
5188
  } | undefined;
5189
+ version?: number | undefined;
3966
5190
  tool_config?: Record<string, unknown> | undefined;
3967
5191
  mcp_servers?: Record<string, {
3968
5192
  transport: "stdio";
@@ -3983,9 +5207,16 @@ declare const researchSchema: z.ZodObject<{
3983
5207
  failure_taxonomy?: {
3984
5208
  pattern: string;
3985
5209
  class: string;
3986
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
5210
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
3987
5211
  hint?: string | undefined;
3988
5212
  }[] | undefined;
5213
+ memory?: {
5214
+ enabled?: boolean | undefined;
5215
+ autoCapture?: boolean | undefined;
5216
+ autoCaptureThreshold?: number | undefined;
5217
+ autoRecall?: boolean | undefined;
5218
+ recallK?: number | undefined;
5219
+ } | undefined;
3989
5220
  chains?: {
3990
5221
  kind: "evm";
3991
5222
  id: string;
@@ -4037,6 +5268,7 @@ declare const researchSchema: z.ZodObject<{
4037
5268
  pattern: string;
4038
5269
  }[] | undefined;
4039
5270
  } | undefined;
5271
+ version?: number | undefined;
4040
5272
  tool_config?: Record<string, unknown> | undefined;
4041
5273
  mcp_servers?: Record<string, {
4042
5274
  transport: "stdio";
@@ -4057,9 +5289,16 @@ declare const researchSchema: z.ZodObject<{
4057
5289
  failure_taxonomy?: {
4058
5290
  pattern: string;
4059
5291
  class: string;
4060
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
5292
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
4061
5293
  hint?: string | undefined;
4062
5294
  }[] | undefined;
5295
+ memory?: {
5296
+ enabled?: boolean | undefined;
5297
+ autoCapture?: boolean | undefined;
5298
+ autoCaptureThreshold?: number | undefined;
5299
+ autoRecall?: boolean | undefined;
5300
+ recallK?: number | undefined;
5301
+ } | undefined;
4063
5302
  chains?: {
4064
5303
  kind: "evm";
4065
5304
  id: string;
@@ -4124,6 +5363,7 @@ declare const batchQueueSchema: z.ZodObject<{
4124
5363
  }>;
4125
5364
  declare const batchSchema: z.ZodObject<{
4126
5365
  name: z.ZodString;
5366
+ version: z.ZodOptional<z.ZodNumber>;
4127
5367
  target: z.ZodLiteral<"batch">;
4128
5368
  agent: z.ZodObject<{
4129
5369
  model: z.ZodString;
@@ -4242,17 +5482,17 @@ declare const batchSchema: z.ZodObject<{
4242
5482
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
4243
5483
  class: z.ZodString;
4244
5484
  pattern: z.ZodString;
4245
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
5485
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
4246
5486
  hint: z.ZodOptional<z.ZodString>;
4247
5487
  }, "strict", z.ZodTypeAny, {
4248
5488
  pattern: string;
4249
5489
  class: string;
4250
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
5490
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
4251
5491
  hint?: string | undefined;
4252
5492
  }, {
4253
5493
  pattern: string;
4254
5494
  class: string;
4255
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
5495
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
4256
5496
  hint?: string | undefined;
4257
5497
  }>, "many">>;
4258
5498
  chains: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -4390,6 +5630,7 @@ declare const batchSchema: z.ZodObject<{
4390
5630
  pattern: string;
4391
5631
  }[] | undefined;
4392
5632
  } | undefined;
5633
+ version?: number | undefined;
4393
5634
  tool_config?: Record<string, unknown> | undefined;
4394
5635
  mcp_servers?: Record<string, {
4395
5636
  transport: "stdio";
@@ -4410,7 +5651,7 @@ declare const batchSchema: z.ZodObject<{
4410
5651
  failure_taxonomy?: {
4411
5652
  pattern: string;
4412
5653
  class: string;
4413
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
5654
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
4414
5655
  hint?: string | undefined;
4415
5656
  }[] | undefined;
4416
5657
  chains?: {
@@ -4470,6 +5711,7 @@ declare const batchSchema: z.ZodObject<{
4470
5711
  pattern: string;
4471
5712
  }[] | undefined;
4472
5713
  } | undefined;
5714
+ version?: number | undefined;
4473
5715
  tool_config?: Record<string, unknown> | undefined;
4474
5716
  mcp_servers?: Record<string, {
4475
5717
  transport: "stdio";
@@ -4490,7 +5732,7 @@ declare const batchSchema: z.ZodObject<{
4490
5732
  failure_taxonomy?: {
4491
5733
  pattern: string;
4492
5734
  class: string;
4493
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
5735
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
4494
5736
  hint?: string | undefined;
4495
5737
  }[] | undefined;
4496
5738
  chains?: {
@@ -4559,6 +5801,7 @@ declare const voiceTelephonySchema: z.ZodObject<{
4559
5801
  }>;
4560
5802
  declare const voiceSchema: z.ZodObject<{
4561
5803
  name: z.ZodString;
5804
+ version: z.ZodOptional<z.ZodNumber>;
4562
5805
  target: z.ZodLiteral<"voice">;
4563
5806
  agent: z.ZodObject<{
4564
5807
  model: z.ZodString;
@@ -4682,17 +5925,17 @@ declare const voiceSchema: z.ZodObject<{
4682
5925
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
4683
5926
  class: z.ZodString;
4684
5927
  pattern: z.ZodString;
4685
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
5928
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
4686
5929
  hint: z.ZodOptional<z.ZodString>;
4687
5930
  }, "strict", z.ZodTypeAny, {
4688
5931
  pattern: string;
4689
5932
  class: string;
4690
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
5933
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
4691
5934
  hint?: string | undefined;
4692
5935
  }, {
4693
5936
  pattern: string;
4694
5937
  class: string;
4695
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
5938
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
4696
5939
  hint?: string | undefined;
4697
5940
  }>, "many">>;
4698
5941
  }, "strict", z.ZodTypeAny, {
@@ -4717,6 +5960,7 @@ declare const voiceSchema: z.ZodObject<{
4717
5960
  pattern: string;
4718
5961
  }[] | undefined;
4719
5962
  } | undefined;
5963
+ version?: number | undefined;
4720
5964
  tool_config?: Record<string, unknown> | undefined;
4721
5965
  mcp_servers?: Record<string, {
4722
5966
  transport: "stdio";
@@ -4737,7 +5981,7 @@ declare const voiceSchema: z.ZodObject<{
4737
5981
  failure_taxonomy?: {
4738
5982
  pattern: string;
4739
5983
  class: string;
4740
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
5984
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
4741
5985
  hint?: string | undefined;
4742
5986
  }[] | undefined;
4743
5987
  telephony?: {
@@ -4765,6 +6009,7 @@ declare const voiceSchema: z.ZodObject<{
4765
6009
  pattern: string;
4766
6010
  }[] | undefined;
4767
6011
  } | undefined;
6012
+ version?: number | undefined;
4768
6013
  tool_config?: Record<string, unknown> | undefined;
4769
6014
  mcp_servers?: Record<string, {
4770
6015
  transport: "stdio";
@@ -4785,7 +6030,7 @@ declare const voiceSchema: z.ZodObject<{
4785
6030
  failure_taxonomy?: {
4786
6031
  pattern: string;
4787
6032
  class: string;
4788
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
6033
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
4789
6034
  hint?: string | undefined;
4790
6035
  }[] | undefined;
4791
6036
  telephony?: {
@@ -4822,6 +6067,7 @@ declare const browserDriverSchema: z.ZodObject<{
4822
6067
  }>;
4823
6068
  declare const browserSchema: z.ZodObject<{
4824
6069
  name: z.ZodString;
6070
+ version: z.ZodOptional<z.ZodNumber>;
4825
6071
  target: z.ZodLiteral<"browser">;
4826
6072
  agent: z.ZodObject<{
4827
6073
  model: z.ZodString;
@@ -4949,17 +6195,17 @@ declare const browserSchema: z.ZodObject<{
4949
6195
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
4950
6196
  class: z.ZodString;
4951
6197
  pattern: z.ZodString;
4952
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
6198
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
4953
6199
  hint: z.ZodOptional<z.ZodString>;
4954
6200
  }, "strict", z.ZodTypeAny, {
4955
6201
  pattern: string;
4956
6202
  class: string;
4957
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
6203
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
4958
6204
  hint?: string | undefined;
4959
6205
  }, {
4960
6206
  pattern: string;
4961
6207
  class: string;
4962
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
6208
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
4963
6209
  hint?: string | undefined;
4964
6210
  }>, "many">>;
4965
6211
  }, "strict", z.ZodTypeAny, {
@@ -4985,6 +6231,7 @@ declare const browserSchema: z.ZodObject<{
4985
6231
  pattern: string;
4986
6232
  }[] | undefined;
4987
6233
  } | undefined;
6234
+ version?: number | undefined;
4988
6235
  tool_config?: Record<string, unknown> | undefined;
4989
6236
  mcp_servers?: Record<string, {
4990
6237
  transport: "stdio";
@@ -5005,7 +6252,7 @@ declare const browserSchema: z.ZodObject<{
5005
6252
  failure_taxonomy?: {
5006
6253
  pattern: string;
5007
6254
  class: string;
5008
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
6255
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
5009
6256
  hint?: string | undefined;
5010
6257
  }[] | undefined;
5011
6258
  groundingModel?: string | undefined;
@@ -5024,6 +6271,7 @@ declare const browserSchema: z.ZodObject<{
5024
6271
  pattern: string;
5025
6272
  }[] | undefined;
5026
6273
  } | undefined;
6274
+ version?: number | undefined;
5027
6275
  tool_config?: Record<string, unknown> | undefined;
5028
6276
  mcp_servers?: Record<string, {
5029
6277
  transport: "stdio";
@@ -5044,7 +6292,7 @@ declare const browserSchema: z.ZodObject<{
5044
6292
  failure_taxonomy?: {
5045
6293
  pattern: string;
5046
6294
  class: string;
5047
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
6295
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
5048
6296
  hint?: string | undefined;
5049
6297
  }[] | undefined;
5050
6298
  driver?: {
@@ -5067,6 +6315,7 @@ declare const browserSchema: z.ZodObject<{
5067
6315
  */
5068
6316
  declare const evalSchema: z.ZodObject<{
5069
6317
  name: z.ZodString;
6318
+ version: z.ZodOptional<z.ZodNumber>;
5070
6319
  target: z.ZodLiteral<"eval">;
5071
6320
  agent: z.ZodObject<{
5072
6321
  model: z.ZodString;
@@ -5109,17 +6358,17 @@ declare const evalSchema: z.ZodObject<{
5109
6358
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
5110
6359
  class: z.ZodString;
5111
6360
  pattern: z.ZodString;
5112
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
6361
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
5113
6362
  hint: z.ZodOptional<z.ZodString>;
5114
6363
  }, "strict", z.ZodTypeAny, {
5115
6364
  pattern: string;
5116
6365
  class: string;
5117
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
6366
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
5118
6367
  hint?: string | undefined;
5119
6368
  }, {
5120
6369
  pattern: string;
5121
6370
  class: string;
5122
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
6371
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
5123
6372
  hint?: string | undefined;
5124
6373
  }>, "many">>;
5125
6374
  }, "strict", z.ZodTypeAny, {
@@ -5140,10 +6389,11 @@ declare const evalSchema: z.ZodObject<{
5140
6389
  name: string;
5141
6390
  opts?: Record<string, unknown> | undefined;
5142
6391
  }[];
6392
+ version?: number | undefined;
5143
6393
  failure_taxonomy?: {
5144
6394
  pattern: string;
5145
6395
  class: string;
5146
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
6396
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
5147
6397
  hint?: string | undefined;
5148
6398
  }[] | undefined;
5149
6399
  seed?: number | undefined;
@@ -5164,10 +6414,11 @@ declare const evalSchema: z.ZodObject<{
5164
6414
  name: string;
5165
6415
  opts?: Record<string, unknown> | undefined;
5166
6416
  }[];
6417
+ version?: number | undefined;
5167
6418
  failure_taxonomy?: {
5168
6419
  pattern: string;
5169
6420
  class: string;
5170
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
6421
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
5171
6422
  hint?: string | undefined;
5172
6423
  }[] | undefined;
5173
6424
  concurrency?: number | undefined;
@@ -5228,6 +6479,7 @@ declare const onchainTriggerSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodObject
5228
6479
  }>]>;
5229
6480
  declare const onchainSchema: z.ZodObject<{
5230
6481
  name: z.ZodString;
6482
+ version: z.ZodOptional<z.ZodNumber>;
5231
6483
  target: z.ZodLiteral<"onchain">;
5232
6484
  agent: z.ZodObject<{
5233
6485
  model: z.ZodString;
@@ -5483,17 +6735,17 @@ declare const onchainSchema: z.ZodObject<{
5483
6735
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
5484
6736
  class: z.ZodString;
5485
6737
  pattern: z.ZodString;
5486
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
6738
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
5487
6739
  hint: z.ZodOptional<z.ZodString>;
5488
6740
  }, "strict", z.ZodTypeAny, {
5489
6741
  pattern: string;
5490
6742
  class: string;
5491
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
6743
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
5492
6744
  hint?: string | undefined;
5493
6745
  }, {
5494
6746
  pattern: string;
5495
6747
  class: string;
5496
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
6748
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
5497
6749
  hint?: string | undefined;
5498
6750
  }>, "many">>;
5499
6751
  }, "strict", z.ZodTypeAny, {
@@ -5563,6 +6815,7 @@ declare const onchainSchema: z.ZodObject<{
5563
6815
  pattern: string;
5564
6816
  }[] | undefined;
5565
6817
  } | undefined;
6818
+ version?: number | undefined;
5566
6819
  tool_config?: Record<string, unknown> | undefined;
5567
6820
  mcp_servers?: Record<string, {
5568
6821
  transport: "stdio";
@@ -5583,7 +6836,7 @@ declare const onchainSchema: z.ZodObject<{
5583
6836
  failure_taxonomy?: {
5584
6837
  pattern: string;
5585
6838
  class: string;
5586
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
6839
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
5587
6840
  hint?: string | undefined;
5588
6841
  }[] | undefined;
5589
6842
  }, {
@@ -5632,6 +6885,7 @@ declare const onchainSchema: z.ZodObject<{
5632
6885
  pattern: string;
5633
6886
  }[] | undefined;
5634
6887
  } | undefined;
6888
+ version?: number | undefined;
5635
6889
  tool_config?: Record<string, unknown> | undefined;
5636
6890
  mcp_servers?: Record<string, {
5637
6891
  transport: "stdio";
@@ -5652,7 +6906,7 @@ declare const onchainSchema: z.ZodObject<{
5652
6906
  failure_taxonomy?: {
5653
6907
  pattern: string;
5654
6908
  class: string;
5655
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
6909
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
5656
6910
  hint?: string | undefined;
5657
6911
  }[] | undefined;
5658
6912
  wallets?: {
@@ -5685,6 +6939,7 @@ declare const onchainSchema: z.ZodObject<{
5685
6939
  */
5686
6940
  declare const onchainGameSchema: z.ZodObject<{
5687
6941
  name: z.ZodString;
6942
+ version: z.ZodOptional<z.ZodNumber>;
5688
6943
  target: z.ZodLiteral<"onchain-game">;
5689
6944
  agent: z.ZodObject<{
5690
6945
  model: z.ZodString;
@@ -5924,17 +7179,17 @@ declare const onchainGameSchema: z.ZodObject<{
5924
7179
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
5925
7180
  class: z.ZodString;
5926
7181
  pattern: z.ZodString;
5927
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
7182
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
5928
7183
  hint: z.ZodOptional<z.ZodString>;
5929
7184
  }, "strict", z.ZodTypeAny, {
5930
7185
  pattern: string;
5931
7186
  class: string;
5932
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
7187
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
5933
7188
  hint?: string | undefined;
5934
7189
  }, {
5935
7190
  pattern: string;
5936
7191
  class: string;
5937
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
7192
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
5938
7193
  hint?: string | undefined;
5939
7194
  }>, "many">>;
5940
7195
  }, "strict", z.ZodTypeAny, {
@@ -5994,6 +7249,7 @@ declare const onchainGameSchema: z.ZodObject<{
5994
7249
  pattern: string;
5995
7250
  }[] | undefined;
5996
7251
  } | undefined;
7252
+ version?: number | undefined;
5997
7253
  tool_config?: Record<string, unknown> | undefined;
5998
7254
  mcp_servers?: Record<string, {
5999
7255
  transport: "stdio";
@@ -6014,7 +7270,7 @@ declare const onchainGameSchema: z.ZodObject<{
6014
7270
  failure_taxonomy?: {
6015
7271
  pattern: string;
6016
7272
  class: string;
6017
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
7273
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
6018
7274
  hint?: string | undefined;
6019
7275
  }[] | undefined;
6020
7276
  }, {
@@ -6067,6 +7323,7 @@ declare const onchainGameSchema: z.ZodObject<{
6067
7323
  pattern: string;
6068
7324
  }[] | undefined;
6069
7325
  } | undefined;
7326
+ version?: number | undefined;
6070
7327
  tool_config?: Record<string, unknown> | undefined;
6071
7328
  mcp_servers?: Record<string, {
6072
7329
  transport: "stdio";
@@ -6087,7 +7344,7 @@ declare const onchainGameSchema: z.ZodObject<{
6087
7344
  failure_taxonomy?: {
6088
7345
  pattern: string;
6089
7346
  class: string;
6090
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
7347
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
6091
7348
  hint?: string | undefined;
6092
7349
  }[] | undefined;
6093
7350
  transaction_policy?: {
@@ -6100,11 +7357,67 @@ declare const onchainGameSchema: z.ZodObject<{
6100
7357
  }>;
6101
7358
  export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
6102
7359
  name: z.ZodString;
7360
+ version: z.ZodOptional<z.ZodNumber>;
6103
7361
  target: z.ZodLiteral<"cli">;
6104
7362
  agent: z.ZodObject<{
6105
7363
  model: z.ZodString;
6106
7364
  instructions: z.ZodString;
6107
7365
  max_tokens: z.ZodOptional<z.ZodNumber>;
7366
+ model_fallbacks: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
7367
+ circuit_breaker: z.ZodOptional<z.ZodObject<{
7368
+ /** Consecutive failures inside windowMs that trip the breaker. */
7369
+ failureThreshold: z.ZodOptional<z.ZodNumber>;
7370
+ /** Window for counting consecutive failures (ms). */
7371
+ windowMs: z.ZodOptional<z.ZodNumber>;
7372
+ /** How long the breaker stays open before allowing a probe (ms). */
7373
+ cooldownMs: z.ZodOptional<z.ZodNumber>;
7374
+ }, "strict", z.ZodTypeAny, {
7375
+ failureThreshold?: number | undefined;
7376
+ windowMs?: number | undefined;
7377
+ cooldownMs?: number | undefined;
7378
+ }, {
7379
+ failureThreshold?: number | undefined;
7380
+ windowMs?: number | undefined;
7381
+ cooldownMs?: number | undefined;
7382
+ }>>;
7383
+ model_tiers: z.ZodOptional<z.ZodObject<{
7384
+ fast: z.ZodString;
7385
+ default: z.ZodString;
7386
+ routing: z.ZodOptional<z.ZodObject<{
7387
+ contextTokenThreshold: z.ZodOptional<z.ZodNumber>;
7388
+ toolsToDefault: z.ZodOptional<z.ZodBoolean>;
7389
+ firstTurnToDefault: z.ZodOptional<z.ZodBoolean>;
7390
+ priorToolDensityThreshold: z.ZodOptional<z.ZodNumber>;
7391
+ }, "strict", z.ZodTypeAny, {
7392
+ contextTokenThreshold?: number | undefined;
7393
+ toolsToDefault?: boolean | undefined;
7394
+ firstTurnToDefault?: boolean | undefined;
7395
+ priorToolDensityThreshold?: number | undefined;
7396
+ }, {
7397
+ contextTokenThreshold?: number | undefined;
7398
+ toolsToDefault?: boolean | undefined;
7399
+ firstTurnToDefault?: boolean | undefined;
7400
+ priorToolDensityThreshold?: number | undefined;
7401
+ }>>;
7402
+ }, "strict", z.ZodTypeAny, {
7403
+ default: string;
7404
+ fast: string;
7405
+ routing?: {
7406
+ contextTokenThreshold?: number | undefined;
7407
+ toolsToDefault?: boolean | undefined;
7408
+ firstTurnToDefault?: boolean | undefined;
7409
+ priorToolDensityThreshold?: number | undefined;
7410
+ } | undefined;
7411
+ }, {
7412
+ default: string;
7413
+ fast: string;
7414
+ routing?: {
7415
+ contextTokenThreshold?: number | undefined;
7416
+ toolsToDefault?: boolean | undefined;
7417
+ firstTurnToDefault?: boolean | undefined;
7418
+ priorToolDensityThreshold?: number | undefined;
7419
+ } | undefined;
7420
+ }>>;
6108
7421
  sub_agents: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
6109
7422
  description: z.ZodString;
6110
7423
  instructions: z.ZodString;
@@ -6146,6 +7459,22 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
6146
7459
  instructions: string;
6147
7460
  model: string;
6148
7461
  max_tokens?: number | undefined;
7462
+ model_fallbacks?: string[] | undefined;
7463
+ circuit_breaker?: {
7464
+ failureThreshold?: number | undefined;
7465
+ windowMs?: number | undefined;
7466
+ cooldownMs?: number | undefined;
7467
+ } | undefined;
7468
+ model_tiers?: {
7469
+ default: string;
7470
+ fast: string;
7471
+ routing?: {
7472
+ contextTokenThreshold?: number | undefined;
7473
+ toolsToDefault?: boolean | undefined;
7474
+ firstTurnToDefault?: boolean | undefined;
7475
+ priorToolDensityThreshold?: number | undefined;
7476
+ } | undefined;
7477
+ } | undefined;
6149
7478
  sub_agents?: Record<string, {
6150
7479
  description: string;
6151
7480
  instructions: string;
@@ -6161,6 +7490,22 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
6161
7490
  instructions: string;
6162
7491
  model: string;
6163
7492
  max_tokens?: number | undefined;
7493
+ model_fallbacks?: string[] | undefined;
7494
+ circuit_breaker?: {
7495
+ failureThreshold?: number | undefined;
7496
+ windowMs?: number | undefined;
7497
+ cooldownMs?: number | undefined;
7498
+ } | undefined;
7499
+ model_tiers?: {
7500
+ default: string;
7501
+ fast: string;
7502
+ routing?: {
7503
+ contextTokenThreshold?: number | undefined;
7504
+ toolsToDefault?: boolean | undefined;
7505
+ firstTurnToDefault?: boolean | undefined;
7506
+ priorToolDensityThreshold?: number | undefined;
7507
+ } | undefined;
7508
+ } | undefined;
6164
7509
  sub_agents?: Record<string, {
6165
7510
  description: string;
6166
7511
  instructions: string;
@@ -6310,19 +7655,54 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
6310
7655
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
6311
7656
  class: z.ZodString;
6312
7657
  pattern: z.ZodString;
6313
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
7658
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
6314
7659
  hint: z.ZodOptional<z.ZodString>;
6315
7660
  }, "strict", z.ZodTypeAny, {
6316
7661
  pattern: string;
6317
7662
  class: string;
6318
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
7663
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
6319
7664
  hint?: string | undefined;
6320
7665
  }, {
6321
7666
  pattern: string;
6322
7667
  class: string;
6323
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
7668
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
6324
7669
  hint?: string | undefined;
6325
7670
  }>, "many">>;
7671
+ budget: z.ZodOptional<z.ZodObject<{
7672
+ usd: z.ZodNumber;
7673
+ on_exceed: z.ZodDefault<z.ZodDiscriminatedUnion<"action", [z.ZodObject<{
7674
+ action: z.ZodLiteral<"stop">;
7675
+ }, "strict", z.ZodTypeAny, {
7676
+ action: "stop";
7677
+ }, {
7678
+ action: "stop";
7679
+ }>, z.ZodObject<{
7680
+ action: z.ZodLiteral<"degrade">;
7681
+ model: z.ZodString;
7682
+ }, "strict", z.ZodTypeAny, {
7683
+ model: string;
7684
+ action: "degrade";
7685
+ }, {
7686
+ model: string;
7687
+ action: "degrade";
7688
+ }>]>>;
7689
+ }, "strict", z.ZodTypeAny, {
7690
+ usd: number;
7691
+ on_exceed: {
7692
+ action: "stop";
7693
+ } | {
7694
+ model: string;
7695
+ action: "degrade";
7696
+ };
7697
+ }, {
7698
+ usd: number;
7699
+ on_exceed?: {
7700
+ action: "stop";
7701
+ } | {
7702
+ model: string;
7703
+ action: "degrade";
7704
+ } | undefined;
7705
+ }>>;
6326
7706
  feedback: z.ZodOptional<z.ZodObject<{
6327
7707
  enabled: z.ZodOptional<z.ZodBoolean>;
6328
7708
  modality: z.ZodDefault<z.ZodEnum<["binary", "stars", "scale", "comment"]>>;
@@ -6344,6 +7724,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
6344
7724
  location: string;
6345
7725
  }>>;
6346
7726
  autoDistill: z.ZodOptional<z.ZodBoolean>;
7727
+ exitPrompt: z.ZodOptional<z.ZodBoolean>;
6347
7728
  channelReactions: z.ZodOptional<z.ZodBoolean>;
6348
7729
  }, "strict", z.ZodTypeAny, {
6349
7730
  modality: "binary" | "stars" | "scale" | "comment";
@@ -6356,6 +7737,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
6356
7737
  location: string;
6357
7738
  } | undefined;
6358
7739
  autoDistill?: boolean | undefined;
7740
+ exitPrompt?: boolean | undefined;
6359
7741
  channelReactions?: boolean | undefined;
6360
7742
  }, {
6361
7743
  enabled?: boolean | undefined;
@@ -6368,8 +7750,106 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
6368
7750
  location: string;
6369
7751
  } | undefined;
6370
7752
  autoDistill?: boolean | undefined;
7753
+ exitPrompt?: boolean | undefined;
6371
7754
  channelReactions?: boolean | undefined;
6372
7755
  }>>;
7756
+ memory: z.ZodOptional<z.ZodObject<{
7757
+ enabled: z.ZodOptional<z.ZodBoolean>;
7758
+ autoCapture: z.ZodOptional<z.ZodBoolean>;
7759
+ autoCaptureThreshold: z.ZodOptional<z.ZodNumber>;
7760
+ autoRecall: z.ZodOptional<z.ZodBoolean>;
7761
+ recallK: z.ZodOptional<z.ZodNumber>;
7762
+ }, "strict", z.ZodTypeAny, {
7763
+ enabled?: boolean | undefined;
7764
+ autoCapture?: boolean | undefined;
7765
+ autoCaptureThreshold?: number | undefined;
7766
+ autoRecall?: boolean | undefined;
7767
+ recallK?: number | undefined;
7768
+ }, {
7769
+ enabled?: boolean | undefined;
7770
+ autoCapture?: boolean | undefined;
7771
+ autoCaptureThreshold?: number | undefined;
7772
+ autoRecall?: boolean | undefined;
7773
+ recallK?: number | undefined;
7774
+ }>>;
7775
+ observability: z.ZodOptional<z.ZodObject<{
7776
+ slo: z.ZodOptional<z.ZodEffects<z.ZodObject<{
7777
+ /** Fractional error rate ceiling (unrecovered errors / model calls), e.g. 0.05. */
7778
+ error_rate: z.ZodOptional<z.ZodNumber>;
7779
+ /** p95 per-turn latency ceiling, milliseconds. */
7780
+ p95_latency_ms: z.ZodOptional<z.ZodNumber>;
7781
+ /** p95 time-to-first-token ceiling, milliseconds. */
7782
+ ttft_ms: z.ZodOptional<z.ZodNumber>;
7783
+ /** Cost burn ceiling, USD per hour of wall-clock. */
7784
+ cost_per_hour_usd: z.ZodOptional<z.ZodNumber>;
7785
+ /** Fractional egress-block rate ceiling (egress-blocked / external calls), e.g. 0.1. */
7786
+ egress_block_rate: z.ZodOptional<z.ZodNumber>;
7787
+ /**
7788
+ * Rolling window (seconds) a breach must persist before the ladder fires.
7789
+ * A single blip never mitigates — the monitor only acts on a SUSTAINED
7790
+ * breach across this window. Default 300s (5 min).
7791
+ */
7792
+ window_seconds: z.ZodOptional<z.ZodNumber>;
7793
+ /**
7794
+ * Mitigation ladder, walked in declared order on a sustained breach. Each
7795
+ * rung is executed at most once per session. `alert` is always safe;
7796
+ * `pause-intake` / `rollback` touch traffic + deploys so they are opt-in.
7797
+ */
7798
+ mitigation: z.ZodOptional<z.ZodArray<z.ZodEnum<["alert", "pause-intake", "rollback"]>, "atleastone">>;
7799
+ }, "strict", z.ZodTypeAny, {
7800
+ error_rate?: number | undefined;
7801
+ p95_latency_ms?: number | undefined;
7802
+ ttft_ms?: number | undefined;
7803
+ cost_per_hour_usd?: number | undefined;
7804
+ egress_block_rate?: number | undefined;
7805
+ window_seconds?: number | undefined;
7806
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
7807
+ }, {
7808
+ error_rate?: number | undefined;
7809
+ p95_latency_ms?: number | undefined;
7810
+ ttft_ms?: number | undefined;
7811
+ cost_per_hour_usd?: number | undefined;
7812
+ egress_block_rate?: number | undefined;
7813
+ window_seconds?: number | undefined;
7814
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
7815
+ }>, {
7816
+ error_rate?: number | undefined;
7817
+ p95_latency_ms?: number | undefined;
7818
+ ttft_ms?: number | undefined;
7819
+ cost_per_hour_usd?: number | undefined;
7820
+ egress_block_rate?: number | undefined;
7821
+ window_seconds?: number | undefined;
7822
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
7823
+ }, {
7824
+ error_rate?: number | undefined;
7825
+ p95_latency_ms?: number | undefined;
7826
+ ttft_ms?: number | undefined;
7827
+ cost_per_hour_usd?: number | undefined;
7828
+ egress_block_rate?: number | undefined;
7829
+ window_seconds?: number | undefined;
7830
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
7831
+ }>>;
7832
+ }, "strict", z.ZodTypeAny, {
7833
+ slo?: {
7834
+ error_rate?: number | undefined;
7835
+ p95_latency_ms?: number | undefined;
7836
+ ttft_ms?: number | undefined;
7837
+ cost_per_hour_usd?: number | undefined;
7838
+ egress_block_rate?: number | undefined;
7839
+ window_seconds?: number | undefined;
7840
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
7841
+ } | undefined;
7842
+ }, {
7843
+ slo?: {
7844
+ error_rate?: number | undefined;
7845
+ p95_latency_ms?: number | undefined;
7846
+ ttft_ms?: number | undefined;
7847
+ cost_per_hour_usd?: number | undefined;
7848
+ egress_block_rate?: number | undefined;
7849
+ window_seconds?: number | undefined;
7850
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
7851
+ } | undefined;
7852
+ }>>;
6373
7853
  cli: z.ZodOptional<z.ZodObject<{
6374
7854
  banner: z.ZodOptional<z.ZodObject<{
6375
7855
  taglineMode: z.ZodDefault<z.ZodEnum<["static", "random"]>>;
@@ -6519,6 +7999,22 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
6519
7999
  instructions: string;
6520
8000
  model: string;
6521
8001
  max_tokens?: number | undefined;
8002
+ model_fallbacks?: string[] | undefined;
8003
+ circuit_breaker?: {
8004
+ failureThreshold?: number | undefined;
8005
+ windowMs?: number | undefined;
8006
+ cooldownMs?: number | undefined;
8007
+ } | undefined;
8008
+ model_tiers?: {
8009
+ default: string;
8010
+ fast: string;
8011
+ routing?: {
8012
+ contextTokenThreshold?: number | undefined;
8013
+ toolsToDefault?: boolean | undefined;
8014
+ firstTurnToDefault?: boolean | undefined;
8015
+ priorToolDensityThreshold?: number | undefined;
8016
+ } | undefined;
8017
+ } | undefined;
6522
8018
  sub_agents?: Record<string, {
6523
8019
  description: string;
6524
8020
  instructions: string;
@@ -6539,6 +8035,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
6539
8035
  pattern: string;
6540
8036
  }[] | undefined;
6541
8037
  } | undefined;
8038
+ version?: number | undefined;
6542
8039
  cli?: {
6543
8040
  tui: "basic" | "rich";
6544
8041
  banner?: {
@@ -6573,9 +8070,18 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
6573
8070
  failure_taxonomy?: {
6574
8071
  pattern: string;
6575
8072
  class: string;
6576
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
8073
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
6577
8074
  hint?: string | undefined;
6578
8075
  }[] | undefined;
8076
+ budget?: {
8077
+ usd: number;
8078
+ on_exceed: {
8079
+ action: "stop";
8080
+ } | {
8081
+ model: string;
8082
+ action: "degrade";
8083
+ };
8084
+ } | undefined;
6579
8085
  feedback?: {
6580
8086
  modality: "binary" | "stars" | "scale" | "comment";
6581
8087
  enabled?: boolean | undefined;
@@ -6587,8 +8093,27 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
6587
8093
  location: string;
6588
8094
  } | undefined;
6589
8095
  autoDistill?: boolean | undefined;
8096
+ exitPrompt?: boolean | undefined;
6590
8097
  channelReactions?: boolean | undefined;
6591
8098
  } | undefined;
8099
+ memory?: {
8100
+ enabled?: boolean | undefined;
8101
+ autoCapture?: boolean | undefined;
8102
+ autoCaptureThreshold?: number | undefined;
8103
+ autoRecall?: boolean | undefined;
8104
+ recallK?: number | undefined;
8105
+ } | undefined;
8106
+ observability?: {
8107
+ slo?: {
8108
+ error_rate?: number | undefined;
8109
+ p95_latency_ms?: number | undefined;
8110
+ ttft_ms?: number | undefined;
8111
+ cost_per_hour_usd?: number | undefined;
8112
+ egress_block_rate?: number | undefined;
8113
+ window_seconds?: number | undefined;
8114
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
8115
+ } | undefined;
8116
+ } | undefined;
6592
8117
  chains?: {
6593
8118
  kind: "evm";
6594
8119
  id: string;
@@ -6631,6 +8156,22 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
6631
8156
  instructions: string;
6632
8157
  model: string;
6633
8158
  max_tokens?: number | undefined;
8159
+ model_fallbacks?: string[] | undefined;
8160
+ circuit_breaker?: {
8161
+ failureThreshold?: number | undefined;
8162
+ windowMs?: number | undefined;
8163
+ cooldownMs?: number | undefined;
8164
+ } | undefined;
8165
+ model_tiers?: {
8166
+ default: string;
8167
+ fast: string;
8168
+ routing?: {
8169
+ contextTokenThreshold?: number | undefined;
8170
+ toolsToDefault?: boolean | undefined;
8171
+ firstTurnToDefault?: boolean | undefined;
8172
+ priorToolDensityThreshold?: number | undefined;
8173
+ } | undefined;
8174
+ } | undefined;
6634
8175
  sub_agents?: Record<string, {
6635
8176
  description: string;
6636
8177
  instructions: string;
@@ -6651,6 +8192,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
6651
8192
  pattern: string;
6652
8193
  }[] | undefined;
6653
8194
  } | undefined;
8195
+ version?: number | undefined;
6654
8196
  cli?: {
6655
8197
  banner?: {
6656
8198
  taglines: string[];
@@ -6685,9 +8227,18 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
6685
8227
  failure_taxonomy?: {
6686
8228
  pattern: string;
6687
8229
  class: string;
6688
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
8230
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
6689
8231
  hint?: string | undefined;
6690
8232
  }[] | undefined;
8233
+ budget?: {
8234
+ usd: number;
8235
+ on_exceed?: {
8236
+ action: "stop";
8237
+ } | {
8238
+ model: string;
8239
+ action: "degrade";
8240
+ } | undefined;
8241
+ } | undefined;
6691
8242
  feedback?: {
6692
8243
  enabled?: boolean | undefined;
6693
8244
  scale?: {
@@ -6699,8 +8250,27 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
6699
8250
  location: string;
6700
8251
  } | undefined;
6701
8252
  autoDistill?: boolean | undefined;
8253
+ exitPrompt?: boolean | undefined;
6702
8254
  channelReactions?: boolean | undefined;
6703
8255
  } | undefined;
8256
+ memory?: {
8257
+ enabled?: boolean | undefined;
8258
+ autoCapture?: boolean | undefined;
8259
+ autoCaptureThreshold?: number | undefined;
8260
+ autoRecall?: boolean | undefined;
8261
+ recallK?: number | undefined;
8262
+ } | undefined;
8263
+ observability?: {
8264
+ slo?: {
8265
+ error_rate?: number | undefined;
8266
+ p95_latency_ms?: number | undefined;
8267
+ ttft_ms?: number | undefined;
8268
+ cost_per_hour_usd?: number | undefined;
8269
+ egress_block_rate?: number | undefined;
8270
+ window_seconds?: number | undefined;
8271
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
8272
+ } | undefined;
8273
+ } | undefined;
6704
8274
  chains?: {
6705
8275
  kind: "evm";
6706
8276
  id: string;
@@ -6738,6 +8308,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
6738
8308
  } | undefined;
6739
8309
  }>, z.ZodObject<{
6740
8310
  name: z.ZodString;
8311
+ version: z.ZodOptional<z.ZodNumber>;
6741
8312
  target: z.ZodLiteral<"workflow">;
6742
8313
  model: z.ZodString;
6743
8314
  steps: z.ZodArray<z.ZodObject<{
@@ -6843,17 +8414,17 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
6843
8414
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
6844
8415
  class: z.ZodString;
6845
8416
  pattern: z.ZodString;
6846
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
8417
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
6847
8418
  hint: z.ZodOptional<z.ZodString>;
6848
8419
  }, "strict", z.ZodTypeAny, {
6849
8420
  pattern: string;
6850
8421
  class: string;
6851
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
8422
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
6852
8423
  hint?: string | undefined;
6853
8424
  }, {
6854
8425
  pattern: string;
6855
8426
  class: string;
6856
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
8427
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
6857
8428
  hint?: string | undefined;
6858
8429
  }>, "many">>;
6859
8430
  chains: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -6985,6 +8556,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
6985
8556
  pattern: string;
6986
8557
  }[] | undefined;
6987
8558
  } | undefined;
8559
+ version?: number | undefined;
6988
8560
  mcp_servers?: Record<string, {
6989
8561
  transport: "stdio";
6990
8562
  command: string;
@@ -7004,7 +8576,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7004
8576
  failure_taxonomy?: {
7005
8577
  pattern: string;
7006
8578
  class: string;
7007
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
8579
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
7008
8580
  hint?: string | undefined;
7009
8581
  }[] | undefined;
7010
8582
  chains?: {
@@ -7060,6 +8632,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7060
8632
  pattern: string;
7061
8633
  }[] | undefined;
7062
8634
  } | undefined;
8635
+ version?: number | undefined;
7063
8636
  mcp_servers?: Record<string, {
7064
8637
  transport: "stdio";
7065
8638
  command: string;
@@ -7079,7 +8652,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7079
8652
  failure_taxonomy?: {
7080
8653
  pattern: string;
7081
8654
  class: string;
7082
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
8655
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
7083
8656
  hint?: string | undefined;
7084
8657
  }[] | undefined;
7085
8658
  chains?: {
@@ -7119,10 +8692,66 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7119
8692
  } | undefined;
7120
8693
  }>, z.ZodObject<{
7121
8694
  name: z.ZodString;
8695
+ version: z.ZodOptional<z.ZodNumber>;
7122
8696
  target: z.ZodLiteral<"channel">;
7123
8697
  agent: z.ZodObject<{
7124
8698
  model: z.ZodString;
7125
8699
  instructions: z.ZodString;
8700
+ model_fallbacks: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
8701
+ circuit_breaker: z.ZodOptional<z.ZodObject<{
8702
+ /** Consecutive failures inside windowMs that trip the breaker. */
8703
+ failureThreshold: z.ZodOptional<z.ZodNumber>;
8704
+ /** Window for counting consecutive failures (ms). */
8705
+ windowMs: z.ZodOptional<z.ZodNumber>;
8706
+ /** How long the breaker stays open before allowing a probe (ms). */
8707
+ cooldownMs: z.ZodOptional<z.ZodNumber>;
8708
+ }, "strict", z.ZodTypeAny, {
8709
+ failureThreshold?: number | undefined;
8710
+ windowMs?: number | undefined;
8711
+ cooldownMs?: number | undefined;
8712
+ }, {
8713
+ failureThreshold?: number | undefined;
8714
+ windowMs?: number | undefined;
8715
+ cooldownMs?: number | undefined;
8716
+ }>>;
8717
+ model_tiers: z.ZodOptional<z.ZodObject<{
8718
+ fast: z.ZodString;
8719
+ default: z.ZodString;
8720
+ routing: z.ZodOptional<z.ZodObject<{
8721
+ contextTokenThreshold: z.ZodOptional<z.ZodNumber>;
8722
+ toolsToDefault: z.ZodOptional<z.ZodBoolean>;
8723
+ firstTurnToDefault: z.ZodOptional<z.ZodBoolean>;
8724
+ priorToolDensityThreshold: z.ZodOptional<z.ZodNumber>;
8725
+ }, "strict", z.ZodTypeAny, {
8726
+ contextTokenThreshold?: number | undefined;
8727
+ toolsToDefault?: boolean | undefined;
8728
+ firstTurnToDefault?: boolean | undefined;
8729
+ priorToolDensityThreshold?: number | undefined;
8730
+ }, {
8731
+ contextTokenThreshold?: number | undefined;
8732
+ toolsToDefault?: boolean | undefined;
8733
+ firstTurnToDefault?: boolean | undefined;
8734
+ priorToolDensityThreshold?: number | undefined;
8735
+ }>>;
8736
+ }, "strict", z.ZodTypeAny, {
8737
+ default: string;
8738
+ fast: string;
8739
+ routing?: {
8740
+ contextTokenThreshold?: number | undefined;
8741
+ toolsToDefault?: boolean | undefined;
8742
+ firstTurnToDefault?: boolean | undefined;
8743
+ priorToolDensityThreshold?: number | undefined;
8744
+ } | undefined;
8745
+ }, {
8746
+ default: string;
8747
+ fast: string;
8748
+ routing?: {
8749
+ contextTokenThreshold?: number | undefined;
8750
+ toolsToDefault?: boolean | undefined;
8751
+ firstTurnToDefault?: boolean | undefined;
8752
+ priorToolDensityThreshold?: number | undefined;
8753
+ } | undefined;
8754
+ }>>;
7126
8755
  tools: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
7127
8756
  tool_config: z.ZodOptional<z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodUnknown>, Record<string, unknown>, Record<string, unknown>>>;
7128
8757
  sub_agents: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
@@ -7166,6 +8795,22 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7166
8795
  instructions: string;
7167
8796
  model: string;
7168
8797
  tools?: string[] | undefined;
8798
+ model_fallbacks?: string[] | undefined;
8799
+ circuit_breaker?: {
8800
+ failureThreshold?: number | undefined;
8801
+ windowMs?: number | undefined;
8802
+ cooldownMs?: number | undefined;
8803
+ } | undefined;
8804
+ model_tiers?: {
8805
+ default: string;
8806
+ fast: string;
8807
+ routing?: {
8808
+ contextTokenThreshold?: number | undefined;
8809
+ toolsToDefault?: boolean | undefined;
8810
+ firstTurnToDefault?: boolean | undefined;
8811
+ priorToolDensityThreshold?: number | undefined;
8812
+ } | undefined;
8813
+ } | undefined;
7169
8814
  sub_agents?: Record<string, {
7170
8815
  description: string;
7171
8816
  instructions: string;
@@ -7182,6 +8827,22 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7182
8827
  instructions: string;
7183
8828
  model: string;
7184
8829
  tools?: string[] | undefined;
8830
+ model_fallbacks?: string[] | undefined;
8831
+ circuit_breaker?: {
8832
+ failureThreshold?: number | undefined;
8833
+ windowMs?: number | undefined;
8834
+ cooldownMs?: number | undefined;
8835
+ } | undefined;
8836
+ model_tiers?: {
8837
+ default: string;
8838
+ fast: string;
8839
+ routing?: {
8840
+ contextTokenThreshold?: number | undefined;
8841
+ toolsToDefault?: boolean | undefined;
8842
+ firstTurnToDefault?: boolean | undefined;
8843
+ priorToolDensityThreshold?: number | undefined;
8844
+ } | undefined;
8845
+ } | undefined;
7185
8846
  sub_agents?: Record<string, {
7186
8847
  description: string;
7187
8848
  instructions: string;
@@ -7443,19 +9104,54 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7443
9104
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
7444
9105
  class: z.ZodString;
7445
9106
  pattern: z.ZodString;
7446
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
9107
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
7447
9108
  hint: z.ZodOptional<z.ZodString>;
7448
9109
  }, "strict", z.ZodTypeAny, {
7449
9110
  pattern: string;
7450
9111
  class: string;
7451
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
9112
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
7452
9113
  hint?: string | undefined;
7453
9114
  }, {
7454
9115
  pattern: string;
7455
9116
  class: string;
7456
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
9117
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
7457
9118
  hint?: string | undefined;
7458
9119
  }>, "many">>;
9120
+ budget: z.ZodOptional<z.ZodObject<{
9121
+ usd: z.ZodNumber;
9122
+ on_exceed: z.ZodDefault<z.ZodDiscriminatedUnion<"action", [z.ZodObject<{
9123
+ action: z.ZodLiteral<"stop">;
9124
+ }, "strict", z.ZodTypeAny, {
9125
+ action: "stop";
9126
+ }, {
9127
+ action: "stop";
9128
+ }>, z.ZodObject<{
9129
+ action: z.ZodLiteral<"degrade">;
9130
+ model: z.ZodString;
9131
+ }, "strict", z.ZodTypeAny, {
9132
+ model: string;
9133
+ action: "degrade";
9134
+ }, {
9135
+ model: string;
9136
+ action: "degrade";
9137
+ }>]>>;
9138
+ }, "strict", z.ZodTypeAny, {
9139
+ usd: number;
9140
+ on_exceed: {
9141
+ action: "stop";
9142
+ } | {
9143
+ model: string;
9144
+ action: "degrade";
9145
+ };
9146
+ }, {
9147
+ usd: number;
9148
+ on_exceed?: {
9149
+ action: "stop";
9150
+ } | {
9151
+ model: string;
9152
+ action: "degrade";
9153
+ } | undefined;
9154
+ }>>;
7459
9155
  feedback: z.ZodOptional<z.ZodObject<{
7460
9156
  enabled: z.ZodOptional<z.ZodBoolean>;
7461
9157
  modality: z.ZodDefault<z.ZodEnum<["binary", "stars", "scale", "comment"]>>;
@@ -7477,6 +9173,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7477
9173
  location: string;
7478
9174
  }>>;
7479
9175
  autoDistill: z.ZodOptional<z.ZodBoolean>;
9176
+ exitPrompt: z.ZodOptional<z.ZodBoolean>;
7480
9177
  channelReactions: z.ZodOptional<z.ZodBoolean>;
7481
9178
  }, "strict", z.ZodTypeAny, {
7482
9179
  modality: "binary" | "stars" | "scale" | "comment";
@@ -7489,6 +9186,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7489
9186
  location: string;
7490
9187
  } | undefined;
7491
9188
  autoDistill?: boolean | undefined;
9189
+ exitPrompt?: boolean | undefined;
7492
9190
  channelReactions?: boolean | undefined;
7493
9191
  }, {
7494
9192
  enabled?: boolean | undefined;
@@ -7501,8 +9199,106 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7501
9199
  location: string;
7502
9200
  } | undefined;
7503
9201
  autoDistill?: boolean | undefined;
9202
+ exitPrompt?: boolean | undefined;
7504
9203
  channelReactions?: boolean | undefined;
7505
9204
  }>>;
9205
+ memory: z.ZodOptional<z.ZodObject<{
9206
+ enabled: z.ZodOptional<z.ZodBoolean>;
9207
+ autoCapture: z.ZodOptional<z.ZodBoolean>;
9208
+ autoCaptureThreshold: z.ZodOptional<z.ZodNumber>;
9209
+ autoRecall: z.ZodOptional<z.ZodBoolean>;
9210
+ recallK: z.ZodOptional<z.ZodNumber>;
9211
+ }, "strict", z.ZodTypeAny, {
9212
+ enabled?: boolean | undefined;
9213
+ autoCapture?: boolean | undefined;
9214
+ autoCaptureThreshold?: number | undefined;
9215
+ autoRecall?: boolean | undefined;
9216
+ recallK?: number | undefined;
9217
+ }, {
9218
+ enabled?: boolean | undefined;
9219
+ autoCapture?: boolean | undefined;
9220
+ autoCaptureThreshold?: number | undefined;
9221
+ autoRecall?: boolean | undefined;
9222
+ recallK?: number | undefined;
9223
+ }>>;
9224
+ observability: z.ZodOptional<z.ZodObject<{
9225
+ slo: z.ZodOptional<z.ZodEffects<z.ZodObject<{
9226
+ /** Fractional error rate ceiling (unrecovered errors / model calls), e.g. 0.05. */
9227
+ error_rate: z.ZodOptional<z.ZodNumber>;
9228
+ /** p95 per-turn latency ceiling, milliseconds. */
9229
+ p95_latency_ms: z.ZodOptional<z.ZodNumber>;
9230
+ /** p95 time-to-first-token ceiling, milliseconds. */
9231
+ ttft_ms: z.ZodOptional<z.ZodNumber>;
9232
+ /** Cost burn ceiling, USD per hour of wall-clock. */
9233
+ cost_per_hour_usd: z.ZodOptional<z.ZodNumber>;
9234
+ /** Fractional egress-block rate ceiling (egress-blocked / external calls), e.g. 0.1. */
9235
+ egress_block_rate: z.ZodOptional<z.ZodNumber>;
9236
+ /**
9237
+ * Rolling window (seconds) a breach must persist before the ladder fires.
9238
+ * A single blip never mitigates — the monitor only acts on a SUSTAINED
9239
+ * breach across this window. Default 300s (5 min).
9240
+ */
9241
+ window_seconds: z.ZodOptional<z.ZodNumber>;
9242
+ /**
9243
+ * Mitigation ladder, walked in declared order on a sustained breach. Each
9244
+ * rung is executed at most once per session. `alert` is always safe;
9245
+ * `pause-intake` / `rollback` touch traffic + deploys so they are opt-in.
9246
+ */
9247
+ mitigation: z.ZodOptional<z.ZodArray<z.ZodEnum<["alert", "pause-intake", "rollback"]>, "atleastone">>;
9248
+ }, "strict", z.ZodTypeAny, {
9249
+ error_rate?: number | undefined;
9250
+ p95_latency_ms?: number | undefined;
9251
+ ttft_ms?: number | undefined;
9252
+ cost_per_hour_usd?: number | undefined;
9253
+ egress_block_rate?: number | undefined;
9254
+ window_seconds?: number | undefined;
9255
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
9256
+ }, {
9257
+ error_rate?: number | undefined;
9258
+ p95_latency_ms?: number | undefined;
9259
+ ttft_ms?: number | undefined;
9260
+ cost_per_hour_usd?: number | undefined;
9261
+ egress_block_rate?: number | undefined;
9262
+ window_seconds?: number | undefined;
9263
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
9264
+ }>, {
9265
+ error_rate?: number | undefined;
9266
+ p95_latency_ms?: number | undefined;
9267
+ ttft_ms?: number | undefined;
9268
+ cost_per_hour_usd?: number | undefined;
9269
+ egress_block_rate?: number | undefined;
9270
+ window_seconds?: number | undefined;
9271
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
9272
+ }, {
9273
+ error_rate?: number | undefined;
9274
+ p95_latency_ms?: number | undefined;
9275
+ ttft_ms?: number | undefined;
9276
+ cost_per_hour_usd?: number | undefined;
9277
+ egress_block_rate?: number | undefined;
9278
+ window_seconds?: number | undefined;
9279
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
9280
+ }>>;
9281
+ }, "strict", z.ZodTypeAny, {
9282
+ slo?: {
9283
+ error_rate?: number | undefined;
9284
+ p95_latency_ms?: number | undefined;
9285
+ ttft_ms?: number | undefined;
9286
+ cost_per_hour_usd?: number | undefined;
9287
+ egress_block_rate?: number | undefined;
9288
+ window_seconds?: number | undefined;
9289
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
9290
+ } | undefined;
9291
+ }, {
9292
+ slo?: {
9293
+ error_rate?: number | undefined;
9294
+ p95_latency_ms?: number | undefined;
9295
+ ttft_ms?: number | undefined;
9296
+ cost_per_hour_usd?: number | undefined;
9297
+ egress_block_rate?: number | undefined;
9298
+ window_seconds?: number | undefined;
9299
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
9300
+ } | undefined;
9301
+ }>>;
7506
9302
  heartbeat: z.ZodOptional<z.ZodObject<{
7507
9303
  every: z.ZodString;
7508
9304
  instructions: z.ZodString;
@@ -7635,12 +9431,31 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7635
9431
  simulationRequired?: boolean | undefined;
7636
9432
  }>>;
7637
9433
  }, "strict", z.ZodTypeAny, {
9434
+ routing: {
9435
+ sessionKey: "thread" | "user" | "channel";
9436
+ };
7638
9437
  name: string;
7639
9438
  target: "channel";
7640
9439
  agent: {
7641
9440
  instructions: string;
7642
9441
  model: string;
7643
9442
  tools?: string[] | undefined;
9443
+ model_fallbacks?: string[] | undefined;
9444
+ circuit_breaker?: {
9445
+ failureThreshold?: number | undefined;
9446
+ windowMs?: number | undefined;
9447
+ cooldownMs?: number | undefined;
9448
+ } | undefined;
9449
+ model_tiers?: {
9450
+ default: string;
9451
+ fast: string;
9452
+ routing?: {
9453
+ contextTokenThreshold?: number | undefined;
9454
+ toolsToDefault?: boolean | undefined;
9455
+ firstTurnToDefault?: boolean | undefined;
9456
+ priorToolDensityThreshold?: number | undefined;
9457
+ } | undefined;
9458
+ } | undefined;
7644
9459
  sub_agents?: Record<string, {
7645
9460
  description: string;
7646
9461
  instructions: string;
@@ -7679,9 +9494,6 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7679
9494
  cursorPath?: string | undefined;
7680
9495
  } | undefined;
7681
9496
  };
7682
- routing: {
7683
- sessionKey: "thread" | "user" | "channel";
7684
- };
7685
9497
  permissions?: {
7686
9498
  mode?: "default" | "plan" | "auto" | undefined;
7687
9499
  rules?: {
@@ -7689,6 +9501,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7689
9501
  pattern: string;
7690
9502
  }[] | undefined;
7691
9503
  } | undefined;
9504
+ version?: number | undefined;
7692
9505
  mcp_servers?: Record<string, {
7693
9506
  transport: "stdio";
7694
9507
  command: string;
@@ -7708,9 +9521,18 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7708
9521
  failure_taxonomy?: {
7709
9522
  pattern: string;
7710
9523
  class: string;
7711
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
9524
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
7712
9525
  hint?: string | undefined;
7713
9526
  }[] | undefined;
9527
+ budget?: {
9528
+ usd: number;
9529
+ on_exceed: {
9530
+ action: "stop";
9531
+ } | {
9532
+ model: string;
9533
+ action: "degrade";
9534
+ };
9535
+ } | undefined;
7714
9536
  feedback?: {
7715
9537
  modality: "binary" | "stars" | "scale" | "comment";
7716
9538
  enabled?: boolean | undefined;
@@ -7722,8 +9544,27 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7722
9544
  location: string;
7723
9545
  } | undefined;
7724
9546
  autoDistill?: boolean | undefined;
9547
+ exitPrompt?: boolean | undefined;
7725
9548
  channelReactions?: boolean | undefined;
7726
9549
  } | undefined;
9550
+ memory?: {
9551
+ enabled?: boolean | undefined;
9552
+ autoCapture?: boolean | undefined;
9553
+ autoCaptureThreshold?: number | undefined;
9554
+ autoRecall?: boolean | undefined;
9555
+ recallK?: number | undefined;
9556
+ } | undefined;
9557
+ observability?: {
9558
+ slo?: {
9559
+ error_rate?: number | undefined;
9560
+ p95_latency_ms?: number | undefined;
9561
+ ttft_ms?: number | undefined;
9562
+ cost_per_hour_usd?: number | undefined;
9563
+ egress_block_rate?: number | undefined;
9564
+ window_seconds?: number | undefined;
9565
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
9566
+ } | undefined;
9567
+ } | undefined;
7727
9568
  chains?: {
7728
9569
  kind: "evm";
7729
9570
  id: string;
@@ -7768,12 +9609,31 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7768
9609
  ui: boolean;
7769
9610
  } | undefined;
7770
9611
  }, {
9612
+ routing: {
9613
+ sessionKey: "thread" | "user" | "channel";
9614
+ };
7771
9615
  name: string;
7772
9616
  target: "channel";
7773
9617
  agent: {
7774
9618
  instructions: string;
7775
9619
  model: string;
7776
9620
  tools?: string[] | undefined;
9621
+ model_fallbacks?: string[] | undefined;
9622
+ circuit_breaker?: {
9623
+ failureThreshold?: number | undefined;
9624
+ windowMs?: number | undefined;
9625
+ cooldownMs?: number | undefined;
9626
+ } | undefined;
9627
+ model_tiers?: {
9628
+ default: string;
9629
+ fast: string;
9630
+ routing?: {
9631
+ contextTokenThreshold?: number | undefined;
9632
+ toolsToDefault?: boolean | undefined;
9633
+ firstTurnToDefault?: boolean | undefined;
9634
+ priorToolDensityThreshold?: number | undefined;
9635
+ } | undefined;
9636
+ } | undefined;
7777
9637
  sub_agents?: Record<string, {
7778
9638
  description: string;
7779
9639
  instructions: string;
@@ -7812,9 +9672,6 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7812
9672
  cursorPath?: string | undefined;
7813
9673
  } | undefined;
7814
9674
  };
7815
- routing: {
7816
- sessionKey: "thread" | "user" | "channel";
7817
- };
7818
9675
  permissions?: {
7819
9676
  mode?: "default" | "plan" | "auto" | undefined;
7820
9677
  rules?: {
@@ -7822,6 +9679,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7822
9679
  pattern: string;
7823
9680
  }[] | undefined;
7824
9681
  } | undefined;
9682
+ version?: number | undefined;
7825
9683
  mcp_servers?: Record<string, {
7826
9684
  transport: "stdio";
7827
9685
  command: string;
@@ -7841,9 +9699,18 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7841
9699
  failure_taxonomy?: {
7842
9700
  pattern: string;
7843
9701
  class: string;
7844
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
9702
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
7845
9703
  hint?: string | undefined;
7846
9704
  }[] | undefined;
9705
+ budget?: {
9706
+ usd: number;
9707
+ on_exceed?: {
9708
+ action: "stop";
9709
+ } | {
9710
+ model: string;
9711
+ action: "degrade";
9712
+ } | undefined;
9713
+ } | undefined;
7847
9714
  feedback?: {
7848
9715
  enabled?: boolean | undefined;
7849
9716
  scale?: {
@@ -7855,8 +9722,27 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7855
9722
  location: string;
7856
9723
  } | undefined;
7857
9724
  autoDistill?: boolean | undefined;
9725
+ exitPrompt?: boolean | undefined;
7858
9726
  channelReactions?: boolean | undefined;
7859
9727
  } | undefined;
9728
+ memory?: {
9729
+ enabled?: boolean | undefined;
9730
+ autoCapture?: boolean | undefined;
9731
+ autoCaptureThreshold?: number | undefined;
9732
+ autoRecall?: boolean | undefined;
9733
+ recallK?: number | undefined;
9734
+ } | undefined;
9735
+ observability?: {
9736
+ slo?: {
9737
+ error_rate?: number | undefined;
9738
+ p95_latency_ms?: number | undefined;
9739
+ ttft_ms?: number | undefined;
9740
+ cost_per_hour_usd?: number | undefined;
9741
+ egress_block_rate?: number | undefined;
9742
+ window_seconds?: number | undefined;
9743
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
9744
+ } | undefined;
9745
+ } | undefined;
7860
9746
  chains?: {
7861
9747
  kind: "evm";
7862
9748
  id: string;
@@ -7902,6 +9788,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
7902
9788
  } | undefined;
7903
9789
  }>, z.ZodObject<{
7904
9790
  name: z.ZodString;
9791
+ version: z.ZodOptional<z.ZodNumber>;
7905
9792
  target: z.ZodLiteral<"graph">;
7906
9793
  model: z.ZodString;
7907
9794
  entry: z.ZodString;
@@ -8005,17 +9892,17 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
8005
9892
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
8006
9893
  class: z.ZodString;
8007
9894
  pattern: z.ZodString;
8008
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
9895
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
8009
9896
  hint: z.ZodOptional<z.ZodString>;
8010
9897
  }, "strict", z.ZodTypeAny, {
8011
9898
  pattern: string;
8012
9899
  class: string;
8013
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
9900
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
8014
9901
  hint?: string | undefined;
8015
9902
  }, {
8016
9903
  pattern: string;
8017
9904
  class: string;
8018
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
9905
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
8019
9906
  hint?: string | undefined;
8020
9907
  }>, "many">>;
8021
9908
  chains: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -8154,6 +10041,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
8154
10041
  pattern: string;
8155
10042
  }[] | undefined;
8156
10043
  } | undefined;
10044
+ version?: number | undefined;
8157
10045
  compaction?: {
8158
10046
  model?: string | undefined;
8159
10047
  curate?: boolean | undefined;
@@ -8163,7 +10051,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
8163
10051
  failure_taxonomy?: {
8164
10052
  pattern: string;
8165
10053
  class: string;
8166
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
10054
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
8167
10055
  hint?: string | undefined;
8168
10056
  }[] | undefined;
8169
10057
  chains?: {
@@ -8222,6 +10110,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
8222
10110
  pattern: string;
8223
10111
  }[] | undefined;
8224
10112
  } | undefined;
10113
+ version?: number | undefined;
8225
10114
  compaction?: {
8226
10115
  model?: string | undefined;
8227
10116
  curate?: boolean | undefined;
@@ -8231,7 +10120,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
8231
10120
  failure_taxonomy?: {
8232
10121
  pattern: string;
8233
10122
  class: string;
8234
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
10123
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
8235
10124
  hint?: string | undefined;
8236
10125
  }[] | undefined;
8237
10126
  chains?: {
@@ -8275,16 +10164,104 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
8275
10164
  }[] | undefined;
8276
10165
  }>, z.ZodObject<{
8277
10166
  name: z.ZodString;
10167
+ version: z.ZodOptional<z.ZodNumber>;
8278
10168
  target: z.ZodLiteral<"managed">;
8279
10169
  agent: z.ZodObject<{
8280
10170
  model: z.ZodString;
8281
10171
  instructions: z.ZodString;
10172
+ model_fallbacks: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
10173
+ circuit_breaker: z.ZodOptional<z.ZodObject<{
10174
+ /** Consecutive failures inside windowMs that trip the breaker. */
10175
+ failureThreshold: z.ZodOptional<z.ZodNumber>;
10176
+ /** Window for counting consecutive failures (ms). */
10177
+ windowMs: z.ZodOptional<z.ZodNumber>;
10178
+ /** How long the breaker stays open before allowing a probe (ms). */
10179
+ cooldownMs: z.ZodOptional<z.ZodNumber>;
10180
+ }, "strict", z.ZodTypeAny, {
10181
+ failureThreshold?: number | undefined;
10182
+ windowMs?: number | undefined;
10183
+ cooldownMs?: number | undefined;
10184
+ }, {
10185
+ failureThreshold?: number | undefined;
10186
+ windowMs?: number | undefined;
10187
+ cooldownMs?: number | undefined;
10188
+ }>>;
10189
+ model_tiers: z.ZodOptional<z.ZodObject<{
10190
+ fast: z.ZodString;
10191
+ default: z.ZodString;
10192
+ routing: z.ZodOptional<z.ZodObject<{
10193
+ contextTokenThreshold: z.ZodOptional<z.ZodNumber>;
10194
+ toolsToDefault: z.ZodOptional<z.ZodBoolean>;
10195
+ firstTurnToDefault: z.ZodOptional<z.ZodBoolean>;
10196
+ priorToolDensityThreshold: z.ZodOptional<z.ZodNumber>;
10197
+ }, "strict", z.ZodTypeAny, {
10198
+ contextTokenThreshold?: number | undefined;
10199
+ toolsToDefault?: boolean | undefined;
10200
+ firstTurnToDefault?: boolean | undefined;
10201
+ priorToolDensityThreshold?: number | undefined;
10202
+ }, {
10203
+ contextTokenThreshold?: number | undefined;
10204
+ toolsToDefault?: boolean | undefined;
10205
+ firstTurnToDefault?: boolean | undefined;
10206
+ priorToolDensityThreshold?: number | undefined;
10207
+ }>>;
10208
+ }, "strict", z.ZodTypeAny, {
10209
+ default: string;
10210
+ fast: string;
10211
+ routing?: {
10212
+ contextTokenThreshold?: number | undefined;
10213
+ toolsToDefault?: boolean | undefined;
10214
+ firstTurnToDefault?: boolean | undefined;
10215
+ priorToolDensityThreshold?: number | undefined;
10216
+ } | undefined;
10217
+ }, {
10218
+ default: string;
10219
+ fast: string;
10220
+ routing?: {
10221
+ contextTokenThreshold?: number | undefined;
10222
+ toolsToDefault?: boolean | undefined;
10223
+ firstTurnToDefault?: boolean | undefined;
10224
+ priorToolDensityThreshold?: number | undefined;
10225
+ } | undefined;
10226
+ }>>;
8282
10227
  }, "strict", z.ZodTypeAny, {
8283
10228
  instructions: string;
8284
10229
  model: string;
10230
+ model_fallbacks?: string[] | undefined;
10231
+ circuit_breaker?: {
10232
+ failureThreshold?: number | undefined;
10233
+ windowMs?: number | undefined;
10234
+ cooldownMs?: number | undefined;
10235
+ } | undefined;
10236
+ model_tiers?: {
10237
+ default: string;
10238
+ fast: string;
10239
+ routing?: {
10240
+ contextTokenThreshold?: number | undefined;
10241
+ toolsToDefault?: boolean | undefined;
10242
+ firstTurnToDefault?: boolean | undefined;
10243
+ priorToolDensityThreshold?: number | undefined;
10244
+ } | undefined;
10245
+ } | undefined;
8285
10246
  }, {
8286
10247
  instructions: string;
8287
10248
  model: string;
10249
+ model_fallbacks?: string[] | undefined;
10250
+ circuit_breaker?: {
10251
+ failureThreshold?: number | undefined;
10252
+ windowMs?: number | undefined;
10253
+ cooldownMs?: number | undefined;
10254
+ } | undefined;
10255
+ model_tiers?: {
10256
+ default: string;
10257
+ fast: string;
10258
+ routing?: {
10259
+ contextTokenThreshold?: number | undefined;
10260
+ toolsToDefault?: boolean | undefined;
10261
+ firstTurnToDefault?: boolean | undefined;
10262
+ priorToolDensityThreshold?: number | undefined;
10263
+ } | undefined;
10264
+ } | undefined;
8288
10265
  }>;
8289
10266
  tenants: z.ZodArray<z.ZodObject<{
8290
10267
  id: z.ZodString;
@@ -8367,25 +10344,173 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
8367
10344
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
8368
10345
  class: z.ZodString;
8369
10346
  pattern: z.ZodString;
8370
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
10347
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
8371
10348
  hint: z.ZodOptional<z.ZodString>;
8372
10349
  }, "strict", z.ZodTypeAny, {
8373
10350
  pattern: string;
8374
10351
  class: string;
8375
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
10352
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
8376
10353
  hint?: string | undefined;
8377
10354
  }, {
8378
10355
  pattern: string;
8379
10356
  class: string;
8380
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
10357
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
8381
10358
  hint?: string | undefined;
8382
10359
  }>, "many">>;
10360
+ budget: z.ZodOptional<z.ZodObject<{
10361
+ usd: z.ZodNumber;
10362
+ on_exceed: z.ZodDefault<z.ZodDiscriminatedUnion<"action", [z.ZodObject<{
10363
+ action: z.ZodLiteral<"stop">;
10364
+ }, "strict", z.ZodTypeAny, {
10365
+ action: "stop";
10366
+ }, {
10367
+ action: "stop";
10368
+ }>, z.ZodObject<{
10369
+ action: z.ZodLiteral<"degrade">;
10370
+ model: z.ZodString;
10371
+ }, "strict", z.ZodTypeAny, {
10372
+ model: string;
10373
+ action: "degrade";
10374
+ }, {
10375
+ model: string;
10376
+ action: "degrade";
10377
+ }>]>>;
10378
+ }, "strict", z.ZodTypeAny, {
10379
+ usd: number;
10380
+ on_exceed: {
10381
+ action: "stop";
10382
+ } | {
10383
+ model: string;
10384
+ action: "degrade";
10385
+ };
10386
+ }, {
10387
+ usd: number;
10388
+ on_exceed?: {
10389
+ action: "stop";
10390
+ } | {
10391
+ model: string;
10392
+ action: "degrade";
10393
+ } | undefined;
10394
+ }>>;
10395
+ memory: z.ZodOptional<z.ZodObject<{
10396
+ enabled: z.ZodOptional<z.ZodBoolean>;
10397
+ autoCapture: z.ZodOptional<z.ZodBoolean>;
10398
+ autoCaptureThreshold: z.ZodOptional<z.ZodNumber>;
10399
+ autoRecall: z.ZodOptional<z.ZodBoolean>;
10400
+ recallK: z.ZodOptional<z.ZodNumber>;
10401
+ }, "strict", z.ZodTypeAny, {
10402
+ enabled?: boolean | undefined;
10403
+ autoCapture?: boolean | undefined;
10404
+ autoCaptureThreshold?: number | undefined;
10405
+ autoRecall?: boolean | undefined;
10406
+ recallK?: number | undefined;
10407
+ }, {
10408
+ enabled?: boolean | undefined;
10409
+ autoCapture?: boolean | undefined;
10410
+ autoCaptureThreshold?: number | undefined;
10411
+ autoRecall?: boolean | undefined;
10412
+ recallK?: number | undefined;
10413
+ }>>;
10414
+ observability: z.ZodOptional<z.ZodObject<{
10415
+ slo: z.ZodOptional<z.ZodEffects<z.ZodObject<{
10416
+ /** Fractional error rate ceiling (unrecovered errors / model calls), e.g. 0.05. */
10417
+ error_rate: z.ZodOptional<z.ZodNumber>;
10418
+ /** p95 per-turn latency ceiling, milliseconds. */
10419
+ p95_latency_ms: z.ZodOptional<z.ZodNumber>;
10420
+ /** p95 time-to-first-token ceiling, milliseconds. */
10421
+ ttft_ms: z.ZodOptional<z.ZodNumber>;
10422
+ /** Cost burn ceiling, USD per hour of wall-clock. */
10423
+ cost_per_hour_usd: z.ZodOptional<z.ZodNumber>;
10424
+ /** Fractional egress-block rate ceiling (egress-blocked / external calls), e.g. 0.1. */
10425
+ egress_block_rate: z.ZodOptional<z.ZodNumber>;
10426
+ /**
10427
+ * Rolling window (seconds) a breach must persist before the ladder fires.
10428
+ * A single blip never mitigates — the monitor only acts on a SUSTAINED
10429
+ * breach across this window. Default 300s (5 min).
10430
+ */
10431
+ window_seconds: z.ZodOptional<z.ZodNumber>;
10432
+ /**
10433
+ * Mitigation ladder, walked in declared order on a sustained breach. Each
10434
+ * rung is executed at most once per session. `alert` is always safe;
10435
+ * `pause-intake` / `rollback` touch traffic + deploys so they are opt-in.
10436
+ */
10437
+ mitigation: z.ZodOptional<z.ZodArray<z.ZodEnum<["alert", "pause-intake", "rollback"]>, "atleastone">>;
10438
+ }, "strict", z.ZodTypeAny, {
10439
+ error_rate?: number | undefined;
10440
+ p95_latency_ms?: number | undefined;
10441
+ ttft_ms?: number | undefined;
10442
+ cost_per_hour_usd?: number | undefined;
10443
+ egress_block_rate?: number | undefined;
10444
+ window_seconds?: number | undefined;
10445
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
10446
+ }, {
10447
+ error_rate?: number | undefined;
10448
+ p95_latency_ms?: number | undefined;
10449
+ ttft_ms?: number | undefined;
10450
+ cost_per_hour_usd?: number | undefined;
10451
+ egress_block_rate?: number | undefined;
10452
+ window_seconds?: number | undefined;
10453
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
10454
+ }>, {
10455
+ error_rate?: number | undefined;
10456
+ p95_latency_ms?: number | undefined;
10457
+ ttft_ms?: number | undefined;
10458
+ cost_per_hour_usd?: number | undefined;
10459
+ egress_block_rate?: number | undefined;
10460
+ window_seconds?: number | undefined;
10461
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
10462
+ }, {
10463
+ error_rate?: number | undefined;
10464
+ p95_latency_ms?: number | undefined;
10465
+ ttft_ms?: number | undefined;
10466
+ cost_per_hour_usd?: number | undefined;
10467
+ egress_block_rate?: number | undefined;
10468
+ window_seconds?: number | undefined;
10469
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
10470
+ }>>;
10471
+ }, "strict", z.ZodTypeAny, {
10472
+ slo?: {
10473
+ error_rate?: number | undefined;
10474
+ p95_latency_ms?: number | undefined;
10475
+ ttft_ms?: number | undefined;
10476
+ cost_per_hour_usd?: number | undefined;
10477
+ egress_block_rate?: number | undefined;
10478
+ window_seconds?: number | undefined;
10479
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
10480
+ } | undefined;
10481
+ }, {
10482
+ slo?: {
10483
+ error_rate?: number | undefined;
10484
+ p95_latency_ms?: number | undefined;
10485
+ ttft_ms?: number | undefined;
10486
+ cost_per_hour_usd?: number | undefined;
10487
+ egress_block_rate?: number | undefined;
10488
+ window_seconds?: number | undefined;
10489
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
10490
+ } | undefined;
10491
+ }>>;
8383
10492
  }, "strict", z.ZodTypeAny, {
8384
10493
  name: string;
8385
10494
  target: "managed";
8386
10495
  agent: {
8387
10496
  instructions: string;
8388
10497
  model: string;
10498
+ model_fallbacks?: string[] | undefined;
10499
+ circuit_breaker?: {
10500
+ failureThreshold?: number | undefined;
10501
+ windowMs?: number | undefined;
10502
+ cooldownMs?: number | undefined;
10503
+ } | undefined;
10504
+ model_tiers?: {
10505
+ default: string;
10506
+ fast: string;
10507
+ routing?: {
10508
+ contextTokenThreshold?: number | undefined;
10509
+ toolsToDefault?: boolean | undefined;
10510
+ firstTurnToDefault?: boolean | undefined;
10511
+ priorToolDensityThreshold?: number | undefined;
10512
+ } | undefined;
10513
+ } | undefined;
8389
10514
  };
8390
10515
  tenants: {
8391
10516
  id: string;
@@ -8401,6 +10526,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
8401
10526
  pattern: string;
8402
10527
  }[] | undefined;
8403
10528
  } | undefined;
10529
+ version?: number | undefined;
8404
10530
  compaction?: {
8405
10531
  model?: string | undefined;
8406
10532
  curate?: boolean | undefined;
@@ -8410,15 +10536,58 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
8410
10536
  failure_taxonomy?: {
8411
10537
  pattern: string;
8412
10538
  class: string;
8413
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
10539
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
8414
10540
  hint?: string | undefined;
8415
10541
  }[] | undefined;
10542
+ budget?: {
10543
+ usd: number;
10544
+ on_exceed: {
10545
+ action: "stop";
10546
+ } | {
10547
+ model: string;
10548
+ action: "degrade";
10549
+ };
10550
+ } | undefined;
10551
+ memory?: {
10552
+ enabled?: boolean | undefined;
10553
+ autoCapture?: boolean | undefined;
10554
+ autoCaptureThreshold?: number | undefined;
10555
+ autoRecall?: boolean | undefined;
10556
+ recallK?: number | undefined;
10557
+ } | undefined;
10558
+ observability?: {
10559
+ slo?: {
10560
+ error_rate?: number | undefined;
10561
+ p95_latency_ms?: number | undefined;
10562
+ ttft_ms?: number | undefined;
10563
+ cost_per_hour_usd?: number | undefined;
10564
+ egress_block_rate?: number | undefined;
10565
+ window_seconds?: number | undefined;
10566
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
10567
+ } | undefined;
10568
+ } | undefined;
8416
10569
  }, {
8417
10570
  name: string;
8418
10571
  target: "managed";
8419
10572
  agent: {
8420
10573
  instructions: string;
8421
10574
  model: string;
10575
+ model_fallbacks?: string[] | undefined;
10576
+ circuit_breaker?: {
10577
+ failureThreshold?: number | undefined;
10578
+ windowMs?: number | undefined;
10579
+ cooldownMs?: number | undefined;
10580
+ } | undefined;
10581
+ model_tiers?: {
10582
+ default: string;
10583
+ fast: string;
10584
+ routing?: {
10585
+ contextTokenThreshold?: number | undefined;
10586
+ toolsToDefault?: boolean | undefined;
10587
+ firstTurnToDefault?: boolean | undefined;
10588
+ priorToolDensityThreshold?: number | undefined;
10589
+ } | undefined;
10590
+ } | undefined;
8422
10591
  };
8423
10592
  tenants: {
8424
10593
  id: string;
@@ -8434,6 +10603,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
8434
10603
  pattern: string;
8435
10604
  }[] | undefined;
8436
10605
  } | undefined;
10606
+ version?: number | undefined;
8437
10607
  compaction?: {
8438
10608
  model?: string | undefined;
8439
10609
  curate?: boolean | undefined;
@@ -8443,11 +10613,39 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
8443
10613
  failure_taxonomy?: {
8444
10614
  pattern: string;
8445
10615
  class: string;
8446
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
10616
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
8447
10617
  hint?: string | undefined;
8448
10618
  }[] | undefined;
10619
+ budget?: {
10620
+ usd: number;
10621
+ on_exceed?: {
10622
+ action: "stop";
10623
+ } | {
10624
+ model: string;
10625
+ action: "degrade";
10626
+ } | undefined;
10627
+ } | undefined;
10628
+ memory?: {
10629
+ enabled?: boolean | undefined;
10630
+ autoCapture?: boolean | undefined;
10631
+ autoCaptureThreshold?: number | undefined;
10632
+ autoRecall?: boolean | undefined;
10633
+ recallK?: number | undefined;
10634
+ } | undefined;
10635
+ observability?: {
10636
+ slo?: {
10637
+ error_rate?: number | undefined;
10638
+ p95_latency_ms?: number | undefined;
10639
+ ttft_ms?: number | undefined;
10640
+ cost_per_hour_usd?: number | undefined;
10641
+ egress_block_rate?: number | undefined;
10642
+ window_seconds?: number | undefined;
10643
+ mitigation?: ["alert" | "pause-intake" | "rollback", ...("alert" | "pause-intake" | "rollback")[]] | undefined;
10644
+ } | undefined;
10645
+ } | undefined;
8449
10646
  }>, z.ZodObject<{
8450
10647
  name: z.ZodString;
10648
+ version: z.ZodOptional<z.ZodNumber>;
8451
10649
  target: z.ZodLiteral<"pipeline">;
8452
10650
  agent: z.ZodObject<{
8453
10651
  model: z.ZodString;
@@ -8573,17 +10771,17 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
8573
10771
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
8574
10772
  class: z.ZodString;
8575
10773
  pattern: z.ZodString;
8576
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
10774
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
8577
10775
  hint: z.ZodOptional<z.ZodString>;
8578
10776
  }, "strict", z.ZodTypeAny, {
8579
10777
  pattern: string;
8580
10778
  class: string;
8581
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
10779
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
8582
10780
  hint?: string | undefined;
8583
10781
  }, {
8584
10782
  pattern: string;
8585
10783
  class: string;
8586
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
10784
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
8587
10785
  hint?: string | undefined;
8588
10786
  }>, "many">>;
8589
10787
  }, "strict", z.ZodTypeAny, {
@@ -8618,6 +10816,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
8618
10816
  pattern: string;
8619
10817
  }[] | undefined;
8620
10818
  } | undefined;
10819
+ version?: number | undefined;
8621
10820
  compaction?: {
8622
10821
  model?: string | undefined;
8623
10822
  curate?: boolean | undefined;
@@ -8627,7 +10826,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
8627
10826
  failure_taxonomy?: {
8628
10827
  pattern: string;
8629
10828
  class: string;
8630
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
10829
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
8631
10830
  hint?: string | undefined;
8632
10831
  }[] | undefined;
8633
10832
  }, {
@@ -8662,6 +10861,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
8662
10861
  pattern: string;
8663
10862
  }[] | undefined;
8664
10863
  } | undefined;
10864
+ version?: number | undefined;
8665
10865
  compaction?: {
8666
10866
  model?: string | undefined;
8667
10867
  curate?: boolean | undefined;
@@ -8671,11 +10871,12 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
8671
10871
  failure_taxonomy?: {
8672
10872
  pattern: string;
8673
10873
  class: string;
8674
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
10874
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
8675
10875
  hint?: string | undefined;
8676
10876
  }[] | undefined;
8677
10877
  }>, z.ZodObject<{
8678
10878
  name: z.ZodString;
10879
+ version: z.ZodOptional<z.ZodNumber>;
8679
10880
  target: z.ZodLiteral<"crew">;
8680
10881
  /** Crew-wide model fallback used by any role that omits `role.model`. */
8681
10882
  model: z.ZodString;
@@ -8864,17 +11065,17 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
8864
11065
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
8865
11066
  class: z.ZodString;
8866
11067
  pattern: z.ZodString;
8867
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
11068
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
8868
11069
  hint: z.ZodOptional<z.ZodString>;
8869
11070
  }, "strict", z.ZodTypeAny, {
8870
11071
  pattern: string;
8871
11072
  class: string;
8872
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
11073
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
8873
11074
  hint?: string | undefined;
8874
11075
  }, {
8875
11076
  pattern: string;
8876
11077
  class: string;
8877
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
11078
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
8878
11079
  hint?: string | undefined;
8879
11080
  }>, "many">>;
8880
11081
  chains: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -9017,6 +11218,14 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
9017
11218
  pattern: string;
9018
11219
  }[] | undefined;
9019
11220
  } | undefined;
11221
+ routing?: {
11222
+ kind: "match" | "llm";
11223
+ match?: Record<string, {
11224
+ to: string;
11225
+ contains: string;
11226
+ }[]> | undefined;
11227
+ } | undefined;
11228
+ version?: number | undefined;
9020
11229
  mcp_servers?: Record<string, {
9021
11230
  transport: "stdio";
9022
11231
  command: string;
@@ -9036,7 +11245,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
9036
11245
  failure_taxonomy?: {
9037
11246
  pattern: string;
9038
11247
  class: string;
9039
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
11248
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
9040
11249
  hint?: string | undefined;
9041
11250
  }[] | undefined;
9042
11251
  chains?: {
@@ -9074,13 +11283,6 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
9074
11283
  maxValueUsd?: number | undefined;
9075
11284
  maxValueWei?: string | undefined;
9076
11285
  } | undefined;
9077
- routing?: {
9078
- kind: "match" | "llm";
9079
- match?: Record<string, {
9080
- to: string;
9081
- contains: string;
9082
- }[]> | undefined;
9083
- } | undefined;
9084
11286
  }, {
9085
11287
  model: string;
9086
11288
  name: string;
@@ -9110,6 +11312,14 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
9110
11312
  pattern: string;
9111
11313
  }[] | undefined;
9112
11314
  } | undefined;
11315
+ routing?: {
11316
+ kind: "match" | "llm";
11317
+ match?: Record<string, {
11318
+ to: string;
11319
+ contains: string;
11320
+ }[]> | undefined;
11321
+ } | undefined;
11322
+ version?: number | undefined;
9113
11323
  mcp_servers?: Record<string, {
9114
11324
  transport: "stdio";
9115
11325
  command: string;
@@ -9129,7 +11339,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
9129
11339
  failure_taxonomy?: {
9130
11340
  pattern: string;
9131
11341
  class: string;
9132
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
11342
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
9133
11343
  hint?: string | undefined;
9134
11344
  }[] | undefined;
9135
11345
  chains?: {
@@ -9167,15 +11377,9 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
9167
11377
  allowedContracts?: string[] | undefined;
9168
11378
  simulationRequired?: boolean | undefined;
9169
11379
  } | undefined;
9170
- routing?: {
9171
- kind: "match" | "llm";
9172
- match?: Record<string, {
9173
- to: string;
9174
- contains: string;
9175
- }[]> | undefined;
9176
- } | undefined;
9177
11380
  }>, z.ZodObject<{
9178
11381
  name: z.ZodString;
11382
+ version: z.ZodOptional<z.ZodNumber>;
9179
11383
  target: z.ZodLiteral<"research">;
9180
11384
  agent: z.ZodObject<{
9181
11385
  model: z.ZodString;
@@ -9289,19 +11493,38 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
9289
11493
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
9290
11494
  class: z.ZodString;
9291
11495
  pattern: z.ZodString;
9292
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
11496
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
9293
11497
  hint: z.ZodOptional<z.ZodString>;
9294
11498
  }, "strict", z.ZodTypeAny, {
9295
11499
  pattern: string;
9296
11500
  class: string;
9297
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
11501
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
9298
11502
  hint?: string | undefined;
9299
11503
  }, {
9300
11504
  pattern: string;
9301
11505
  class: string;
9302
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
11506
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
9303
11507
  hint?: string | undefined;
9304
11508
  }>, "many">>;
11509
+ memory: z.ZodOptional<z.ZodObject<{
11510
+ enabled: z.ZodOptional<z.ZodBoolean>;
11511
+ autoCapture: z.ZodOptional<z.ZodBoolean>;
11512
+ autoCaptureThreshold: z.ZodOptional<z.ZodNumber>;
11513
+ autoRecall: z.ZodOptional<z.ZodBoolean>;
11514
+ recallK: z.ZodOptional<z.ZodNumber>;
11515
+ }, "strict", z.ZodTypeAny, {
11516
+ enabled?: boolean | undefined;
11517
+ autoCapture?: boolean | undefined;
11518
+ autoCaptureThreshold?: number | undefined;
11519
+ autoRecall?: boolean | undefined;
11520
+ recallK?: number | undefined;
11521
+ }, {
11522
+ enabled?: boolean | undefined;
11523
+ autoCapture?: boolean | undefined;
11524
+ autoCaptureThreshold?: number | undefined;
11525
+ autoRecall?: boolean | undefined;
11526
+ recallK?: number | undefined;
11527
+ }>>;
9305
11528
  chains: z.ZodOptional<z.ZodArray<z.ZodObject<{
9306
11529
  id: z.ZodString;
9307
11530
  kind: z.ZodLiteral<"evm">;
@@ -9436,6 +11659,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
9436
11659
  pattern: string;
9437
11660
  }[] | undefined;
9438
11661
  } | undefined;
11662
+ version?: number | undefined;
9439
11663
  tool_config?: Record<string, unknown> | undefined;
9440
11664
  mcp_servers?: Record<string, {
9441
11665
  transport: "stdio";
@@ -9456,9 +11680,16 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
9456
11680
  failure_taxonomy?: {
9457
11681
  pattern: string;
9458
11682
  class: string;
9459
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
11683
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
9460
11684
  hint?: string | undefined;
9461
11685
  }[] | undefined;
11686
+ memory?: {
11687
+ enabled?: boolean | undefined;
11688
+ autoCapture?: boolean | undefined;
11689
+ autoCaptureThreshold?: number | undefined;
11690
+ autoRecall?: boolean | undefined;
11691
+ recallK?: number | undefined;
11692
+ } | undefined;
9462
11693
  chains?: {
9463
11694
  kind: "evm";
9464
11695
  id: string;
@@ -9510,6 +11741,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
9510
11741
  pattern: string;
9511
11742
  }[] | undefined;
9512
11743
  } | undefined;
11744
+ version?: number | undefined;
9513
11745
  tool_config?: Record<string, unknown> | undefined;
9514
11746
  mcp_servers?: Record<string, {
9515
11747
  transport: "stdio";
@@ -9530,9 +11762,16 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
9530
11762
  failure_taxonomy?: {
9531
11763
  pattern: string;
9532
11764
  class: string;
9533
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
11765
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
9534
11766
  hint?: string | undefined;
9535
11767
  }[] | undefined;
11768
+ memory?: {
11769
+ enabled?: boolean | undefined;
11770
+ autoCapture?: boolean | undefined;
11771
+ autoCaptureThreshold?: number | undefined;
11772
+ autoRecall?: boolean | undefined;
11773
+ recallK?: number | undefined;
11774
+ } | undefined;
9536
11775
  chains?: {
9537
11776
  kind: "evm";
9538
11777
  id: string;
@@ -9577,6 +11816,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
9577
11816
  maxDurationMs?: number | undefined;
9578
11817
  }>, z.ZodObject<{
9579
11818
  name: z.ZodString;
11819
+ version: z.ZodOptional<z.ZodNumber>;
9580
11820
  target: z.ZodLiteral<"batch">;
9581
11821
  agent: z.ZodObject<{
9582
11822
  model: z.ZodString;
@@ -9695,17 +11935,17 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
9695
11935
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
9696
11936
  class: z.ZodString;
9697
11937
  pattern: z.ZodString;
9698
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
11938
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
9699
11939
  hint: z.ZodOptional<z.ZodString>;
9700
11940
  }, "strict", z.ZodTypeAny, {
9701
11941
  pattern: string;
9702
11942
  class: string;
9703
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
11943
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
9704
11944
  hint?: string | undefined;
9705
11945
  }, {
9706
11946
  pattern: string;
9707
11947
  class: string;
9708
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
11948
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
9709
11949
  hint?: string | undefined;
9710
11950
  }>, "many">>;
9711
11951
  chains: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -9843,6 +12083,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
9843
12083
  pattern: string;
9844
12084
  }[] | undefined;
9845
12085
  } | undefined;
12086
+ version?: number | undefined;
9846
12087
  tool_config?: Record<string, unknown> | undefined;
9847
12088
  mcp_servers?: Record<string, {
9848
12089
  transport: "stdio";
@@ -9863,7 +12104,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
9863
12104
  failure_taxonomy?: {
9864
12105
  pattern: string;
9865
12106
  class: string;
9866
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
12107
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
9867
12108
  hint?: string | undefined;
9868
12109
  }[] | undefined;
9869
12110
  chains?: {
@@ -9923,6 +12164,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
9923
12164
  pattern: string;
9924
12165
  }[] | undefined;
9925
12166
  } | undefined;
12167
+ version?: number | undefined;
9926
12168
  tool_config?: Record<string, unknown> | undefined;
9927
12169
  mcp_servers?: Record<string, {
9928
12170
  transport: "stdio";
@@ -9943,7 +12185,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
9943
12185
  failure_taxonomy?: {
9944
12186
  pattern: string;
9945
12187
  class: string;
9946
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
12188
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
9947
12189
  hint?: string | undefined;
9948
12190
  }[] | undefined;
9949
12191
  chains?: {
@@ -9985,6 +12227,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
9985
12227
  idempotencyWindowMs?: number | undefined;
9986
12228
  }>, z.ZodObject<{
9987
12229
  name: z.ZodString;
12230
+ version: z.ZodOptional<z.ZodNumber>;
9988
12231
  target: z.ZodLiteral<"voice">;
9989
12232
  agent: z.ZodObject<{
9990
12233
  model: z.ZodString;
@@ -10108,17 +12351,17 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10108
12351
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
10109
12352
  class: z.ZodString;
10110
12353
  pattern: z.ZodString;
10111
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
12354
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
10112
12355
  hint: z.ZodOptional<z.ZodString>;
10113
12356
  }, "strict", z.ZodTypeAny, {
10114
12357
  pattern: string;
10115
12358
  class: string;
10116
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
12359
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
10117
12360
  hint?: string | undefined;
10118
12361
  }, {
10119
12362
  pattern: string;
10120
12363
  class: string;
10121
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
12364
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
10122
12365
  hint?: string | undefined;
10123
12366
  }>, "many">>;
10124
12367
  }, "strict", z.ZodTypeAny, {
@@ -10143,6 +12386,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10143
12386
  pattern: string;
10144
12387
  }[] | undefined;
10145
12388
  } | undefined;
12389
+ version?: number | undefined;
10146
12390
  tool_config?: Record<string, unknown> | undefined;
10147
12391
  mcp_servers?: Record<string, {
10148
12392
  transport: "stdio";
@@ -10163,7 +12407,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10163
12407
  failure_taxonomy?: {
10164
12408
  pattern: string;
10165
12409
  class: string;
10166
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
12410
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
10167
12411
  hint?: string | undefined;
10168
12412
  }[] | undefined;
10169
12413
  telephony?: {
@@ -10191,6 +12435,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10191
12435
  pattern: string;
10192
12436
  }[] | undefined;
10193
12437
  } | undefined;
12438
+ version?: number | undefined;
10194
12439
  tool_config?: Record<string, unknown> | undefined;
10195
12440
  mcp_servers?: Record<string, {
10196
12441
  transport: "stdio";
@@ -10211,7 +12456,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10211
12456
  failure_taxonomy?: {
10212
12457
  pattern: string;
10213
12458
  class: string;
10214
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
12459
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
10215
12460
  hint?: string | undefined;
10216
12461
  }[] | undefined;
10217
12462
  telephony?: {
@@ -10219,6 +12464,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10219
12464
  } | undefined;
10220
12465
  }>, z.ZodObject<{
10221
12466
  name: z.ZodString;
12467
+ version: z.ZodOptional<z.ZodNumber>;
10222
12468
  target: z.ZodLiteral<"browser">;
10223
12469
  agent: z.ZodObject<{
10224
12470
  model: z.ZodString;
@@ -10346,17 +12592,17 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10346
12592
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
10347
12593
  class: z.ZodString;
10348
12594
  pattern: z.ZodString;
10349
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
12595
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
10350
12596
  hint: z.ZodOptional<z.ZodString>;
10351
12597
  }, "strict", z.ZodTypeAny, {
10352
12598
  pattern: string;
10353
12599
  class: string;
10354
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
12600
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
10355
12601
  hint?: string | undefined;
10356
12602
  }, {
10357
12603
  pattern: string;
10358
12604
  class: string;
10359
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
12605
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
10360
12606
  hint?: string | undefined;
10361
12607
  }>, "many">>;
10362
12608
  }, "strict", z.ZodTypeAny, {
@@ -10382,6 +12628,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10382
12628
  pattern: string;
10383
12629
  }[] | undefined;
10384
12630
  } | undefined;
12631
+ version?: number | undefined;
10385
12632
  tool_config?: Record<string, unknown> | undefined;
10386
12633
  mcp_servers?: Record<string, {
10387
12634
  transport: "stdio";
@@ -10402,7 +12649,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10402
12649
  failure_taxonomy?: {
10403
12650
  pattern: string;
10404
12651
  class: string;
10405
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
12652
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
10406
12653
  hint?: string | undefined;
10407
12654
  }[] | undefined;
10408
12655
  groundingModel?: string | undefined;
@@ -10421,6 +12668,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10421
12668
  pattern: string;
10422
12669
  }[] | undefined;
10423
12670
  } | undefined;
12671
+ version?: number | undefined;
10424
12672
  tool_config?: Record<string, unknown> | undefined;
10425
12673
  mcp_servers?: Record<string, {
10426
12674
  transport: "stdio";
@@ -10441,7 +12689,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10441
12689
  failure_taxonomy?: {
10442
12690
  pattern: string;
10443
12691
  class: string;
10444
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
12692
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
10445
12693
  hint?: string | undefined;
10446
12694
  }[] | undefined;
10447
12695
  driver?: {
@@ -10455,6 +12703,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10455
12703
  groundingModel?: string | undefined;
10456
12704
  }>, z.ZodObject<{
10457
12705
  name: z.ZodString;
12706
+ version: z.ZodOptional<z.ZodNumber>;
10458
12707
  target: z.ZodLiteral<"eval">;
10459
12708
  agent: z.ZodObject<{
10460
12709
  model: z.ZodString;
@@ -10497,17 +12746,17 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10497
12746
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
10498
12747
  class: z.ZodString;
10499
12748
  pattern: z.ZodString;
10500
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
12749
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
10501
12750
  hint: z.ZodOptional<z.ZodString>;
10502
12751
  }, "strict", z.ZodTypeAny, {
10503
12752
  pattern: string;
10504
12753
  class: string;
10505
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
12754
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
10506
12755
  hint?: string | undefined;
10507
12756
  }, {
10508
12757
  pattern: string;
10509
12758
  class: string;
10510
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
12759
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
10511
12760
  hint?: string | undefined;
10512
12761
  }>, "many">>;
10513
12762
  }, "strict", z.ZodTypeAny, {
@@ -10528,10 +12777,11 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10528
12777
  name: string;
10529
12778
  opts?: Record<string, unknown> | undefined;
10530
12779
  }[];
12780
+ version?: number | undefined;
10531
12781
  failure_taxonomy?: {
10532
12782
  pattern: string;
10533
12783
  class: string;
10534
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
12784
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
10535
12785
  hint?: string | undefined;
10536
12786
  }[] | undefined;
10537
12787
  seed?: number | undefined;
@@ -10552,16 +12802,18 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10552
12802
  name: string;
10553
12803
  opts?: Record<string, unknown> | undefined;
10554
12804
  }[];
12805
+ version?: number | undefined;
10555
12806
  failure_taxonomy?: {
10556
12807
  pattern: string;
10557
12808
  class: string;
10558
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
12809
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
10559
12810
  hint?: string | undefined;
10560
12811
  }[] | undefined;
10561
12812
  concurrency?: number | undefined;
10562
12813
  seed?: number | undefined;
10563
12814
  }>, z.ZodObject<{
10564
12815
  name: z.ZodString;
12816
+ version: z.ZodOptional<z.ZodNumber>;
10565
12817
  target: z.ZodLiteral<"onchain">;
10566
12818
  agent: z.ZodObject<{
10567
12819
  model: z.ZodString;
@@ -10817,17 +13069,17 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10817
13069
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
10818
13070
  class: z.ZodString;
10819
13071
  pattern: z.ZodString;
10820
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
13072
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
10821
13073
  hint: z.ZodOptional<z.ZodString>;
10822
13074
  }, "strict", z.ZodTypeAny, {
10823
13075
  pattern: string;
10824
13076
  class: string;
10825
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
13077
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
10826
13078
  hint?: string | undefined;
10827
13079
  }, {
10828
13080
  pattern: string;
10829
13081
  class: string;
10830
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
13082
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
10831
13083
  hint?: string | undefined;
10832
13084
  }>, "many">>;
10833
13085
  }, "strict", z.ZodTypeAny, {
@@ -10897,6 +13149,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10897
13149
  pattern: string;
10898
13150
  }[] | undefined;
10899
13151
  } | undefined;
13152
+ version?: number | undefined;
10900
13153
  tool_config?: Record<string, unknown> | undefined;
10901
13154
  mcp_servers?: Record<string, {
10902
13155
  transport: "stdio";
@@ -10917,7 +13170,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10917
13170
  failure_taxonomy?: {
10918
13171
  pattern: string;
10919
13172
  class: string;
10920
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
13173
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
10921
13174
  hint?: string | undefined;
10922
13175
  }[] | undefined;
10923
13176
  }, {
@@ -10966,6 +13219,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10966
13219
  pattern: string;
10967
13220
  }[] | undefined;
10968
13221
  } | undefined;
13222
+ version?: number | undefined;
10969
13223
  tool_config?: Record<string, unknown> | undefined;
10970
13224
  mcp_servers?: Record<string, {
10971
13225
  transport: "stdio";
@@ -10986,7 +13240,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
10986
13240
  failure_taxonomy?: {
10987
13241
  pattern: string;
10988
13242
  class: string;
10989
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
13243
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
10990
13244
  hint?: string | undefined;
10991
13245
  }[] | undefined;
10992
13246
  wallets?: {
@@ -11012,6 +13266,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
11012
13266
  idempotencyWindowMs?: number | undefined;
11013
13267
  }>, z.ZodObject<{
11014
13268
  name: z.ZodString;
13269
+ version: z.ZodOptional<z.ZodNumber>;
11015
13270
  target: z.ZodLiteral<"onchain-game">;
11016
13271
  agent: z.ZodObject<{
11017
13272
  model: z.ZodString;
@@ -11251,17 +13506,17 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
11251
13506
  failure_taxonomy: z.ZodOptional<z.ZodArray<z.ZodObject<{
11252
13507
  class: z.ZodString;
11253
13508
  pattern: z.ZodString;
11254
- recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "fail"]>;
13509
+ recovery: z.ZodEnum<["retry", "compact", "continue", "tombstone", "switch-model", "fail"]>;
11255
13510
  hint: z.ZodOptional<z.ZodString>;
11256
13511
  }, "strict", z.ZodTypeAny, {
11257
13512
  pattern: string;
11258
13513
  class: string;
11259
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
13514
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
11260
13515
  hint?: string | undefined;
11261
13516
  }, {
11262
13517
  pattern: string;
11263
13518
  class: string;
11264
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
13519
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
11265
13520
  hint?: string | undefined;
11266
13521
  }>, "many">>;
11267
13522
  }, "strict", z.ZodTypeAny, {
@@ -11321,6 +13576,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
11321
13576
  pattern: string;
11322
13577
  }[] | undefined;
11323
13578
  } | undefined;
13579
+ version?: number | undefined;
11324
13580
  tool_config?: Record<string, unknown> | undefined;
11325
13581
  mcp_servers?: Record<string, {
11326
13582
  transport: "stdio";
@@ -11341,7 +13597,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
11341
13597
  failure_taxonomy?: {
11342
13598
  pattern: string;
11343
13599
  class: string;
11344
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
13600
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
11345
13601
  hint?: string | undefined;
11346
13602
  }[] | undefined;
11347
13603
  }, {
@@ -11394,6 +13650,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
11394
13650
  pattern: string;
11395
13651
  }[] | undefined;
11396
13652
  } | undefined;
13653
+ version?: number | undefined;
11397
13654
  tool_config?: Record<string, unknown> | undefined;
11398
13655
  mcp_servers?: Record<string, {
11399
13656
  transport: "stdio";
@@ -11414,7 +13671,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
11414
13671
  failure_taxonomy?: {
11415
13672
  pattern: string;
11416
13673
  class: string;
11417
- recovery: "retry" | "compact" | "continue" | "tombstone" | "fail";
13674
+ recovery: "retry" | "compact" | "continue" | "tombstone" | "switch-model" | "fail";
11418
13675
  hint?: string | undefined;
11419
13676
  }[] | undefined;
11420
13677
  transaction_policy?: {
@@ -11462,8 +13719,13 @@ export type SpecEval = z.infer<typeof evalSchema>;
11462
13719
  export type SpecMcpServerConfig = z.infer<typeof mcpServerConfigSchema>;
11463
13720
  export type SpecSubAgentDefinition = z.infer<typeof subAgentDefinitionSchema>;
11464
13721
  export type SpecCompactionBlock = z.infer<typeof compactionBlock>;
13722
+ export type SpecModelFallbacks = z.infer<typeof modelFallbacksBlock>;
13723
+ export type SpecCircuitBreakerBlock = z.infer<typeof circuitBreakerBlock>;
13724
+ export type SpecModelTiersBlock = z.infer<typeof modelTiersBlock>;
13725
+ export type SpecBudgetBlock = z.infer<typeof budgetBlock>;
11465
13726
  export type SpecSecurityBlock = z.infer<typeof securityBlock>;
11466
13727
  export type SpecFeedbackBlock = z.infer<typeof feedbackBlock>;
13728
+ export type SpecMemoryBlock = z.infer<typeof memoryBlock>;
11467
13729
  export type SpecFailureTaxonomyEntry = z.infer<typeof failureTaxonomyEntrySchema>;
11468
13730
  export type SpecFailureTaxonomy = z.infer<typeof failureTaxonomyBlock>;
11469
13731
  export { SpecParseError };