@uluops/core 0.21.1 → 0.22.1

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 (78) hide show
  1. package/README.md +84 -9
  2. package/dist/ai/AIProvider.d.ts +12 -0
  3. package/dist/ai/AIProvider.d.ts.map +1 -1
  4. package/dist/ai/AIProvider.js +16 -2
  5. package/dist/ai/AIProvider.js.map +1 -1
  6. package/dist/ai/ModelCatalog.d.ts +10 -2
  7. package/dist/ai/ModelCatalog.d.ts.map +1 -1
  8. package/dist/ai/ModelCatalog.js +10 -2
  9. package/dist/ai/ModelCatalog.js.map +1 -1
  10. package/dist/ai/TokenBudgetTracker.d.ts +18 -2
  11. package/dist/ai/TokenBudgetTracker.d.ts.map +1 -1
  12. package/dist/ai/TokenBudgetTracker.js +22 -2
  13. package/dist/ai/TokenBudgetTracker.js.map +1 -1
  14. package/dist/client/UluOpsClient.d.ts +105 -6
  15. package/dist/client/UluOpsClient.d.ts.map +1 -1
  16. package/dist/client/UluOpsClient.js +107 -8
  17. package/dist/client/UluOpsClient.js.map +1 -1
  18. package/dist/constants.d.ts +2 -2
  19. package/dist/constants.d.ts.map +1 -1
  20. package/dist/constants.js +2 -2
  21. package/dist/constants.js.map +1 -1
  22. package/dist/executor/AgentExecutor.d.ts +14 -0
  23. package/dist/executor/AgentExecutor.d.ts.map +1 -1
  24. package/dist/executor/AgentExecutor.js +66 -3
  25. package/dist/executor/AgentExecutor.js.map +1 -1
  26. package/dist/executor/CommandExecutor.d.ts +12 -1
  27. package/dist/executor/CommandExecutor.d.ts.map +1 -1
  28. package/dist/executor/CommandExecutor.js +13 -2
  29. package/dist/executor/CommandExecutor.js.map +1 -1
  30. package/dist/executor/PipelineExecutor.d.ts +20 -2
  31. package/dist/executor/PipelineExecutor.d.ts.map +1 -1
  32. package/dist/executor/PipelineExecutor.js +20 -2
  33. package/dist/executor/PipelineExecutor.js.map +1 -1
  34. package/dist/executor/WorkflowExecutor.d.ts +3 -0
  35. package/dist/executor/WorkflowExecutor.d.ts.map +1 -1
  36. package/dist/executor/WorkflowExecutor.js +3 -0
  37. package/dist/executor/WorkflowExecutor.js.map +1 -1
  38. package/dist/executor/classifyDecision.d.ts +23 -0
  39. package/dist/executor/classifyDecision.d.ts.map +1 -1
  40. package/dist/executor/classifyDecision.js +23 -0
  41. package/dist/executor/classifyDecision.js.map +1 -1
  42. package/dist/executor/degradationMarkers.d.ts +19 -0
  43. package/dist/executor/degradationMarkers.d.ts.map +1 -0
  44. package/dist/executor/degradationMarkers.js +62 -0
  45. package/dist/executor/degradationMarkers.js.map +1 -0
  46. package/dist/index.d.ts +4 -2
  47. package/dist/index.d.ts.map +1 -1
  48. package/dist/index.js +1 -0
  49. package/dist/index.js.map +1 -1
  50. package/dist/parser/OutputExtractor.d.ts +32 -2
  51. package/dist/parser/OutputExtractor.d.ts.map +1 -1
  52. package/dist/parser/OutputExtractor.js +32 -2
  53. package/dist/parser/OutputExtractor.js.map +1 -1
  54. package/dist/registry/RegistryClient.d.ts +33 -3
  55. package/dist/registry/RegistryClient.d.ts.map +1 -1
  56. package/dist/registry/RegistryClient.js +60 -6
  57. package/dist/registry/RegistryClient.js.map +1 -1
  58. package/dist/submission/SubmissionClient.d.ts +42 -4
  59. package/dist/submission/SubmissionClient.d.ts.map +1 -1
  60. package/dist/submission/SubmissionClient.js +51 -9
  61. package/dist/submission/SubmissionClient.js.map +1 -1
  62. package/dist/types/agent.d.ts +64 -1
  63. package/dist/types/agent.d.ts.map +1 -1
  64. package/dist/types/degradation.d.ts +46 -0
  65. package/dist/types/degradation.d.ts.map +1 -0
  66. package/dist/types/degradation.js +16 -0
  67. package/dist/types/degradation.js.map +1 -0
  68. package/dist/types/index.d.ts +3 -2
  69. package/dist/types/index.d.ts.map +1 -1
  70. package/package.json +2 -2
  71. package/dist/types/validation.d.ts +0 -116
  72. package/dist/types/validation.d.ts.map +0 -1
  73. package/dist/types/validation.js +0 -2
  74. package/dist/types/validation.js.map +0 -1
  75. package/dist/validation/ValidationClient.d.ts +0 -81
  76. package/dist/validation/ValidationClient.d.ts.map +0 -1
  77. package/dist/validation/ValidationClient.js +0 -266
  78. package/dist/validation/ValidationClient.js.map +0 -1
package/README.md CHANGED
@@ -43,15 +43,20 @@ const result = await client.runAgent('code-validator', './src', {
43
43
  });
44
44
 
45
45
  console.log(`Score: ${result.score} | Decision: ${result.decision}`);
46
+
47
+ // Or run a saved command configuration (model, thresholds, and aggregation
48
+ // come from the command definition — ideal for CI):
49
+ const cmd = await client.runCommand('validate', { target: './src' });
50
+ console.log(`Score: ${cmd.score} | Decision: ${cmd.decision}`);
46
51
  ```
47
52
 
48
53
  ```bash
49
54
  npx tsx validate.ts
50
55
  ```
51
56
 
52
- ### Offline Quick Start (No API Key)
57
+ ### Offline Quick Start (No UluOps API Key)
53
58
 
54
- Use the bundled starter agents without registry access:
59
+ Use the bundled starter agents without registry access. An AI provider key (e.g. `ANTHROPIC_API_KEY`) is still required:
55
60
 
56
61
  ```typescript
57
62
  import { UluOpsClient, STARTER_DEFINITIONS_DIR } from '@uluops/core';
@@ -67,6 +72,8 @@ console.log(`Score: ${result.score} | Decision: ${result.decision}`);
67
72
 
68
73
  This still requires an AI provider key but no UluOps API key or network access to the registry.
69
74
 
75
+ > **Note:** `runAgent`/`resolve` return immediately from local definitions when found. `client.list()`, however, always queries the registry first and only falls back to the bundled definitions after the request fails — in a genuinely offline environment that means a few seconds of retry/backoff before the local list returns.
76
+
70
77
  ## Table of Contents
71
78
 
72
79
  - [Overview](#overview)
@@ -98,7 +105,7 @@ The `@uluops/core` SDK provides:
98
105
  - **4-Layer Execution Hierarchy** - Agent > Command > Workflow > Pipeline orchestration
99
106
  - **AI SDK v6 Integration** - Vercel AI SDK for LLM communication with automatic tool loops (`maxSteps`) and built-in retry
100
107
  - **Registry-Backed Model Resolution** - Model aliases resolved via UluOps Registry with provider metadata
101
- - **Multi-Provider AI** - Anthropic-first with deepest optimization (caching, context management, bash tools); OpenAI + Google bundled; Mistral, Cohere, and 10+ others via dynamic `@ai-sdk/*` import. See [SCOPE.md](https://github.com/Uluops/-uluops-core/blob/main/SCOPE.md) for provider strategy.
108
+ - **Multi-Provider AI** - Anthropic-first with deepest optimization (caching, context management, bash tools); OpenAI + Google bundled; Mistral, Cohere, and 10+ others via dynamic `@ai-sdk/*` import. See [SCOPE.md](https://github.com/Uluops/uluops-core/blob/main/SCOPE.md) for provider strategy.
102
109
  - **Filesystem Sandboxing** - ToolHandler restricts LLM file access to the target directory with symlink-aware path validation
103
110
  - **Content-Addressed Integrity Verification** - Registry-resolved definitions carry a SHA-256 YAML content hash (`sha256:…`) and, for agents/commands, a `promptHash` over the frozen rendered prompt. Hashing uses the shared `@uluops/sdk-core` implementation, so the client and registry hash identically. Remote resolution executes the **frozen `runtimeMd`** the `promptHash` certifies (not a live re-render). Callers can pin `expectedHash`/`expectedPromptHash` (from a trusted channel) on `resolve()`/`ExecutionOptions`; pins are verified **fail-closed** on every resolve path (cache/local/remote) and a mismatch throws `IntegrityError`. Verification is opt-in — unpinned resolves behave as before. See [Integrity Verification](#integrity-verification).
104
111
  - **Universal Agent Output** - Single `agentOutputSchema` with categories + artifacts for all 6 agent types (validator, executor, analyst, generator, explorer, forecaster)
@@ -199,6 +206,30 @@ const focused = await client.runAgent('security-analyst', {
199
206
 
200
207
  The prompt appears as a prominent `Directive:` section in the initial message, before project context. When omitted, behavior is identical to previous versions.
201
208
 
209
+ #### Run Completeness & Degradation Markers
210
+
211
+ Every agent run carries a `completeness` signal — **distinct from the agent's decision** — describing whether the run actually finished its work:
212
+
213
+ ```typescript
214
+ const result = await client.runAgent('security-analyst', './src');
215
+
216
+ // Decision = what the agent concluded; completeness = whether the run finished its work.
217
+ console.log(`${result.decision} · ${result.completeness ?? 'complete'}`);
218
+
219
+ if (result.completeness !== 'complete') {
220
+ for (const m of result.degradationMarkers ?? []) {
221
+ console.log(`[${m.severity}] ${m.code}${m.detail ? ` — ${m.detail}` : ''}`);
222
+ }
223
+ }
224
+ ```
225
+
226
+ - **`completeness`**: `'complete' | 'partial' | 'failed'`, derived from degradation markers (any `critical` ⇒ `failed`; any `degraded` ⇒ `partial`; else `complete`). Absent ⇒ treat as `complete`. A `PASS` + `partial` result is a positive verdict reached on incomplete evidence — worth surfacing.
227
+ - **`degradationMarkers`**: typed `{ code, phase, severity, detail? }[]`. `code` is the stable contract (e.g. `budget.forced-wrap-up`, `steps.near-exhaustion`, `extraction.low-confidence`, `render.raw-yaml-fallback`); `detail` is human-only — never match on it. `phase` is `'resolution' | 'execution'`.
228
+ - The engine *observes* completeness from how the run actually executed; agents never self-report it. `deriveCompleteness(markers)` is exported if you want to recompute it.
229
+ - `degradations: string[]` is the deprecated legacy alias (resolution-phase strings only), retained for compatibility — prefer `degradationMarkers`.
230
+
231
+ > Empty-output step exhaustion is a thrown [`MaxStepsExhaustedError`](#error-handling), not a marker; near-exhaustion *with* output is the `steps.near-exhaustion` marker.
232
+
202
233
  ### Command Execution
203
234
 
204
235
  Execute saved command configurations. Uses model, thresholds, and aggregation from the command definition. Ideal for CI/CD:
@@ -402,7 +433,8 @@ try {
402
433
  } catch (err) {
403
434
  if (err instanceof IntegrityError) {
404
435
  // err.kind: 'yaml' | 'prompt' | 'unavailable'; err.expected / err.actual
405
- console.error(`Execution refused (${err.kind}): ${err.message}`);
436
+ // err.definitionName / err.definitionVersion identify which definition failed
437
+ console.error(`Execution refused (${err.kind}) for ${err.definitionName}@${err.definitionVersion}: ${err.message}`);
406
438
  }
407
439
  }
408
440
  ```
@@ -417,7 +449,9 @@ try {
417
449
 
418
450
  ## Architecture
419
451
 
420
- ```
452
+ For a detailed, hop-by-hop trace of every execution chain (resolution → LLM generation → persistence), see [ARCHITECTURE.md](./ARCHITECTURE.md).
453
+
454
+ ```text
421
455
  UluOpsClient (facade)
422
456
  |
423
457
  +-- AgentExecutor (single-agent LLM execution)
@@ -483,6 +517,24 @@ import {
483
517
  parseRef, // Parse "name@version" reference strings
484
518
  classifyDecision, // Classify decision strings into positive/negative/conditional/neutral
485
519
  buildVocabularyMap, // Build custom decision vocabulary from agent definitions
520
+ deriveCompleteness, // Recompute completeness from a DegradationMarker[]
521
+ resolutionMarkersFromLegacy, // Convert the deprecated degradations[] to DegradationMarker[]
522
+ } from '@uluops/core';
523
+ ```
524
+
525
+ ### Exported Constants
526
+
527
+ The default thresholds and limits used by the executors are exported for custom
528
+ threshold logic, diagnostics, and tests:
529
+
530
+ ```typescript
531
+ import {
532
+ DEFAULT_PASS_THRESHOLD, // 75 — default validator pass threshold
533
+ DEFAULT_WARN_THRESHOLD, // 50 — default warn threshold
534
+ DEFAULT_GATE_THRESHOLD, // 70 — default workflow phase gate
535
+ DEFAULT_MAX_STEPS, // 50 — default tool-loop step ceiling
536
+ DEFAULT_MAX_TOKENS, // 16384 — default output tokens per generation call
537
+ STARTER_DEFINITIONS_DIR, // bundled starter definitions directory (offline quick start)
486
538
  } from '@uluops/core';
487
539
  ```
488
540
 
@@ -515,7 +567,7 @@ const catalog = new ModelCatalog(registrySdk);
515
567
  const resolved = await catalog.resolve('sonnet', {
516
568
  requiredCapabilities: ['tools', 'extendedThinking'],
517
569
  });
518
- // → { provider: 'anthropic', model: 'claude-sonnet-4-...' }
570
+ // → { provider: 'anthropic', modelId: 'claude-sonnet-4-...', providerModelId: 'claude-sonnet-4-...' }
519
571
 
520
572
  // Enumerate available models and aliases
521
573
  const aliases = await catalog.listAliases();
@@ -598,6 +650,7 @@ const client = new UluOpsClient({
598
650
  | Variable | Description | Default |
599
651
  |----------|-------------|---------|
600
652
  | `ULUOPS_API_KEY` | Platform API key | (required) |
653
+ | `ULU_API_KEY` | Platform API key (legacy alias; used only if `ULUOPS_API_KEY` is unset) | - |
601
654
  | `ANTHROPIC_API_KEY` | Anthropic provider key | - |
602
655
  | `OPENAI_API_KEY` | OpenAI provider key | - |
603
656
  | `GOOGLE_API_KEY` | Google/Gemini provider key | - |
@@ -633,11 +686,26 @@ import {
633
686
  type UluOpsConfig,
634
687
  type ExecutionInput,
635
688
  type ExecutionOptions,
689
+ // Async pipeline handle (return type of startPipeline)
690
+ type PipelineHandle,
636
691
  // Decision classification
637
692
  classifyDecision,
638
693
  type DecisionCategory,
694
+ type DecisionVocabularyMap, // return type of buildVocabularyMap
695
+ // Analysis & AI layer companion types (for direct Advanced Exports usage)
696
+ type AnalysisExtractionResult, // return type of AnalysisSummaryExtractor
697
+ type ResolvedModel, // return type of ModelCatalog.resolve
698
+ // Completeness & degradation markers
699
+ deriveCompleteness,
700
+ resolutionMarkersFromLegacy, // migrate the deprecated degradations[] field
701
+ type Completeness,
702
+ type DegradationMarker,
703
+ type DegradationPhase, // 'resolution' | 'execution'
704
+ type DegradationSeverity, // 'info' | 'degraded' | 'critical'
639
705
  // Usage metrics
640
- type UsageMetrics,
706
+ type ExecutionMetrics, // type of result.metrics on every result type (camelCase)
707
+ type UsageMetrics, // raw AI-provider usage on AIGenerateResult.usage (advanced; snake_case)
708
+ type AIGenerateResult, // return type of AIProvider.generate() (advanced)
641
709
  // Error classes
642
710
  ExecutionError,
643
711
  MaxStepsExhaustedError,
@@ -683,10 +751,10 @@ The SDK provides a structured error hierarchy:
683
751
  | `WorkflowError` | `WorkflowExecutor.execute()` | Phase gate failure. Check `error.context.partialResult` for completed phase results |
684
752
  | `PipelineError` | `PipelineExecutor.execute()` | Pipeline stage failure. Check `error.context` for stage name/index |
685
753
  | `SubscriptionRequiredError` | `RegistryClient.resolve()` | Definition requires a higher subscription tier. Check `error.requiredTier`, `error.currentTier`, and `error.upgradeUrl` for upgrade guidance |
686
- | `IntegrityError` | `RegistryClient.resolve()` (caller-pinned) | A pinned `expectedHash`/`expectedPromptHash` did not match the resolved content, or a prompt pin was supplied for a definition with no rendered prompt. Check `error.kind` (`'yaml'`/`'prompt'`/`'unavailable'`), `error.expected`, `error.actual`. Fail-closed — execution is refused |
754
+ | `IntegrityError` | `RegistryClient.resolve()` (caller-pinned) | A pinned `expectedHash`/`expectedPromptHash` did not match the resolved content, or a prompt pin was supplied for a definition with no rendered prompt. Check `error.kind` (`'yaml'`/`'prompt'`/`'unavailable'`), `error.expected`, `error.actual`, and `error.definitionName`/`error.definitionVersion` (which definition failed). Fail-closed — execution is refused |
687
755
 
688
756
  ```typescript
689
- import { ConfigurationError, ModelNotFoundError, ExecutionError, MaxStepsExhaustedError, SubscriptionRequiredError } from '@uluops/core';
757
+ import { ConfigurationError, ModelNotFoundError, CapabilityError, ExecutionError, MaxStepsExhaustedError, WorkflowError, SubscriptionRequiredError } from '@uluops/core';
690
758
 
691
759
  try {
692
760
  const result = await client.runAgent('code-validator', './src');
@@ -695,12 +763,19 @@ try {
695
763
  console.error('Check your config:', error.message);
696
764
  } else if (error instanceof ModelNotFoundError) {
697
765
  console.error('Unknown model alias:', error.message);
766
+ } else if (error instanceof CapabilityError) {
767
+ console.error('Model lacks a required capability:', error.message);
698
768
  } else if (error instanceof MaxStepsExhaustedError) {
699
769
  // Check this BEFORE ExecutionError — it is a subclass.
700
770
  console.error(`Hit the step ceiling (${error.steps} steps) — raise maxSteps or narrow the target.`);
701
771
  } else if (error instanceof ExecutionError) {
702
772
  console.error('Execution failed:', error.message);
703
773
  console.log('Partial result:', error.partialResult);
774
+ } else if (error instanceof WorkflowError) {
775
+ // Phase gate failure — completed phases are in error.context.partialResult
776
+ console.error('Workflow gate failed:', error.message);
777
+ } else if (error instanceof SubscriptionRequiredError) {
778
+ console.error(`Upgrade required: needs "${error.requiredTier}" (you have "${error.currentTier}"). ${error.upgradeUrl}`);
704
779
  }
705
780
  }
706
781
  ```
@@ -114,6 +114,18 @@ export declare class AIProvider {
114
114
  * 3. Get AI SDK LanguageModel from provider factory
115
115
  * 4. Build provider options (cache control, thinking, etc.)
116
116
  * 5. Call generateText with maxSteps for automatic tool loop
117
+ *
118
+ * Every call is gated through the shared concurrency limiter so wide fan-out
119
+ * plus per-request retries cannot collectively overrun a provider rate limit.
120
+ *
121
+ * @param options - Generation options ({@link AIGenerateOptions}): `model` alias, `system`,
122
+ * `messages`/`prompt`, `tools`, `requiredCapabilities`, `providerOptions`, `contextBudget`, etc.
123
+ * @returns The {@link AIGenerateResult} — generated text, tool calls, usage metrics, and finish reason.
124
+ * @throws {ConfigurationError} If the requested provider is not configured.
125
+ * @throws {ModelNotFoundError} If the model alias cannot be resolved by the catalog.
126
+ * @throws {CapabilityError} If the resolved model lacks a required capability.
127
+ * @throws {RateLimitError} If the provider returns a 429 after retries are exhausted.
128
+ * @throws {SdkApiError} For other provider/API errors surfaced by the AI SDK.
117
129
  */
118
130
  generate(options: AIGenerateOptions): Promise<AIGenerateResult>;
119
131
  private generateInner;
@@ -1 +1 @@
1
- {"version":3,"file":"AIProvider.d.ts","sourceRoot":"","sources":["../../src/ai/AIProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AIProvider.d.ts","sourceRoot":"","sources":["../../src/ai/AIProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,MAAM,EAA2D,KAAK,OAAO,EAAE,MAAM,IAAI,CAAC;AACjH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAI9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,OAAO,KAAK,EAAE,cAAc,EAAoB,MAAM,oBAAoB,CAAC;AAC3E,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAa7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,gBAAgB,CAAC,OAAO,GAAG,OAAO;IACjD,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IAEb,mCAAmC;IACnC,KAAK,EAAE,YAAY,CAAC;IAEpB,gCAAgC;IAChC,aAAa,EAAE,MAAM,CAAC;IAEtB,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IAEd,kDAAkD;IAClD,QAAQ,EAAE,MAAM,CAAC;IAEjB,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IAEd,oBAAoB;IACpB,YAAY,EAAE,MAAM,CAAC;IAErB;;qFAEiF;IACjF,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,qFAAqF;IACrF,KAAK,EAAE,MAAM,CAAC;IAEd,oBAAoB;IACpB,MAAM,EAAE,MAAM,CAAC;IAEf,2BAA2B;IAC3B,MAAM,EAAE,MAAM,CAAC;IAEf,8CAA8C;IAC9C,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,uCAAuC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,mCAAmC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,wBAAwB;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,yDAAyD;IACzD,oBAAoB,CAAC,EAAE,KAAK,CAAC,MAAM,iBAAiB,CAAC,CAAC;IAEtD,wFAAwF;IACxF,eAAe,CAAC,EAAE,eAAe,CAAC;IAElC,yFAAyF;IACzF,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,oFAAoF;IACpF,aAAa,CAAC,EAAE,kBAAkB,CAAC;IAEnC;sEACkE;IAClE,MAAM,CAAC,EAAE,UAAU,CAAC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7C;2GACuG;IACvG,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,UAAU;IA+BnB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,MAAM;IAhChB,2FAA2F;IAC3F,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAE5C;IAEF;;;;OAIG;IACH,OAAO,CAAC,cAAc,CAAc;IAEpC,oEAAoE;IACpE,OAAO,CAAC,SAAS,CAAyD;IAE1E,uEAAuE;IACvE,OAAO,CAAC,iBAAiB,CAAC,CAAoB;IAE9C,oEAAoE;IACpE,OAAO,CAAC,cAAc,CAAC,CAAiB;IAExC;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAY;gBAGrC,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,MAAM;IAkBxB;;;;;;;;;;;;;;;;;;;;;OAqBG;IACG,QAAQ,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;YAQvD,aAAa;IA6C3B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAqBxB;;OAEG;YACW,iBAAiB;IAgD/B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAiC3B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA0B3B;;;OAGG;IACG,YAAY,CAChB,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE;QAAE,oBAAoB,CAAC,EAAE,KAAK,CAAC,MAAM,iBAAiB,CAAC,CAAA;KAAE,GAC/D,OAAO,CAAC,aAAa,CAAC;IAMzB;;;;;;;;OAQG;IACH,uBAAuB,CACrB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,SAAS,GACjB,OAAO,GAAG,SAAS;IAoCtB;;;;;;;;;OASG;IACH,OAAO,CAAC,kBAAkB;IAmB1B;;;OAGG;IACH;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAOtC;IAEF,OAAO,CAAC,oBAAoB;IAS5B;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;IA6C7B;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IA0B1B;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAyB1B;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB;IAiD9B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAkB3B;;OAEG;IACG,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuDzD;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,oBAAoB;IAY5B;;OAEG;IACH,OAAO,CAAC,QAAQ;IAqChB,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,mBAAmB;IAa3B;;;OAGG;IACH,OAAO,CAAC,QAAQ;CAiDjB"}
@@ -77,6 +77,18 @@ export class AIProvider {
77
77
  * 3. Get AI SDK LanguageModel from provider factory
78
78
  * 4. Build provider options (cache control, thinking, etc.)
79
79
  * 5. Call generateText with maxSteps for automatic tool loop
80
+ *
81
+ * Every call is gated through the shared concurrency limiter so wide fan-out
82
+ * plus per-request retries cannot collectively overrun a provider rate limit.
83
+ *
84
+ * @param options - Generation options ({@link AIGenerateOptions}): `model` alias, `system`,
85
+ * `messages`/`prompt`, `tools`, `requiredCapabilities`, `providerOptions`, `contextBudget`, etc.
86
+ * @returns The {@link AIGenerateResult} — generated text, tool calls, usage metrics, and finish reason.
87
+ * @throws {ConfigurationError} If the requested provider is not configured.
88
+ * @throws {ModelNotFoundError} If the model alias cannot be resolved by the catalog.
89
+ * @throws {CapabilityError} If the resolved model lacks a required capability.
90
+ * @throws {RateLimitError} If the provider returns a 429 after retries are exhausted.
91
+ * @throws {SdkApiError} For other provider/API errors surfaced by the AI SDK.
80
92
  */
81
93
  async generate(options) {
82
94
  // Gate every generation through the shared concurrency limiter so that
@@ -148,7 +160,7 @@ export class AIProvider {
148
160
  let stepCount = 0;
149
161
  const budgetTracker = options.budgetTracker;
150
162
  const prepareStep = options.contextBudget
151
- ? this.buildBudgetPrepareStep(options.contextBudget)
163
+ ? this.buildBudgetPrepareStep(options.contextBudget, budgetTracker)
152
164
  : undefined;
153
165
  const maxSteps = options.maxSteps ?? DEFAULT_MAX_STEPS;
154
166
  return generateText({
@@ -409,7 +421,7 @@ export class AIProvider {
409
421
  * conversation including cached tokens). The last step's value represents the
410
422
  * current context window size. We check that against the budget.
411
423
  */
412
- buildBudgetPrepareStep(budget) {
424
+ buildBudgetPrepareStep(budget, budgetTracker) {
413
425
  // Hysteresis band: latch wrap-up on at 80% of budget, release it only once
414
426
  // context falls back below 70%. The lower release threshold prevents the
415
427
  // latch from flapping on/off around a single boundary, while still allowing
@@ -430,6 +442,7 @@ export class AIProvider {
430
442
  // Release the latch if context has recovered below the lower band.
431
443
  if (contextSize < lowerThreshold) {
432
444
  wrapUpInjected = false;
445
+ budgetTracker?.markForcedWrapUp(false);
433
446
  this.logger.info(`Context budget recovered (${contextSize}/${budget}, <70%). Releasing wrap-up — tool calls re-enabled.`);
434
447
  return {};
435
448
  }
@@ -438,6 +451,7 @@ export class AIProvider {
438
451
  }
439
452
  if (contextSize >= upperThreshold) {
440
453
  wrapUpInjected = true;
454
+ budgetTracker?.markForcedWrapUp(true);
441
455
  this.logger.warn(`Context budget 80% used (${contextSize}/${budget}). Forcing output — no more tool calls.`);
442
456
  return { toolChoice: 'none' };
443
457
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AIProvider.js","sourceRoot":"","sources":["../../src/ai/AIProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AIProvider.js","sourceRoot":"","sources":["../../src/ai/AIProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,sBAAsB,EAAE,WAAW,EAAoC,MAAM,IAAI,CAAC;AAEjH,OAAO,EAAE,eAAe,EAA0B,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAuB,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAE1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAI7D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,iCAAiC,EAAE,gCAAgC,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AACtP,OAAO,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AACtF,OAAO,EACL,WAAW,EACX,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,uBAAuB,EACvB,YAAY,EACZ,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAoF5B;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAO,UAAU;IA+BX;IACA;IACA;IAhCV,2FAA2F;IACnF,MAAM,CAAU,sBAAsB,GAA2B;QACvE,MAAM,EAAE,0BAA0B;KACnC,CAAC;IAEF;;;;OAIG;IACK,cAAc,CAAc;IAEpC,oEAAoE;IAC5D,SAAS,GAAG,IAAI,GAAG,EAA8C,CAAC;IAE1E,uEAAuE;IAC/D,iBAAiB,CAAqB;IAE9C,oEAAoE;IAC5D,cAAc,CAAkB;IAExC;;;;;OAKG;IACc,kBAAkB,CAAY;IAE/C,YACU,MAAsB,EACtB,OAAqB,EACrB,MAAc;QAFd,WAAM,GAAN,MAAM,CAAgB;QACtB,YAAO,GAAP,OAAO,CAAc;QACrB,WAAM,GAAN,MAAM,CAAQ;QAEtB,IAAI,CAAC,kBAAkB,GAAG,IAAI,SAAS,CAAC,MAAM,CAAC,cAAc,IAAI,uBAAuB,CAAC,CAAC;QAC1F,yEAAyE;QACzE,oDAAoD;QACpD,MAAM,qBAAqB,GAAG,wBAAwB,CAAC;QACvD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,EAAE,CAAC,mBAAmB,IAAI,EAAE,EAAE,CAAC;YACvD,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtC,MAAM,IAAI,kBAAkB,CAAC,0BAA0B,IAAI,8EAA8E,CAAC,CAAC;YAC7I,CAAC;QACH,CAAC;QACD,IAAI,CAAC,cAAc,GAAG,IAAI,GAAG,CAAC;YAC5B,GAAG,yBAAyB;YAC5B,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,mBAAmB,IAAI,EAAE,CAAC;SACzC,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACtC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,KAAK,CAAC,QAAQ,CAAC,OAA0B;QACvC,uEAAuE;QACvE,yEAAyE;QACzE,uEAAuE;QACvE,2EAA2E;QAC3E,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IACxE,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,OAA0B;QACpD,iDAAiD;QACjD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,aAAa,IAAI,OAAO,CAAC,KAAK,CAAC;QACjE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE;YACtD,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;SACnD,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAE7C,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC3D,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;QACxD,MAAM,eAAe,GAAG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;QAC5G,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAC1E,gEAAgE;QAChE,wEAAwE;QACxE,0EAA0E;QAC1E,4EAA4E;QAC5E,4EAA4E;QAC5E,wEAAwE;QACxE,2EAA2E;QAC3E,6EAA6E;QAC7E,4EAA4E;QAC5E,sEAAsE;QACtE,MAAM,QAAQ,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAC1E,MAAM,mBAAmB,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,gBAAgB;eACnF,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,YAAY,CAAC,yBAAyB,KAAK,KAAK,CAAC,CAAC;QAE9E,0EAA0E;QAC1E,oEAAoE;QACpE,4EAA4E;QAC5E,+DAA+D;QAC/D,MAAM,WAAW,GAAG,QAAQ,CAAC,YAAY,CAAC,gBAAgB;eACrD,CAAC,WAAW,IAAI,QAAQ,CAAC,YAAY,IAAK,QAAQ,CAAC,YAAwC,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;eAClH,QAAQ,CAAC,IAAI,KAAK,WAAW,CAAC;QAEnC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,mBAAmB,CAAC,CAAC;QAE1E,gCAAgC;QAChC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,eAAe,EAAE,mBAAmB,EAAE,WAAW,CAAC,CAAC;YAC/H,OAAO,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,mBAAmB,CAAC,CAAC;QACzE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,QAAQ,EAAE,mBAAmB,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC;IAED;;OAEG;IACK,gBAAgB,CACtB,OAA0B,EAC1B,QAAuB,EACvB,UAAkB,EAClB,mBAA4B;QAE5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,OAAO,WAAW,UAAU,IAAI,CAAC,CAAC;QAC3F,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,OAAO,CAAC,MAAM,CAAC,MAAM,QAAQ,CAAC,CAAC;QACnE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,OAAO,CAAC,MAAM,CAAC,MAAM,QAAQ,CAAC,CAAC;QACjE,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,OAAO,CAAC,SAAS,IAAI,kBAAkB,cAAc,OAAO,CAAC,QAAQ,IAAI,iBAAiB,UAAU,OAAO,CAAC,WAAW,IAAI,CAAC,EAAE,CAAC,CAAC;QAEvK,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3C,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,SAAS,QAAQ,CAAC,OAAO,4EAA4E,CACtG,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,iBAAiB,CAC7B,OAA0B,EAC1B,aAAqE,EACrE,MAAkD,EAClD,eAA6D,EAC7D,mBAA4B,EAC5B,WAAW,GAAG,KAAK;QAEnB,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC5C,MAAM,WAAW,GAAG,OAAO,CAAC,aAAa;YACvC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC;YACnE,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,iBAAiB,CAAC;QAEvD,OAAO,YAAY,CAAC;YAClB,KAAK,EAAE,aAAa;YACpB,MAAM;YACN,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,eAAe,EAAE,OAAO,CAAC,SAAS,IAAI,kBAAkB;YACxD,QAAQ,EAAE,WAAW,CAAC,QAAQ,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/D,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,CAAC,EAAE,CAAC;YACjE,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,WAAW,EAAE,OAAO,CAAC,SAAS;gBAC5B,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;gBACxC,CAAC,CAAC,SAAS;YACb,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/C,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1E,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE;gBACrB,SAAS,EAAE,CAAC;gBACZ,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;gBACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC;gBACvC,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,QAAQ,SAAS,KAAK,IAAI,CAAC,YAAY,EAAE;oBACzC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBACnE,aAAa,KAAK,CAAC,WAAW,IAAI,CAAC,MAAM,KAAK,CAAC,YAAY,IAAI,CAAC,KAAK;oBACrE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CACjD,CAAC;gBACF,IAAI,aAAa,EAAE,CAAC;oBAClB,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,EAAE,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC;gBACxE,CAAC;YACH,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,mBAAmB,CACzB,MAAgD,EAChD,QAAuB,EACvB,mBAA4B;QAE5B,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CACvC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,IAAI,CAAC,CAAC,EAClD,CAAC,CACF,CAAC;QACF,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAEnE,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,aAAa,MAAM,CAAC,KAAK,CAAC,MAAM,WAAW,aAAa,uBAAuB,MAAM,CAAC,YAAY,EAAE,CACrG,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,UAAU,KAAK,CAAC,YAAY,QAAQ,KAAK,CAAC,aAAa,KAAK;YAC5D,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC,kBAAkB,KAAK,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChG,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC,iBAAiB,KAAK,CAAC,uBAAuB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvF,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CACtE,CAAC;QAEF,OAAO;YACL,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK;YACL,aAAa;YACb,KAAK,EAAE,GAAG,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,OAAO,EAAE;YACjD,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM;YAC1B,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,gBAAgB,EAAE,mBAAmB,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;SAClE,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,mBAAmB,CACzB,KAAc,EACd,QAAuB,EACvB,mBAA4B,EAC5B,SAAkB;QAElB,IAAI,mBAAmB,IAAI,sBAAsB,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACpE,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,0EAA2E,KAAe,CAAC,OAAO,EAAE,CACrG,CAAC;YACF,OAAO;gBACL,IAAI,EAAG,KAAgC,CAAC,IAAI,IAAI,EAAE;gBAClD,gBAAgB,EAAE,SAAS;gBAC3B,KAAK,EAAE,IAAI,CAAC,QAAQ,CACjB,KAAgC,CAAC,KAAK,IAAI,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAC/E;gBACD,aAAa,EAAE,CAAC;gBAChB,KAAK,EAAE,GAAG,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,OAAO,EAAE;gBACjD,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,KAAK,EAAE,CAAC;gBACR,YAAY,EAAG,KAAgC,CAAC,YAAY,IAAI,OAAO;aACxE,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACxC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY,CAChB,KAAa,EACb,IAAgE;QAEhE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACzD,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC7C,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;;OAQG;IACH,uBAAuB,CACrB,QAAgB,EAChB,SAAiB,EACjB,SAAS,GAAG,MAAM;QAElB,IAAI,QAAQ,KAAK,WAAW,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvD,sFAAsF;YACtF,sFAAsF;YACtF,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC3E,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,kBAAkB,CAC1B,uBAAuB,2BAA2B,mCAAmC;oBACrF,+EAA+E,CAChF,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,IAAI,EAAE,QAAQ,CAAC;oBACb,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC;iBACjG,CAAC;aACH,CAAC;QACJ,CAAC;QAED,IAAI,QAAQ,KAAK,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACjD,sEAAsE;YACtE,wEAAwE;YACxE,iEAAiE;YACjE,OAAO;gBACL,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC;oBACrC,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,0BAA0B,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC;iBACrG,CAAC;aACmB,CAAC;QAC1B,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,4EAA4E;IAC5E,mBAAmB;IACnB,4EAA4E;IAE5E;;;;;;;;;OASG;IACK,kBAAkB,CACxB,QAAgB,EAChB,UAAkB;QAElB,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;YAC7B,OAAO,UAAU,CAAC;QACpB,CAAC;QAED,OAAO;YACL,IAAI,EAAE,QAAiB;YACvB,OAAO,EAAE,UAAU;YACnB,eAAe,EAAE;gBACf,SAAS,EAAE;oBACT,YAAY,EAAE,EAAE,IAAI,EAAE,WAAoB,EAAE;iBAC7C;aACF;SACF,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH;;;OAGG;IACc,uBAAuB,GAGpC;QACF,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC3D,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/C,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC;KAChD,CAAC;IAEM,oBAAoB,CAC1B,QAAuB,EACvB,WAA6B,EAC7B,eAAwB;QAExB,MAAM,OAAO,GAAG,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAChE,OAAO,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;IACjF,CAAC;IAED;;;;OAIG;IACK,qBAAqB,CAC3B,QAAuB,EACvB,WAA6B,EAC7B,eAAwB;QAExB,MAAM,iBAAiB,GAAG,CAAC,WAAW,EAAE,SAAS,IAAI,EAAE,CAA4B,CAAC;QACpF,IAAI,aAAa,GAAG,EAAE,GAAG,iBAAiB,EAAE,CAAC;QAE7C,+EAA+E;QAC/E,IAAI,QAAQ,CAAC,YAAY,CAAC,gBAAgB,IAAI,CAAC,CAAC,UAAU,IAAI,aAAa,CAAC,EAAE,CAAC;YAC7E,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC;YACvD,aAAa,GAAG;gBACd,GAAG,aAAa;gBAChB,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAkB,EAAE,YAAY,EAAE;aACrD,CAAC;QACJ,CAAC;QAED,kFAAkF;QAClF,8EAA8E;QAC9E,iFAAiF;QACjF,kDAAkD;QAClD,IAAI,CAAC,CAAC,mBAAmB,IAAI,aAAa,CAAC,EAAE,CAAC;YAC5C,MAAM,cAAc,GAAG,eAAe,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,sBAAsB,CAAC;YAC9F,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,GAAG,CAAC,CAAC;YACxD,aAAa,GAAG;gBACd,GAAG,aAAa;gBAChB,iBAAiB,EAAE;oBACjB,KAAK,EAAE;wBACL;4BACE,IAAI,EAAE,iCAAiC;4BACvC,OAAO,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,EAAE;4BACxD,IAAI,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,gCAAgC,EAAE;4BACpE,eAAe,EAAE,IAAI;yBACtB;qBACF;iBACF;aACF,CAAC;QACJ,CAAC;QAED,OAAO;YACL,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;YACtB,SAAS,EAAE,aAAwC;SACjC,CAAC;IACvB,CAAC;IAED;;;;;OAKG;IACK,kBAAkB,CACxB,QAAuB,EACvB,WAA6B;QAE7B,MAAM,cAAc,GAAG,CAAC,WAAW,EAAE,MAAM,IAAI,EAAE,CAA4B,CAAC;QAC9E,IAAI,UAAU,GAAG,EAAE,GAAG,cAAc,EAAE,CAAC;QAEvC,yEAAyE;QACzE,IAAI,QAAQ,CAAC,YAAY,CAAC,gBAAgB,IAAI,CAAC,CAAC,iBAAiB,IAAI,UAAU,CAAC,EAAE,CAAC;YACjF,UAAU,GAAG;gBACX,GAAG,UAAU;gBACb,eAAe,EAAE,QAAQ;aAC1B,CAAC;QACJ,CAAC;QAED,uDAAuD;QACvD,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzC,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,OAAO;YACL,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;YACtB,MAAM,EAAE,UAAqC;SAC3B,CAAC;IACvB,CAAC;IAED;;;;;OAKG;IACK,kBAAkB,CACxB,QAAuB,EACvB,WAA6B;QAE7B,MAAM,cAAc,GAAG,CAAC,WAAW,EAAE,MAAM,IAAI,EAAE,CAA4B,CAAC;QAC9E,IAAI,UAAU,GAAG,EAAE,GAAG,cAAc,EAAE,CAAC;QAEvC,iFAAiF;QACjF,IAAI,QAAQ,CAAC,YAAY,CAAC,gBAAgB,IAAI,CAAC,CAAC,gBAAgB,IAAI,UAAU,CAAC,EAAE,CAAC;YAChF,UAAU,GAAG;gBACX,GAAG,UAAU;gBACb,cAAc,EAAE,EAAE,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,qBAAqB,EAAE;aACtE,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzC,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,OAAO;YACL,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;YACtB,MAAM,EAAE,UAAqC;SAC3B,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACK,sBAAsB,CAAC,MAAc,EAAE,aAAkC;QAC/E,2EAA2E;QAC3E,yEAAyE;QACzE,4EAA4E;QAC5E,0EAA0E;QAC1E,4EAA4E;QAC5E,0EAA0E;QAC1E,+CAA+C;QAC/C,MAAM,cAAc,GAAG,MAAM,GAAG,IAAI,CAAC;QACrC,MAAM,cAAc,GAAG,MAAM,GAAG,IAAI,CAAC;QACrC,IAAI,cAAc,GAAG,KAAK,CAAC;QAC3B,OAAO,CAAC,EAAE,KAAK,EAAgF,EAAE,EAAE;YACjG,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YAElC,wDAAwD;YACxD,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;YAC1C,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC;YAEpD,IAAI,cAAc,EAAE,CAAC;gBACnB,mEAAmE;gBACnE,IAAI,WAAW,GAAG,cAAc,EAAE,CAAC;oBACjC,cAAc,GAAG,KAAK,CAAC;oBACvB,aAAa,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC;oBACvC,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,6BAA6B,WAAW,IAAI,MAAM,qDAAqD,CACxG,CAAC;oBACF,OAAO,EAAE,CAAC;gBACZ,CAAC;gBACD,iDAAiD;gBACjD,OAAO,EAAE,UAAU,EAAE,MAAe,EAAE,CAAC;YACzC,CAAC;YAED,IAAI,WAAW,IAAI,cAAc,EAAE,CAAC;gBAClC,cAAc,GAAG,IAAI,CAAC;gBACtB,aAAa,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACtC,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,4BAA4B,WAAW,IAAI,MAAM,yCAAyC,CAC3F,CAAC;gBACF,OAAO,EAAE,UAAU,EAAE,MAAe,EAAE,CAAC;YACzC,CAAC;YAED,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;IACJ,CAAC;IAED,4EAA4E;IAC5E,sBAAsB;IACtB,4EAA4E;IAE5E;;;OAGG;IACK,mBAAmB,CAAC,QAA0B;QACpD,KAAK,MAAM,CAAC,YAAY,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACvE,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;gBACjC,MAAM,SAAS,GAAG,eAAe,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC5D,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;gBACnC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;YACnE,CAAC;iBAAM,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;gBACrC,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;gBACtD,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;gBAC7B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;YAC7D,CAAC;iBAAM,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;gBACrC,MAAM,MAAM,GAAG,wBAAwB,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;gBAClE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;YAC7D,CAAC;YACD,wDAAwD;QAC1D,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,YAAoB;QACvC,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC;YAAE,OAAO;QAE7C,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QACrD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC;QAChD,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,kBAAkB,CAC1B,yBAAyB,YAAY,KAAK;gBAC1C,oBAAoB,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC1D,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,wCAAwC;YACxC,iFAAiF;YACjF,iFAAiF;YACjF,iFAAiF;YACjF,iFAAiF;YACjF,kFAAkF;YAClF,2DAA2D;YAC3D,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,WAAW,YAAY,EAAE,CAA4B,CAAC;YAC/E,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+BAA+B,YAAY,EAAE,CAAC,CAAC;YAEhE,oGAAoG;YACpG,MAAM,WAAW,GAAG,UAAU,CAAC,sBAAsB,CAAC,YAAY,CAAC;mBAC9D,SAAS,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7E,MAAM,cAAc,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC,SAAS,CAAC,CACsB,CAAC;YAEjF,IAAI,CAAC,cAAc,IAAI,OAAO,cAAc,KAAK,UAAU,EAAE,CAAC;gBAC5D,MAAM,IAAI,kBAAkB,CAC1B,WAAW,YAAY,oBAAoB,WAAW,eAAe;oBACrE,kCAAkC,CACnC,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,cAAc,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;YAC1D,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;QACnE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,kBAAkB;gBAAE,MAAM,KAAK,CAAC;YAErD,MAAM,OAAO,GAAI,KAA+B,CAAC,IAAI,CAAC;YACtD,IAAI,OAAO,KAAK,sBAAsB,IAAI,OAAO,KAAK,kBAAkB,EAAE,CAAC;gBACzE,MAAM,IAAI,kBAAkB,CAC1B,aAAa,YAAY,sBAAsB,YAAY,IAAI;oBAC/D,gCAAgC,YAAY,EAAE,CAC/C,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,kBAAkB,CAAC,YAAoB;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACjD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,oBAAoB,CAAC,YAAoB;QAC/C,MAAM,MAAM,GAAG,GAAG,YAAY,CAAC,WAAW,EAAE,UAAU,CAAC;QACvD,OAAO,IAAI,kBAAkB,CAC3B,gBAAgB,YAAY,uBAAuB;YACnD,WAAW,MAAM,6DAA6D,YAAY,uBAAuB,CAClH,CAAC;IACJ,CAAC;IAED,4EAA4E;IAC5E,wBAAwB;IACxB,4EAA4E;IAE5E;;OAEG;IACK,QAAQ,CACd,KAOC,EACD,gBAA0C;QAE1C,MAAM,IAAI,GAAiB;YACzB,YAAY,EAAE,KAAK,CAAC,WAAW,IAAI,CAAC;YACpC,aAAa,EAAE,KAAK,CAAC,YAAY,IAAI,CAAC;SACvC,CAAC;QAEF,qDAAqD;QACrD,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC5B,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC,iBAAiB,CAAC,eAAe,IAAI,SAAS,CAAC;YACpF,IAAI,CAAC,2BAA2B,GAAG,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,IAAI,SAAS,CAAC;QAC3F,CAAC;QAED,0CAA0C;QAC1C,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QACnD,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QAChD,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QAEhD,+DAA+D;QAC/D,yEAAyE;QACzE,0EAA0E;QAC1E,IAAI,gBAAgB,IAAI,IAAI,CAAC,uBAAuB,IAAI,IAAI,EAAE,CAAC;YAC7D,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QACnD,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,qBAAqB,CAAC,IAAkB,EAAE,gBAA0C;QAC1F,MAAM,IAAI,GAAI,gBAAqH,EAAE,SAAS,CAAC;QAC/I,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,IAAI,CAAC,2BAA2B,KAAK,IAAI,CAAC,wBAAwB,CAAC;QACnE,IAAI,CAAC,uBAAuB,KAAK,IAAI,CAAC,oBAAoB,CAAC;IAC7D,CAAC;IAEO,kBAAkB,CAAC,IAAkB,EAAE,gBAA0C;QACvF,MAAM,IAAI,GAAI,gBAAuG,EAAE,MAAM,CAAC;QAC9H,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,IAAI,CAAC,uBAAuB,KAAK,IAAI,CAAC,kBAAkB,CAAC;QACzD,IAAI,IAAI,CAAC,eAAe;YAAE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,eAAe,CAAC;IACzE,CAAC;IAEO,kBAAkB,CAAC,IAAkB,EAAE,gBAA0C;QACvF,MAAM,MAAM,GAAI,gBAAmI,EAAE,MAAM,EAAE,aAAa,CAAC;QAC3K,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,IAAI,CAAC,uBAAuB,KAAK,MAAM,CAAC,uBAAuB,CAAC;QAChE,IAAI,MAAM,CAAC,kBAAkB;YAAE,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,kBAAkB,CAAC;IAClF,CAAC;IAEO,mBAAmB,CAAC,IAAkB,EAAE,gBAAyC;QACvF,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;QACnE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC5D,IAAI,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK;gBAAE,SAAS;YAC9E,MAAM,IAAI,GAAG,KAAgC,CAAC;YAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,yBAAyB,CAAC,IAAI,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACrG,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7C,IAAI,CAAC,uBAAuB,GAAG,MAAM,CAAC;gBACtC,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,QAAQ,CAAC,KAAc,EAAE,SAAkB;QACjD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAEhE,MAAM,KAAK,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QAEzD,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC;YACrC,IAAI,MAAa,CAAC;YAElB,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;gBACnB,MAAM,GAAG,IAAI,cAAc,CACzB,yEAAyE,KAAK,CAAC,OAAO,EAAE,CACzF,CAAC;YACJ,CAAC;iBAAM,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;gBAC1B,MAAM,GAAG,IAAI,iBAAiB,CAC5B,oFAAoF,KAAK,CAAC,OAAO,EAAE,CACpG,CAAC;YACJ,CAAC;iBAAM,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;gBAC1B,MAAM,GAAG,IAAI,cAAc,CACzB,wFAAwF,KAAK,CAAC,OAAO,EAAE,CACxG,CAAC;YACJ,CAAC;iBAAM,IAAI,MAAM,IAAI,GAAG,EAAE,CAAC;gBACzB,MAAM,GAAG,IAAI,uBAAuB,CAClC,+BAA+B,MAAM,iGAAiG,KAAK,CAAC,OAAO,EAAE,CACtJ,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,IAAI,WAAW,CAAC,MAAM,EAAE,0BAA0B,MAAM,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACzF,CAAC;YACD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;YACrB,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,CAAC,EAAE,sBAAsB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACzE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;YACrB,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,uBAAuB;QACvB,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAC1D,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAClE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;YACrB,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,CAAC,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7D,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,OAAO,MAAM,CAAC;IAChB,CAAC;;AAGH;;GAEG;AACH,SAAS,cAAc,CAAC,KAAc;IACpC,OAAO,KAAK,YAAY,KAAK,IAAI,YAAY,IAAI,KAAK,CAAC;AACzD,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,KAAc;IAClC,OAAO,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,CAAC;AAC/D,CAAC"}
@@ -53,16 +53,24 @@ export declare class ModelCatalog {
53
53
  *
54
54
  * @param input - Alias ('sonnet'), tier ('premium'), or 'provider:modelId'
55
55
  * @param opts - Resolution options (capability checks, provider preference)
56
+ * @returns The fully-qualified {@link ResolvedModel} — `provider`, `modelId`,
57
+ * `providerModelId`, tier, and the resolved capability set.
56
58
  * @throws {ModelNotFoundError} If alias/model cannot be resolved
57
59
  * @throws {CapabilityError} If model lacks required capabilities
58
60
  */
59
61
  resolve(input: string, opts?: ResolveOptions): Promise<ResolvedModel>;
60
62
  /**
61
- * List all available aliases
63
+ * List all available model aliases from the registry.
64
+ *
65
+ * @returns The array of {@link RegistryModelAlias} (alias → provider/model mappings).
62
66
  */
63
67
  listAliases(): Promise<RegistryModelAlias[]>;
64
68
  /**
65
- * List available models, optionally filtered
69
+ * List available models, optionally filtered.
70
+ *
71
+ * @param filter - Optional filters: `provider`, `tier`, and `capability`
72
+ * (a key of {@link ModelCapabilities}, e.g. `'tools'`, `'extendedThinking'`).
73
+ * @returns The matching array of {@link Model} entries from the registry.
66
74
  */
67
75
  listModels(filter?: {
68
76
  provider?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ModelCatalog.d.ts","sourceRoot":"","sources":["../../src/ai/ModelCatalog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,IAAI,WAAW,EAC7B,KAAK,EACL,UAAU,IAAI,kBAAkB,EAEhC,iBAAiB,EACjB,SAAS,EACV,MAAM,sBAAsB,CAAC;AAG9B;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,kDAAkD;IAClD,QAAQ,EAAE,MAAM,CAAC;IAEjB,gEAAgE;IAChE,OAAO,EAAE,MAAM,CAAC;IAEhB,4CAA4C;IAC5C,eAAe,EAAE,MAAM,CAAC;IAExB,qCAAqC;IACrC,IAAI,EAAE,SAAS,CAAC;IAEhB,yBAAyB;IACzB,YAAY,EAAE,iBAAiB,CAAC;IAEhC;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,iDAAiD;IACjD,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,0CAA0C;IAC1C,oBAAoB,CAAC,EAAE,KAAK,CAAC,MAAM,iBAAiB,CAAC,CAAC;IAEtD,uDAAuD;IACvD,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAeD;;;;;;;;;;GAUG;AACH,qBAAa,YAAY;IAIX,OAAO,CAAC,GAAG;IAHvB,OAAO,CAAC,UAAU,CAAsC;IACxD,OAAO,CAAC,UAAU,CAA4B;gBAE1B,GAAG,EAAE,WAAW;IAEpC;;;;;;;OAOG;IACG,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;IAwB3E;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAKlD;;OAEG;IACG,UAAU,CAAC,MAAM,CAAC,EAAE;QACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,SAAS,CAAC;QACjB,UAAU,CAAC,EAAE,MAAM,iBAAiB,CAAC;KACtC,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAKpB;;OAEG;IACH,OAAO,IAAI,IAAI;YASD,eAAe;YAsCf,YAAY;YAcZ,aAAa;YAgCb,QAAQ;IActB,iEAAiE;IACjE,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,eAAe;IAcvB,OAAO,CAAC,oBAAoB;CAe7B"}
1
+ {"version":3,"file":"ModelCatalog.d.ts","sourceRoot":"","sources":["../../src/ai/ModelCatalog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,IAAI,WAAW,EAC7B,KAAK,EACL,UAAU,IAAI,kBAAkB,EAEhC,iBAAiB,EACjB,SAAS,EACV,MAAM,sBAAsB,CAAC;AAG9B;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,kDAAkD;IAClD,QAAQ,EAAE,MAAM,CAAC;IAEjB,gEAAgE;IAChE,OAAO,EAAE,MAAM,CAAC;IAEhB,4CAA4C;IAC5C,eAAe,EAAE,MAAM,CAAC;IAExB,qCAAqC;IACrC,IAAI,EAAE,SAAS,CAAC;IAEhB,yBAAyB;IACzB,YAAY,EAAE,iBAAiB,CAAC;IAEhC;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,iDAAiD;IACjD,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,0CAA0C;IAC1C,oBAAoB,CAAC,EAAE,KAAK,CAAC,MAAM,iBAAiB,CAAC,CAAC;IAEtD,uDAAuD;IACvD,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAeD;;;;;;;;;;GAUG;AACH,qBAAa,YAAY;IAIX,OAAO,CAAC,GAAG;IAHvB,OAAO,CAAC,UAAU,CAAsC;IACxD,OAAO,CAAC,UAAU,CAA4B;gBAE1B,GAAG,EAAE,WAAW;IAEpC;;;;;;;;;OASG;IACG,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;IAwB3E;;;;OAIG;IACG,WAAW,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAKlD;;;;;;OAMG;IACG,UAAU,CAAC,MAAM,CAAC,EAAE;QACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,SAAS,CAAC;QACjB,UAAU,CAAC,EAAE,MAAM,iBAAiB,CAAC;KACtC,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAKpB;;OAEG;IACH,OAAO,IAAI,IAAI;YASD,eAAe;YAsCf,YAAY;YAcZ,aAAa;YAgCb,QAAQ;IActB,iEAAiE;IACjE,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,eAAe;IAcvB,OAAO,CAAC,oBAAoB;CAe7B"}
@@ -33,6 +33,8 @@ export class ModelCatalog {
33
33
  *
34
34
  * @param input - Alias ('sonnet'), tier ('premium'), or 'provider:modelId'
35
35
  * @param opts - Resolution options (capability checks, provider preference)
36
+ * @returns The fully-qualified {@link ResolvedModel} — `provider`, `modelId`,
37
+ * `providerModelId`, tier, and the resolved capability set.
36
38
  * @throws {ModelNotFoundError} If alias/model cannot be resolved
37
39
  * @throws {CapabilityError} If model lacks required capabilities
38
40
  */
@@ -56,14 +58,20 @@ export class ModelCatalog {
56
58
  `Use catalog.listAliases() to see available aliases.`);
57
59
  }
58
60
  /**
59
- * List all available aliases
61
+ * List all available model aliases from the registry.
62
+ *
63
+ * @returns The array of {@link RegistryModelAlias} (alias → provider/model mappings).
60
64
  */
61
65
  async listAliases() {
62
66
  const result = await this.sdk.models.listAliases();
63
67
  return result.aliases;
64
68
  }
65
69
  /**
66
- * List available models, optionally filtered
70
+ * List available models, optionally filtered.
71
+ *
72
+ * @param filter - Optional filters: `provider`, `tier`, and `capability`
73
+ * (a key of {@link ModelCapabilities}, e.g. `'tools'`, `'extendedThinking'`).
74
+ * @returns The matching array of {@link Model} entries from the registry.
67
75
  */
68
76
  async listModels(filter) {
69
77
  const result = await this.sdk.models.list(filter);
@@ -1 +1 @@
1
- {"version":3,"file":"ModelCatalog.js","sourceRoot":"","sources":["../../src/ai/ModelCatalog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ModelCatalog.js","sourceRoot":"","sources":["../../src/ai/ModelCatalog.ts"],"names":[],"mappings":"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"}
@@ -19,12 +19,28 @@ export declare class TokenBudgetTracker {
19
19
  private currentContextTokens;
20
20
  /** Cumulative output tokens across all steps */
21
21
  private cumulativeOutput;
22
+ /** Whether the context-budget wrap-up latch is currently engaged. */
23
+ private forcedWrapUpFlag;
22
24
  constructor(budget: number);
25
+ /**
26
+ * Record the final state of the budget wrap-up latch. Set when the latch
27
+ * engages (≥80% of budget) and cleared when it releases (<70%, hysteresis),
28
+ * so the value reflects whether the run *ended* in forced wrap-up — a run
29
+ * that latched then recovered is not left flagged. Read by AgentExecutor to
30
+ * emit a `budget.forced-wrap-up` degradation marker.
31
+ *
32
+ * @param engaged - `true` if the wrap-up latch is currently engaged, `false` if released.
33
+ */
34
+ markForcedWrapUp(engaged: boolean): void;
35
+ /** Whether the wrap-up latch was engaged at the end of the run. */
36
+ get forcedWrapUp(): boolean;
23
37
  /**
24
38
  * Record token usage from a completed step.
25
39
  *
26
- * `inputTokens` is the full context window size for the latest API call
27
- * (replaces previous value). `outputTokens` is incremental (accumulated).
40
+ * @param inputTokens - Full context window size for the latest API call.
41
+ * This **replaces** the prior value (it is the total, not a delta), because
42
+ * it represents the whole input window the next call will carry.
43
+ * @param outputTokens - Output tokens for this step; **accumulated** across steps.
28
44
  */
29
45
  update(inputTokens: number, outputTokens: number): void;
30
46
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"TokenBudgetTracker.d.ts","sourceRoot":"","sources":["../../src/ai/TokenBudgetTracker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,qBAAa,kBAAkB;IAMjB,OAAO,CAAC,MAAM;IAL1B,mEAAmE;IACnE,OAAO,CAAC,oBAAoB,CAAK;IACjC,gDAAgD;IAChD,OAAO,CAAC,gBAAgB,CAAK;gBAET,MAAM,EAAE,MAAM;IAElC;;;;;OAKG;IACH,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IAKvD;;;;;OAKG;IACH,SAAS,IAAI;QACX,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;KACrB;IAeD;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;CAG5C"}
1
+ {"version":3,"file":"TokenBudgetTracker.d.ts","sourceRoot":"","sources":["../../src/ai/TokenBudgetTracker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,qBAAa,kBAAkB;IAQjB,OAAO,CAAC,MAAM;IAP1B,mEAAmE;IACnE,OAAO,CAAC,oBAAoB,CAAK;IACjC,gDAAgD;IAChD,OAAO,CAAC,gBAAgB,CAAK;IAC7B,qEAAqE;IACrE,OAAO,CAAC,gBAAgB,CAAS;gBAEb,MAAM,EAAE,MAAM;IAElC;;;;;;;;OAQG;IACH,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAIxC,mEAAmE;IACnE,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IAKvD;;;;;OAKG;IACH,SAAS,IAAI;QACX,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;KACrB;IAeD;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;CAG5C"}
@@ -19,14 +19,34 @@ export class TokenBudgetTracker {
19
19
  currentContextTokens = 0;
20
20
  /** Cumulative output tokens across all steps */
21
21
  cumulativeOutput = 0;
22
+ /** Whether the context-budget wrap-up latch is currently engaged. */
23
+ forcedWrapUpFlag = false;
22
24
  constructor(budget) {
23
25
  this.budget = budget;
24
26
  }
27
+ /**
28
+ * Record the final state of the budget wrap-up latch. Set when the latch
29
+ * engages (≥80% of budget) and cleared when it releases (<70%, hysteresis),
30
+ * so the value reflects whether the run *ended* in forced wrap-up — a run
31
+ * that latched then recovered is not left flagged. Read by AgentExecutor to
32
+ * emit a `budget.forced-wrap-up` degradation marker.
33
+ *
34
+ * @param engaged - `true` if the wrap-up latch is currently engaged, `false` if released.
35
+ */
36
+ markForcedWrapUp(engaged) {
37
+ this.forcedWrapUpFlag = engaged;
38
+ }
39
+ /** Whether the wrap-up latch was engaged at the end of the run. */
40
+ get forcedWrapUp() {
41
+ return this.forcedWrapUpFlag;
42
+ }
25
43
  /**
26
44
  * Record token usage from a completed step.
27
45
  *
28
- * `inputTokens` is the full context window size for the latest API call
29
- * (replaces previous value). `outputTokens` is incremental (accumulated).
46
+ * @param inputTokens - Full context window size for the latest API call.
47
+ * This **replaces** the prior value (it is the total, not a delta), because
48
+ * it represents the whole input window the next call will carry.
49
+ * @param outputTokens - Output tokens for this step; **accumulated** across steps.
30
50
  */
31
51
  update(inputTokens, outputTokens) {
32
52
  this.currentContextTokens = inputTokens;
@@ -1 +1 @@
1
- {"version":3,"file":"TokenBudgetTracker.js","sourceRoot":"","sources":["../../src/ai/TokenBudgetTracker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAO,kBAAkB;IAMT;IALpB,mEAAmE;IAC3D,oBAAoB,GAAG,CAAC,CAAC;IACjC,gDAAgD;IACxC,gBAAgB,GAAG,CAAC,CAAC;IAE7B,YAAoB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAEtC;;;;;OAKG;IACH,MAAM,CAAC,WAAmB,EAAE,YAAoB;QAC9C,IAAI,CAAC,oBAAoB,GAAG,WAAW,CAAC;QACxC,IAAI,CAAC,gBAAgB,IAAI,YAAY,CAAC;IACxC,CAAC;IAED;;;;;OAKG;IACH,SAAS;QAQP,MAAM,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC;QAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;QACvD,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEtF,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,IAAI,CAAC,oBAAoB;YACpC,UAAU,EAAE,IAAI,CAAC,gBAAgB;YACjC,SAAS;YACT,SAAS;YACT,WAAW;SACZ,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,SAAiB;QAC/B,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IACjF,CAAC;CACF"}
1
+ {"version":3,"file":"TokenBudgetTracker.js","sourceRoot":"","sources":["../../src/ai/TokenBudgetTracker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAO,kBAAkB;IAQT;IAPpB,mEAAmE;IAC3D,oBAAoB,GAAG,CAAC,CAAC;IACjC,gDAAgD;IACxC,gBAAgB,GAAG,CAAC,CAAC;IAC7B,qEAAqE;IAC7D,gBAAgB,GAAG,KAAK,CAAC;IAEjC,YAAoB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAEtC;;;;;;;;OAQG;IACH,gBAAgB,CAAC,OAAgB;QAC/B,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;IAClC,CAAC;IAED,mEAAmE;IACnE,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,WAAmB,EAAE,YAAoB;QAC9C,IAAI,CAAC,oBAAoB,GAAG,WAAW,CAAC;QACxC,IAAI,CAAC,gBAAgB,IAAI,YAAY,CAAC;IACxC,CAAC;IAED;;;;;OAKG;IACH,SAAS;QAQP,MAAM,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC;QAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;QACvD,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEtF,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,IAAI,CAAC,oBAAoB;YACpC,UAAU,EAAE,IAAI,CAAC,gBAAgB;YACjC,SAAS;YACT,SAAS;YACT,WAAW;SACZ,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,SAAiB;QAC/B,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IACjF,CAAC;CACF"}