@zhixuan92/multi-model-agent-core 3.10.7 → 3.11.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.
- package/README.md +3 -3
- package/dist/config/schema.d.ts +15 -0
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +17 -2
- package/dist/config/schema.js.map +1 -1
- package/dist/diagnostics/types.d.ts +11 -0
- package/dist/diagnostics/types.d.ts.map +1 -1
- package/dist/escalation/fallback.d.ts +14 -0
- package/dist/escalation/fallback.d.ts.map +1 -1
- package/dist/escalation/fallback.js +254 -19
- package/dist/escalation/fallback.js.map +1 -1
- package/dist/executors/audit.d.ts.map +1 -1
- package/dist/executors/audit.js +6 -4
- package/dist/executors/audit.js.map +1 -1
- package/dist/executors/debug.d.ts.map +1 -1
- package/dist/executors/debug.js +5 -3
- package/dist/executors/debug.js.map +1 -1
- package/dist/executors/delegate.d.ts +12 -0
- package/dist/executors/delegate.d.ts.map +1 -1
- package/dist/executors/delegate.js +45 -11
- package/dist/executors/delegate.js.map +1 -1
- package/dist/executors/execute-plan.d.ts.map +1 -1
- package/dist/executors/execute-plan.js +6 -4
- package/dist/executors/execute-plan.js.map +1 -1
- package/dist/executors/retry.js +1 -1
- package/dist/executors/retry.js.map +1 -1
- package/dist/executors/review.js +1 -1
- package/dist/executors/review.js.map +1 -1
- package/dist/executors/shared-compute.js +4 -4
- package/dist/executors/shared-compute.js.map +1 -1
- package/dist/executors/types.d.ts +1 -1
- package/dist/executors/types.d.ts.map +1 -1
- package/dist/executors/verify.js +2 -2
- package/dist/executors/verify.js.map +1 -1
- package/dist/heartbeat.d.ts +5 -5
- package/dist/heartbeat.d.ts.map +1 -1
- package/dist/heartbeat.js +21 -17
- package/dist/heartbeat.js.map +1 -1
- package/dist/index.d.ts +4 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -3
- package/dist/index.js.map +1 -1
- package/dist/intake/compilers/audit.d.ts.map +1 -1
- package/dist/intake/compilers/audit.js +5 -2
- package/dist/intake/compilers/audit.js.map +1 -1
- package/dist/intake/compilers/debug.d.ts.map +1 -1
- package/dist/intake/compilers/debug.js +4 -0
- package/dist/intake/compilers/debug.js.map +1 -1
- package/dist/intake/compilers/delegate.d.ts +3 -0
- package/dist/intake/compilers/delegate.d.ts.map +1 -1
- package/dist/intake/compilers/delegate.js +5 -1
- package/dist/intake/compilers/delegate.js.map +1 -1
- package/dist/intake/compilers/execute-plan.d.ts.map +1 -1
- package/dist/intake/compilers/execute-plan.js +5 -0
- package/dist/intake/compilers/execute-plan.js.map +1 -1
- package/dist/intake/compilers/review.d.ts.map +1 -1
- package/dist/intake/compilers/review.js +3 -0
- package/dist/intake/compilers/review.js.map +1 -1
- package/dist/intake/compilers/verify.d.ts.map +1 -1
- package/dist/intake/compilers/verify.js +7 -0
- package/dist/intake/compilers/verify.js.map +1 -1
- package/dist/intake/force-clarification.d.ts +5 -0
- package/dist/intake/force-clarification.d.ts.map +1 -0
- package/dist/intake/force-clarification.js +44 -0
- package/dist/intake/force-clarification.js.map +1 -0
- package/dist/intake/pipeline.d.ts +1 -1
- package/dist/intake/pipeline.d.ts.map +1 -1
- package/dist/intake/pipeline.js +32 -1
- package/dist/intake/pipeline.js.map +1 -1
- package/dist/intake/resolve.d.ts.map +1 -1
- package/dist/intake/resolve.js +0 -1
- package/dist/intake/resolve.js.map +1 -1
- package/dist/observability/bus.d.ts.map +1 -1
- package/dist/observability/bus.js +20 -0
- package/dist/observability/bus.js.map +1 -1
- package/dist/observability/events.d.ts +81 -4
- package/dist/observability/events.d.ts.map +1 -1
- package/dist/observability/events.js +77 -2
- package/dist/observability/events.js.map +1 -1
- package/dist/provider.d.ts +1 -0
- package/dist/provider.d.ts.map +1 -1
- package/dist/provider.js +8 -1
- package/dist/provider.js.map +1 -1
- package/dist/review/diff-review.d.ts +1 -0
- package/dist/review/diff-review.d.ts.map +1 -1
- package/dist/review/diff-review.js +1 -0
- package/dist/review/diff-review.js.map +1 -1
- package/dist/review/quality-reviewer.d.ts +1 -1
- package/dist/review/quality-reviewer.d.ts.map +1 -1
- package/dist/review/quality-reviewer.js +6 -6
- package/dist/review/quality-reviewer.js.map +1 -1
- package/dist/review/spec-reviewer.d.ts +1 -1
- package/dist/review/spec-reviewer.d.ts.map +1 -1
- package/dist/review/spec-reviewer.js +3 -1
- package/dist/review/spec-reviewer.js.map +1 -1
- package/dist/routing/canonical-model-identity.d.ts +9 -0
- package/dist/routing/canonical-model-identity.d.ts.map +1 -0
- package/dist/routing/canonical-model-identity.js +54 -0
- package/dist/routing/canonical-model-identity.js.map +1 -0
- package/dist/run-tasks/execute-task.js +1 -1
- package/dist/run-tasks/execute-task.js.map +1 -1
- package/dist/run-tasks/index.js +1 -1
- package/dist/run-tasks/index.js.map +1 -1
- package/dist/run-tasks/reviewed-lifecycle.d.ts.map +1 -1
- package/dist/run-tasks/reviewed-lifecycle.js +145 -31
- package/dist/run-tasks/reviewed-lifecycle.js.map +1 -1
- package/dist/runners/base/result-builders.d.ts +13 -2
- package/dist/runners/base/result-builders.d.ts.map +1 -1
- package/dist/runners/base/result-builders.js +25 -1
- package/dist/runners/base/result-builders.js.map +1 -1
- package/dist/runners/base/time-check.d.ts +9 -0
- package/dist/runners/base/time-check.d.ts.map +1 -0
- package/dist/runners/base/time-check.js +18 -0
- package/dist/runners/base/time-check.js.map +1 -0
- package/dist/runners/base/usage-accumulator.d.ts +9 -0
- package/dist/runners/base/usage-accumulator.d.ts.map +1 -0
- package/dist/runners/base/usage-accumulator.js +19 -0
- package/dist/runners/base/usage-accumulator.js.map +1 -0
- package/dist/runners/claude-runner.d.ts.map +1 -1
- package/dist/runners/claude-runner.js +129 -175
- package/dist/runners/claude-runner.js.map +1 -1
- package/dist/runners/codex-runner.d.ts.map +1 -1
- package/dist/runners/codex-runner.js +96 -128
- package/dist/runners/codex-runner.js.map +1 -1
- package/dist/runners/error-classification.d.ts +11 -0
- package/dist/runners/error-classification.d.ts.map +1 -1
- package/dist/runners/error-classification.js +51 -0
- package/dist/runners/error-classification.js.map +1 -1
- package/dist/runners/openai-runner.d.ts.map +1 -1
- package/dist/runners/openai-runner.js +80 -171
- package/dist/runners/openai-runner.js.map +1 -1
- package/dist/runners/supervision.d.ts +0 -49
- package/dist/runners/supervision.d.ts.map +1 -1
- package/dist/runners/supervision.js +0 -67
- package/dist/runners/supervision.js.map +1 -1
- package/dist/runners/types.d.ts +12 -5
- package/dist/runners/types.d.ts.map +1 -1
- package/dist/telemetry/concern-classifier.d.ts +1 -1
- package/dist/telemetry/concern-classifier.d.ts.map +1 -1
- package/dist/telemetry/concern-classifier.js +5 -0
- package/dist/telemetry/concern-classifier.js.map +1 -1
- package/dist/telemetry/event-builder.d.ts.map +1 -1
- package/dist/telemetry/event-builder.js +5 -5
- package/dist/telemetry/event-builder.js.map +1 -1
- package/dist/telemetry/field-coverage.js +2 -2
- package/dist/telemetry/field-coverage.js.map +1 -1
- package/dist/telemetry/types.d.ts +139 -91
- package/dist/telemetry/types.d.ts.map +1 -1
- package/dist/telemetry/types.js +23 -17
- package/dist/telemetry/types.js.map +1 -1
- package/dist/types.d.ts +2 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +5 -2
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -28,11 +28,11 @@ const results = await runTasks([
|
|
|
28
28
|
], config);
|
|
29
29
|
|
|
30
30
|
for (const r of results) {
|
|
31
|
-
console.log(r.status, r.usage.costUSD, r.
|
|
31
|
+
console.log(r.status, r.usage.costUSD, r.usage.costDeltaVsParentUSD, r.output);
|
|
32
32
|
}
|
|
33
33
|
```
|
|
34
34
|
|
|
35
|
-
`
|
|
35
|
+
`costDeltaVsParentUSD` is populated when `defaults.parentModel` is set in the config — it's `actualCost − parentCost` (negative = worker cheaper/savings). Use it to surface a `$X saved (Y× ROI)` figure in your own UI.
|
|
36
36
|
|
|
37
37
|
## What's inside
|
|
38
38
|
|
|
@@ -104,7 +104,7 @@ As of 3.4.0 every task-execution event the worker emits to the verbose stderr st
|
|
|
104
104
|
|
|
105
105
|
## What's new
|
|
106
106
|
|
|
107
|
-
Latest: **3.
|
|
107
|
+
Latest: **3.11.0** — Core runtime correctness pass: reviewer cwd plumbed through all runners; new `forbiddenIdentities` parameter on `runWithFallback` for R3-respecting reviewer separation via canonical model identity tuples; `force_salvage` watchdog and 80% warning-nudge removed across all runners (input-token-volume aborts gone); new `time_ceiling` abort path mirrors `cost_ceiling` (both at 0.80 × budget); `executeDelegate` synthesizes `proposedInterpretation` when intake produces clarifications; per-route prompt scope contracts in compilers; canonical `CanonicalUsage` shape for cached / reasoning tokens; new `canonical-model-identity` module with URL normalization and credential-stripping. Breaking telemetry: `savedCostUSD` → `costDeltaVsParentUSD` (formula flipped), dead `style` / `findingsFlagged` / `severityCorrections` fields removed, watchdog event types removed. Full history: [CHANGELOG](https://github.com/zhixuan312/multi-model-agent/blob/master/CHANGELOG.md).
|
|
108
108
|
|
|
109
109
|
## Full documentation
|
|
110
110
|
|
package/dist/config/schema.d.ts
CHANGED
|
@@ -12,6 +12,21 @@ export declare const DEFAULT_TASK_TIMEOUT_MS = 3600000;
|
|
|
12
12
|
* Bumped from 10 min in v3.9.0 — the prior value occasionally fired on
|
|
13
13
|
* legitimately slow reviewers (deepseek-v4-pro, large diffs). */
|
|
14
14
|
export declare const DEFAULT_STALL_TIMEOUT_MS = 1200000;
|
|
15
|
+
/** Per-task cost cap in USD. Negative is rejected; zero allows free-agent
|
|
16
|
+
* runs (both input/output price rates set to 0). */
|
|
17
|
+
export declare const DEFAULT_MAX_COST_USD = 10;
|
|
18
|
+
/** Pre-stop threshold ratio for cost — the runtime warns and may refuse
|
|
19
|
+
* new turns when cost reaches DEFAULT_MAX_COST_USD × this ratio ($8).
|
|
20
|
+
* A turn already in flight is allowed to complete, so the worst-case
|
|
21
|
+
* total is DEFAULT_MAX_COST_USD / MAX_COST_PRESTOP_RATIO ($12.50).
|
|
22
|
+
* This is NOT an 80%-overshoot allowance; it is an 80%-of-cap pre-stop.
|
|
23
|
+
* See §3.8 for the rationale. */
|
|
24
|
+
export declare const MAX_COST_PRESTOP_RATIO = 0.8;
|
|
25
|
+
/** Clock counterpart of MAX_COST_PRESTOP_RATIO — same pre-stop semantics
|
|
26
|
+
* applied to wall-clock time: the runtime warns at
|
|
27
|
+
* DEFAULT_TASK_TIMEOUT_MS × this ratio (48 min), with a worst-case
|
|
28
|
+
* total of DEFAULT_TASK_TIMEOUT_MS / MAX_TIME_PRESTOP_RATIO (1.25 h). */
|
|
29
|
+
export declare const MAX_TIME_PRESTOP_RATIO = 0.8;
|
|
15
30
|
/** Raw (possibly compressed) request body cap — 256 KiB. */
|
|
16
31
|
export declare const COMPRESSED_BODY_LIMIT_BYTES: number;
|
|
17
32
|
export declare const serverConfigSchema: z.ZodObject<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EACV,gBAAgB,EACjB,MAAM,aAAa,CAAC;AAErB;;;;;0BAK0B;AAC1B,eAAO,MAAM,uBAAuB,UAAY,CAAC;AAEjD;;;iEAGiE;AACjE,eAAO,MAAM,wBAAwB,UAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EACV,gBAAgB,EACjB,MAAM,aAAa,CAAC;AAErB;;;;;0BAK0B;AAC1B,eAAO,MAAM,uBAAuB,UAAY,CAAC;AAEjD;;;iEAGiE;AACjE,eAAO,MAAM,wBAAwB,UAAY,CAAC;AAElD;oDACoD;AACpD,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAEvC;;;;;iCAKiC;AACjC,eAAO,MAAM,sBAAsB,MAAO,CAAC;AAE3C;;;yEAGyE;AACzE,eAAO,MAAM,sBAAsB,MAAO,CAAC;AA2F3C,4DAA4D;AAC5D,eAAO,MAAM,2BAA2B,QAAa,CAAC;AAsCtD,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;kBAUpB,CAAC;AAEZ,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA0BxB,CAAC;AAEZ,mEAAmE;AACnE,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,gBAAgB,CAAA;IACxB,OAAO,EAAE,IAAI,CAAA;CACd;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,KAAK,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,MAAM,iBAAiB,GAAG,mBAAmB,GAAG,mBAAmB,CAAA;AAEzE;;;GAGG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAE1D"}
|
package/dist/config/schema.js
CHANGED
|
@@ -11,6 +11,21 @@ export const DEFAULT_TASK_TIMEOUT_MS = 3_600_000;
|
|
|
11
11
|
* Bumped from 10 min in v3.9.0 — the prior value occasionally fired on
|
|
12
12
|
* legitimately slow reviewers (deepseek-v4-pro, large diffs). */
|
|
13
13
|
export const DEFAULT_STALL_TIMEOUT_MS = 1_200_000;
|
|
14
|
+
/** Per-task cost cap in USD. Negative is rejected; zero allows free-agent
|
|
15
|
+
* runs (both input/output price rates set to 0). */
|
|
16
|
+
export const DEFAULT_MAX_COST_USD = 10;
|
|
17
|
+
/** Pre-stop threshold ratio for cost — the runtime warns and may refuse
|
|
18
|
+
* new turns when cost reaches DEFAULT_MAX_COST_USD × this ratio ($8).
|
|
19
|
+
* A turn already in flight is allowed to complete, so the worst-case
|
|
20
|
+
* total is DEFAULT_MAX_COST_USD / MAX_COST_PRESTOP_RATIO ($12.50).
|
|
21
|
+
* This is NOT an 80%-overshoot allowance; it is an 80%-of-cap pre-stop.
|
|
22
|
+
* See §3.8 for the rationale. */
|
|
23
|
+
export const MAX_COST_PRESTOP_RATIO = 0.80;
|
|
24
|
+
/** Clock counterpart of MAX_COST_PRESTOP_RATIO — same pre-stop semantics
|
|
25
|
+
* applied to wall-clock time: the runtime warns at
|
|
26
|
+
* DEFAULT_TASK_TIMEOUT_MS × this ratio (48 min), with a worst-case
|
|
27
|
+
* total of DEFAULT_TASK_TIMEOUT_MS / MAX_TIME_PRESTOP_RATIO (1.25 h). */
|
|
28
|
+
export const MAX_TIME_PRESTOP_RATIO = 0.80;
|
|
14
29
|
// === Shared field schemas ===
|
|
15
30
|
const effortSchema = z.enum(['none', 'low', 'medium', 'high']);
|
|
16
31
|
const hostedToolsSchema = z.array(z.enum(['web_search', 'image_generation', 'code_interpreter']));
|
|
@@ -71,7 +86,7 @@ const agentConfigSchema = z.discriminatedUnion('type', [
|
|
|
71
86
|
const defaultsSchema = z.object({
|
|
72
87
|
timeoutMs: z.number().int().positive().default(DEFAULT_TASK_TIMEOUT_MS),
|
|
73
88
|
stallTimeoutMs: z.number().int().positive().default(DEFAULT_STALL_TIMEOUT_MS),
|
|
74
|
-
maxCostUSD: z.number().nonnegative().default(
|
|
89
|
+
maxCostUSD: z.number().nonnegative().default(DEFAULT_MAX_COST_USD),
|
|
75
90
|
tools: z.enum(['none', 'readonly', 'no-shell', 'full']).default('full'),
|
|
76
91
|
sandboxPolicy: z.enum(['none', 'cwd-only']).default('cwd-only'),
|
|
77
92
|
largeResponseThresholdChars: z.number().int().positive().optional(),
|
|
@@ -79,7 +94,7 @@ const defaultsSchema = z.object({
|
|
|
79
94
|
}).default(() => ({
|
|
80
95
|
timeoutMs: DEFAULT_TASK_TIMEOUT_MS,
|
|
81
96
|
stallTimeoutMs: DEFAULT_STALL_TIMEOUT_MS,
|
|
82
|
-
maxCostUSD:
|
|
97
|
+
maxCostUSD: DEFAULT_MAX_COST_USD,
|
|
83
98
|
tools: 'full',
|
|
84
99
|
sandboxPolicy: 'cwd-only',
|
|
85
100
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB;;;;;0BAK0B;AAC1B,MAAM,CAAC,MAAM,uBAAuB,GAAG,SAAS,CAAC;AAEjD;;;iEAGiE;AACjE,MAAM,CAAC,MAAM,wBAAwB,GAAG,SAAS,CAAC;AAElD,+BAA+B;AAE/B,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;AAC/D,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;AAClG,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;AAC1E,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;AACpE,6EAA6E;AAC7E,yEAAyE;AACzE,+BAA+B;AAC/B,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;AAErE,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;AAEnF,MAAM,eAAe,GAAG;IACtB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,YAAY,EAAE,kBAAkB;IAChC,MAAM,EAAE,YAAY,CAAC,QAAQ,EAAE;IAC/B,gBAAgB,EAAE,eAAe;IACjC,iBAAiB,EAAE,eAAe;IAClC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACjD,aAAa,EAAE,mBAAmB;IAClC,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC5D,CAAC;AAEF,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC;IACpC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,kDAAkD,CAAC;IAC9E,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,WAAW,EAAE,iCAAiC,CAAC,QAAQ,EAAE;IACzD,GAAG,eAAe;CACnB,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;IACzB,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE;IACzC,GAAG,eAAe;CACnB,CAAC,CAAC,MAAM,EAAE,CAAC;AAEZ,6EAA6E;AAC7E,0EAA0E;AAC1E,2EAA2E;AAC3E,yCAAyC;AACzC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC;IACpC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,kDAAkD,CAAC;IAC9E,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE;IACzC,GAAG,eAAe;CACnB,CAAC,CAAC,MAAM,EAAE,CAAC;AAEZ,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IACxB,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE;IACzC,GAAG,eAAe;CACnB,CAAC,CAAC,MAAM,EAAE,CAAC;AAEZ,MAAM,iBAAiB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IACrD,2BAA2B;IAC3B,iBAAiB;IACjB,2BAA2B;IAC3B,gBAAgB;CACjB,CAAC,CAAC;AAEH,kCAAkC;AAElC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC;IACvE,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC;IAC7E,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,6 +41,17 @@ export interface FallbackEventParams {
|
|
|
41
41
|
reason: DiagReason;
|
|
42
42
|
triggeringStatus?: RunStatus;
|
|
43
43
|
violatesSeparation: boolean;
|
|
44
|
+
fallbackSeparationRespected?: boolean;
|
|
45
|
+
assignedIdentity?: {
|
|
46
|
+
providerType: string;
|
|
47
|
+
normalizedEndpoint: string;
|
|
48
|
+
modelId: string;
|
|
49
|
+
} | null;
|
|
50
|
+
usedIdentity?: {
|
|
51
|
+
providerType: string;
|
|
52
|
+
normalizedEndpoint: string;
|
|
53
|
+
modelId: string;
|
|
54
|
+
} | null;
|
|
44
55
|
}
|
|
45
56
|
export interface FallbackUnavailableEventParams {
|
|
46
57
|
batchId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/diagnostics/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,MAAM,aAAa,GACrB,WAAW,GACX,cAAc,GACd,oBAAoB,GACpB,mBAAmB,GACnB,oBAAoB,GACpB,SAAS,GACT,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,SAAS,GACT,kBAAkB,GAClB,uBAAuB,CAAC;AAE5B,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,kBAAkB,CAAC;AAElI,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAC9D,MAAM,WAAW,SAAS;IAAG,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAAC;CAAE;AAE5H,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;AACnD,MAAM,MAAM,QAAQ,GAAG,aAAa,GAAG,cAAc,GAAG,iBAAiB,GAAG,cAAc,CAAC;AAC3F,MAAM,MAAM,UAAU,GAAG,mBAAmB,GAAG,gBAAgB,CAAC;AAEhE,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;IACpB,YAAY,EAAE,SAAS,CAAC;CACzB;AAED,MAAM,WAAW,gCAAgC;IAC/C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,QAAQ,CAAC;IACf,UAAU,EAAE,SAAS,CAAC;IACtB,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,QAAQ,CAAC;IACf,YAAY,EAAE,SAAS,CAAC;IACxB,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B,kBAAkB,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/diagnostics/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,MAAM,aAAa,GACrB,WAAW,GACX,cAAc,GACd,oBAAoB,GACpB,mBAAmB,GACnB,oBAAoB,GACpB,SAAS,GACT,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,SAAS,GACT,kBAAkB,GAClB,uBAAuB,CAAC;AAE5B,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,kBAAkB,CAAC;AAElI,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAC9D,MAAM,WAAW,SAAS;IAAG,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAAC;CAAE;AAE5H,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;AACnD,MAAM,MAAM,QAAQ,GAAG,aAAa,GAAG,cAAc,GAAG,iBAAiB,GAAG,cAAc,CAAC;AAC3F,MAAM,MAAM,UAAU,GAAG,mBAAmB,GAAG,gBAAgB,CAAC;AAEhE,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;IACpB,YAAY,EAAE,SAAS,CAAC;CACzB;AAED,MAAM,WAAW,gCAAgC;IAC/C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,QAAQ,CAAC;IACf,UAAU,EAAE,SAAS,CAAC;IACtB,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,QAAQ,CAAC;IACf,YAAY,EAAE,SAAS,CAAC;IACxB,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,gBAAgB,CAAC,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAChG,YAAY,CAAC,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CAC7F;AAED,MAAM,WAAW,8BAA8B;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,QAAQ,CAAC;IACf,YAAY,EAAE,SAAS,CAAC;IACxB,MAAM,EAAE,UAAU,CAAC;CACpB"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Provider, AgentType, RunResult } from '../types.js';
|
|
2
2
|
import type { RunStatus } from '../runners/types.js';
|
|
3
|
+
import { type CanonicalIdentity } from '../routing/canonical-model-identity.js';
|
|
3
4
|
export declare const TRANSPORT_FAILURES: ReadonlySet<RunStatus>;
|
|
4
5
|
export type FallbackReason = 'transport_failure' | 'not_configured';
|
|
5
6
|
export type UnavailableMap = Map<AgentType, FallbackReason>;
|
|
@@ -22,6 +23,12 @@ export interface RunWithFallbackInput<T> {
|
|
|
22
23
|
getStatus?: (result: T) => RunStatus | undefined;
|
|
23
24
|
makeSyntheticFailure: (assigned: AgentType) => T;
|
|
24
25
|
call: (provider: Provider) => Promise<T>;
|
|
26
|
+
/** Canonical identities to exclude from candidate selection. When a candidate
|
|
27
|
+
* provider's resolved identity matches one in this set, the candidate is skipped
|
|
28
|
+
* as a separation violation. If identity resolution throws on a successfully-constructed
|
|
29
|
+
* provider, the candidate is also skipped (fail-closed). Provider construction
|
|
30
|
+
* failures (providerFor throws/returns undefined) follow the existing unavailable path. */
|
|
31
|
+
forbiddenIdentities?: CanonicalIdentity[];
|
|
25
32
|
}
|
|
26
33
|
export interface RunWithFallbackResult<T> {
|
|
27
34
|
result: T;
|
|
@@ -47,6 +54,13 @@ export interface RunWithFallbackResult<T> {
|
|
|
47
54
|
* fallbackReason set without calling assigned. Distinct from `fallbackReason` so callers
|
|
48
55
|
* can tell "we substituted at the start" vs "we substituted because the assigned call failed". */
|
|
49
56
|
assignedUnavailableReason?: FallbackReason;
|
|
57
|
+
/** True iff the final used tier differs in canonical identity from all forbiddenIdentities.
|
|
58
|
+
* Set only when forbiddenIdentities was provided. */
|
|
59
|
+
fallbackSeparationRespected?: boolean;
|
|
60
|
+
/** Canonical identity of the assigned tier's provider (resolved at selection time). */
|
|
61
|
+
assignedIdentity?: CanonicalIdentity;
|
|
62
|
+
/** Canonical identity of the actually-used tier's provider. */
|
|
63
|
+
usedIdentity?: CanonicalIdentity;
|
|
50
64
|
}
|
|
51
65
|
export declare function runWithFallback<T>(input: RunWithFallbackInput<T>): Promise<RunWithFallbackResult<T>>;
|
|
52
66
|
/** Lifecycle helper: builds the synthetic RunResult expected when both tiers are
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fallback.d.ts","sourceRoot":"","sources":["../../src/escalation/fallback.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"fallback.d.ts","sourceRoot":"","sources":["../../src/escalation/fallback.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAqC,KAAK,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAEnH,eAAO,MAAM,kBAAkB,EAAE,WAAW,CAAC,SAAS,CAIpD,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,mBAAmB,GAAG,gBAAgB,CAAC;AACpE,MAAM,MAAM,cAAc,GAAG,GAAG,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;AAE5D,8DAA8D;AAC9D,wBAAgB,eAAe,CAC7B,GAAG,EAAE,cAAc,EACnB,IAAI,EAAE,SAAS,EACf,MAAM,EAAE,cAAc,GACrB,IAAI,CAEN;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,SAAS,GAAG,SAAS,CAEjD;AAED;;;;yEAIyE;AACzE,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO,CAEpE;AAED,MAAM,WAAW,oBAAoB,CAAC,CAAC;IACrC,QAAQ,EAAE,SAAS,CAAC;IACpB,WAAW,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,QAAQ,GAAG,SAAS,CAAC;IACvD,gBAAgB,EAAE,cAAc,CAAC;IACjC,kBAAkB,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,OAAO,CAAC;IAC3C;0FACsF;IACtF,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,SAAS,GAAG,SAAS,CAAC;IACjD,oBAAoB,EAAE,CAAC,QAAQ,EAAE,SAAS,KAAK,CAAC,CAAC;IACjD,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IACzC;;;;gGAI4F;IAC5F,mBAAmB,CAAC,EAAE,iBAAiB,EAAE,CAAC;CAC3C;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC;IACtC,MAAM,EAAE,CAAC,CAAC;IACV,QAAQ,EAAE,SAAS,GAAG,MAAM,CAAC;IAE7B;;;4EAGwE;IACxE,aAAa,EAAE,OAAO,CAAC;IACvB,sGAAsG;IACtG,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC;2EACuE;IACvE,wBAAwB,CAAC,EAAE,SAAS,CAAC;IAErC,8DAA8D;IAC9D,eAAe,EAAE,OAAO,CAAC;IACzB,yFAAyF;IACzF,iBAAiB,CAAC,EAAE,cAAc,CAAC;IACnC;wFACoF;IACpF,2BAA2B,CAAC,EAAE,SAAS,CAAC;IAExC;;uGAEmG;IACnG,yBAAyB,CAAC,EAAE,cAAc,CAAC;IAE3C;0DACsD;IACtD,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,uFAAuF;IACvF,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IACrC,+DAA+D;IAC/D,YAAY,CAAC,EAAE,iBAAiB,CAAC;CAClC;AAED,wBAAsB,eAAe,CAAC,CAAC,EACrC,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAC7B,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAuVnC;AAED;;;;;;;;oBAQoB;AACpB,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,CAexF;AAED,wBAAgB,wBAAwB,CACtC,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GACrB,OAAO,CAET"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { canonicalIdentity, identityEquals } from '../routing/canonical-model-identity.js';
|
|
1
2
|
export const TRANSPORT_FAILURES = new Set([
|
|
2
3
|
'api_error',
|
|
3
4
|
'network_error',
|
|
@@ -22,34 +23,134 @@ export function providersIdentical(a, b) {
|
|
|
22
23
|
export async function runWithFallback(input) {
|
|
23
24
|
const { assigned, providerFor, unavailableTiers, isTransportFailure, makeSyntheticFailure, call } = input;
|
|
24
25
|
const getStatus = input.getStatus ?? (() => undefined);
|
|
26
|
+
const forbidden = input.forbiddenIdentities ?? [];
|
|
27
|
+
// ── Helpers for identity separation ──
|
|
28
|
+
// Returns { skip: true } when the tier should be skipped due to separation.
|
|
29
|
+
// - providerFor throws → { skip: false } (construction failure, NOT separation)
|
|
30
|
+
// - providerFor returns undefined → { skip: false } (unavailable, NOT separation)
|
|
31
|
+
// - canonicalIdentity throws → { skip: true } (fail-closed: provider exists but identity unresolvable)
|
|
32
|
+
// - identity matches forbiddenIdentities → { skip: true }
|
|
33
|
+
// - identity differs → { skip: false, identity }
|
|
34
|
+
const checkSeparation = (tier) => {
|
|
35
|
+
if (forbidden.length === 0)
|
|
36
|
+
return { skip: false };
|
|
37
|
+
let p;
|
|
38
|
+
try {
|
|
39
|
+
p = providerFor(tier);
|
|
40
|
+
}
|
|
41
|
+
catch {
|
|
42
|
+
return { skip: false };
|
|
43
|
+
}
|
|
44
|
+
if (!p)
|
|
45
|
+
return { skip: false };
|
|
46
|
+
try {
|
|
47
|
+
const id = canonicalIdentity(p.config);
|
|
48
|
+
if (forbidden.some(f => identityEquals(f, id)))
|
|
49
|
+
return { skip: true, identity: id };
|
|
50
|
+
return { skip: false, identity: id };
|
|
51
|
+
}
|
|
52
|
+
catch {
|
|
53
|
+
// Identity unresolvable on a successfully-constructed provider: fail closed.
|
|
54
|
+
return { skip: true };
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
const resolveProviderIdentity = (tier) => {
|
|
58
|
+
let p;
|
|
59
|
+
try {
|
|
60
|
+
p = providerFor(tier);
|
|
61
|
+
}
|
|
62
|
+
catch {
|
|
63
|
+
return null;
|
|
64
|
+
}
|
|
65
|
+
if (!p)
|
|
66
|
+
return null;
|
|
67
|
+
try {
|
|
68
|
+
return canonicalIdentity(p.config);
|
|
69
|
+
}
|
|
70
|
+
catch {
|
|
71
|
+
return null;
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
// ── Resolve assigned identity (before any availability checks) ──
|
|
75
|
+
const assignedIdentity = resolveProviderIdentity(assigned) ?? undefined;
|
|
25
76
|
// ── Step 1: resolve assigned tier (sticky check first, then not-configured) ──
|
|
26
77
|
let usedTier = assigned;
|
|
27
78
|
let fallbackFired = false;
|
|
28
79
|
let fallbackReason;
|
|
29
80
|
let assignedUnavailableReason;
|
|
81
|
+
let skippedDueToSeparation = false;
|
|
82
|
+
let usedIdentity = assignedIdentity;
|
|
30
83
|
if (unavailableTiers.has(assigned)) {
|
|
31
84
|
assignedUnavailableReason = unavailableTiers.get(assigned);
|
|
32
85
|
fallbackReason = assignedUnavailableReason;
|
|
33
86
|
}
|
|
34
|
-
else
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
87
|
+
else {
|
|
88
|
+
let assignedProvider;
|
|
89
|
+
try {
|
|
90
|
+
assignedProvider = providerFor(assigned);
|
|
91
|
+
}
|
|
92
|
+
catch { /* construction failure → treat as unavailable below */ }
|
|
93
|
+
if (assignedProvider === undefined) {
|
|
94
|
+
markUnavailable(unavailableTiers, assigned, 'not_configured');
|
|
95
|
+
assignedUnavailableReason = 'not_configured';
|
|
96
|
+
fallbackReason = 'not_configured';
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
const sep = checkSeparation(assigned);
|
|
100
|
+
if (sep.skip) {
|
|
101
|
+
skippedDueToSeparation = true;
|
|
102
|
+
fallbackReason = 'not_configured';
|
|
103
|
+
}
|
|
104
|
+
else if (sep.identity) {
|
|
105
|
+
usedIdentity = sep.identity;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
38
108
|
}
|
|
39
109
|
if (fallbackReason !== undefined) {
|
|
40
|
-
// Assigned is unavailable up-front. Try the alt tier.
|
|
110
|
+
// Assigned is unavailable up-front (or forbidden). Try the alt tier.
|
|
41
111
|
const alt = otherTier(assigned);
|
|
42
112
|
let altUnavailableReason;
|
|
43
113
|
if (unavailableTiers.has(alt)) {
|
|
44
114
|
altUnavailableReason = unavailableTiers.get(alt);
|
|
45
115
|
}
|
|
46
|
-
else
|
|
47
|
-
|
|
48
|
-
|
|
116
|
+
else {
|
|
117
|
+
let altProv;
|
|
118
|
+
try {
|
|
119
|
+
altProv = providerFor(alt);
|
|
120
|
+
}
|
|
121
|
+
catch { /* construction failure */ }
|
|
122
|
+
if (altProv === undefined) {
|
|
123
|
+
markUnavailable(unavailableTiers, alt, 'not_configured');
|
|
124
|
+
altUnavailableReason = 'not_configured';
|
|
125
|
+
}
|
|
126
|
+
else {
|
|
127
|
+
const altSep = checkSeparation(alt);
|
|
128
|
+
if (altSep.skip) {
|
|
129
|
+
skippedDueToSeparation = true;
|
|
130
|
+
altUnavailableReason = 'not_configured';
|
|
131
|
+
}
|
|
132
|
+
else if (altSep.identity) {
|
|
133
|
+
usedIdentity = altSep.identity;
|
|
134
|
+
}
|
|
135
|
+
}
|
|
49
136
|
}
|
|
50
137
|
if (altUnavailableReason !== undefined) {
|
|
51
|
-
// Both unavailable up-front.
|
|
52
|
-
//
|
|
138
|
+
// Both unavailable up-front. If separation was the blocking reason for
|
|
139
|
+
// either tier, emit the separation error code.
|
|
140
|
+
if (skippedDueToSeparation) {
|
|
141
|
+
return {
|
|
142
|
+
result: makeSyntheticFailure(assigned),
|
|
143
|
+
usedTier: 'none',
|
|
144
|
+
fallbackFired: false,
|
|
145
|
+
bothUnavailable: true,
|
|
146
|
+
fallbackReason,
|
|
147
|
+
assignedUnavailableReason,
|
|
148
|
+
unavailableReason: altUnavailableReason,
|
|
149
|
+
fallbackSeparationRespected: true,
|
|
150
|
+
assignedIdentity,
|
|
151
|
+
usedIdentity: undefined,
|
|
152
|
+
};
|
|
153
|
+
}
|
|
53
154
|
return {
|
|
54
155
|
result: makeSyntheticFailure(assigned),
|
|
55
156
|
usedTier: 'none',
|
|
@@ -64,10 +165,63 @@ export async function runWithFallback(input) {
|
|
|
64
165
|
fallbackFired = true;
|
|
65
166
|
}
|
|
66
167
|
// ── Step 4: call the chosen provider ──
|
|
67
|
-
|
|
168
|
+
let provider;
|
|
169
|
+
try {
|
|
170
|
+
provider = providerFor(usedTier);
|
|
171
|
+
}
|
|
172
|
+
catch {
|
|
173
|
+
// providerFor threw — construction failure on the chosen tier.
|
|
174
|
+
// If fallback hasn't fired yet, try alt; otherwise both exhausted.
|
|
175
|
+
if (!fallbackFired) {
|
|
176
|
+
const alt = otherTier(usedTier);
|
|
177
|
+
fallbackFired = true;
|
|
178
|
+
usedTier = alt;
|
|
179
|
+
try {
|
|
180
|
+
provider = providerFor(alt);
|
|
181
|
+
}
|
|
182
|
+
catch {
|
|
183
|
+
return {
|
|
184
|
+
result: makeSyntheticFailure(assigned),
|
|
185
|
+
usedTier: 'none',
|
|
186
|
+
fallbackFired: true,
|
|
187
|
+
bothUnavailable: true,
|
|
188
|
+
fallbackReason: 'not_configured',
|
|
189
|
+
assignedUnavailableReason,
|
|
190
|
+
unavailableReason: 'not_configured',
|
|
191
|
+
...(forbidden.length > 0 ? {
|
|
192
|
+
fallbackSeparationRespected: skippedDueToSeparation || undefined,
|
|
193
|
+
assignedIdentity,
|
|
194
|
+
usedIdentity: undefined,
|
|
195
|
+
} : {}),
|
|
196
|
+
};
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
else {
|
|
200
|
+
return {
|
|
201
|
+
result: makeSyntheticFailure(assigned),
|
|
202
|
+
usedTier: 'none',
|
|
203
|
+
fallbackFired: true,
|
|
204
|
+
bothUnavailable: true,
|
|
205
|
+
fallbackReason,
|
|
206
|
+
assignedUnavailableReason,
|
|
207
|
+
unavailableReason: 'not_configured',
|
|
208
|
+
...(forbidden.length > 0 ? {
|
|
209
|
+
fallbackSeparationRespected: skippedDueToSeparation || undefined,
|
|
210
|
+
assignedIdentity,
|
|
211
|
+
usedIdentity: undefined,
|
|
212
|
+
} : {}),
|
|
213
|
+
};
|
|
214
|
+
}
|
|
215
|
+
}
|
|
68
216
|
const result = await call(provider);
|
|
69
217
|
if (!isTransportFailure(result)) {
|
|
70
|
-
//
|
|
218
|
+
// Resolve usedIdentity from the actually-used provider if not already set
|
|
219
|
+
if (!usedIdentity) {
|
|
220
|
+
try {
|
|
221
|
+
usedIdentity = canonicalIdentity(provider.config) ?? undefined;
|
|
222
|
+
}
|
|
223
|
+
catch { /* leave undefined */ }
|
|
224
|
+
}
|
|
71
225
|
return {
|
|
72
226
|
result,
|
|
73
227
|
usedTier,
|
|
@@ -75,11 +229,22 @@ export async function runWithFallback(input) {
|
|
|
75
229
|
fallbackReason,
|
|
76
230
|
assignedUnavailableReason,
|
|
77
231
|
bothUnavailable: false,
|
|
232
|
+
...(forbidden.length > 0 ? {
|
|
233
|
+
fallbackSeparationRespected: skippedDueToSeparation || undefined,
|
|
234
|
+
assignedIdentity,
|
|
235
|
+
usedIdentity,
|
|
236
|
+
} : {}),
|
|
78
237
|
};
|
|
79
238
|
}
|
|
80
239
|
// Transport failure on the called tier. Capture the original triggering status.
|
|
81
240
|
const calledStatus = getStatus(result);
|
|
82
241
|
markUnavailable(unavailableTiers, usedTier, 'transport_failure');
|
|
242
|
+
if (!usedIdentity) {
|
|
243
|
+
try {
|
|
244
|
+
usedIdentity = canonicalIdentity(provider.config) ?? undefined;
|
|
245
|
+
}
|
|
246
|
+
catch { /* leave undefined */ }
|
|
247
|
+
}
|
|
83
248
|
// If the called tier WAS the alt (i.e. we already substituted before calling),
|
|
84
249
|
// there's no further alt to try; we've burned both options.
|
|
85
250
|
if (fallbackFired) {
|
|
@@ -93,6 +258,11 @@ export async function runWithFallback(input) {
|
|
|
93
258
|
bothUnavailable: true,
|
|
94
259
|
unavailableReason: 'transport_failure',
|
|
95
260
|
unavailableTriggeringStatus: calledStatus,
|
|
261
|
+
...(forbidden.length > 0 ? {
|
|
262
|
+
fallbackSeparationRespected: skippedDueToSeparation || undefined,
|
|
263
|
+
assignedIdentity,
|
|
264
|
+
usedIdentity,
|
|
265
|
+
} : {}),
|
|
96
266
|
};
|
|
97
267
|
}
|
|
98
268
|
// The assigned tier just failed in this call. Promote to fallback path.
|
|
@@ -107,25 +277,49 @@ export async function runWithFallback(input) {
|
|
|
107
277
|
// rework attempt should still be allowed to try.
|
|
108
278
|
const altProviderForSameCheck = providerFor(altOfUsed);
|
|
109
279
|
if (altProviderForSameCheck !== undefined && providersIdentical(provider, altProviderForSameCheck)) {
|
|
280
|
+
// Also check if the same-provider situation constitutes a separation violation
|
|
281
|
+
const sameProviderSep = forbidden.length > 0 ? checkSeparation(usedTier) : { skip: false };
|
|
110
282
|
return {
|
|
111
283
|
result,
|
|
112
284
|
usedTier,
|
|
113
285
|
fallbackFired: false,
|
|
114
286
|
bothUnavailable: false,
|
|
287
|
+
...(forbidden.length > 0 ? {
|
|
288
|
+
fallbackSeparationRespected: sameProviderSep.skip || skippedDueToSeparation || undefined,
|
|
289
|
+
assignedIdentity,
|
|
290
|
+
usedIdentity,
|
|
291
|
+
} : {}),
|
|
115
292
|
};
|
|
116
293
|
}
|
|
117
|
-
// Check alt availability (sticky first, then not-configured)
|
|
294
|
+
// Check alt availability (sticky first, then not-configured, then separation)
|
|
118
295
|
let altUnavailableReason;
|
|
296
|
+
let altSeparation = false;
|
|
119
297
|
if (unavailableTiers.has(altOfUsed)) {
|
|
120
298
|
altUnavailableReason = unavailableTiers.get(altOfUsed);
|
|
121
299
|
}
|
|
122
|
-
else
|
|
123
|
-
|
|
124
|
-
|
|
300
|
+
else {
|
|
301
|
+
let altProv2;
|
|
302
|
+
try {
|
|
303
|
+
altProv2 = providerFor(altOfUsed);
|
|
304
|
+
}
|
|
305
|
+
catch { /* construction failure */ }
|
|
306
|
+
if (altProv2 === undefined) {
|
|
307
|
+
markUnavailable(unavailableTiers, altOfUsed, 'not_configured');
|
|
308
|
+
altUnavailableReason = 'not_configured';
|
|
309
|
+
}
|
|
310
|
+
else {
|
|
311
|
+
const altSep = checkSeparation(altOfUsed);
|
|
312
|
+
if (altSep.skip) {
|
|
313
|
+
altSeparation = true;
|
|
314
|
+
altUnavailableReason = 'not_configured';
|
|
315
|
+
}
|
|
316
|
+
else if (altSep.identity) {
|
|
317
|
+
usedIdentity = altSep.identity;
|
|
318
|
+
}
|
|
319
|
+
}
|
|
125
320
|
}
|
|
126
321
|
if (altUnavailableReason !== undefined) {
|
|
127
322
|
// Both unavailable mid-call — assigned called and failed; alt unreachable.
|
|
128
|
-
// Return the actual failed result (not synthetic) per Spec Section D step 4b.
|
|
129
323
|
return {
|
|
130
324
|
result,
|
|
131
325
|
usedTier,
|
|
@@ -134,11 +328,42 @@ export async function runWithFallback(input) {
|
|
|
134
328
|
fallbackTriggeringStatus,
|
|
135
329
|
bothUnavailable: true,
|
|
136
330
|
unavailableReason: altUnavailableReason,
|
|
331
|
+
...(forbidden.length > 0 ? {
|
|
332
|
+
fallbackSeparationRespected: altSeparation || skippedDueToSeparation || undefined,
|
|
333
|
+
assignedIdentity,
|
|
334
|
+
usedIdentity,
|
|
335
|
+
} : {}),
|
|
137
336
|
};
|
|
138
337
|
}
|
|
139
338
|
// Try alt.
|
|
140
|
-
|
|
339
|
+
let altProvider;
|
|
340
|
+
try {
|
|
341
|
+
altProvider = providerFor(altOfUsed);
|
|
342
|
+
}
|
|
343
|
+
catch {
|
|
344
|
+
return {
|
|
345
|
+
result,
|
|
346
|
+
usedTier,
|
|
347
|
+
fallbackFired: true,
|
|
348
|
+
fallbackReason,
|
|
349
|
+
fallbackTriggeringStatus,
|
|
350
|
+
bothUnavailable: true,
|
|
351
|
+
unavailableReason: 'not_configured',
|
|
352
|
+
...(forbidden.length > 0 ? {
|
|
353
|
+
fallbackSeparationRespected: skippedDueToSeparation || undefined,
|
|
354
|
+
assignedIdentity,
|
|
355
|
+
usedIdentity,
|
|
356
|
+
} : {}),
|
|
357
|
+
};
|
|
358
|
+
}
|
|
141
359
|
const altResult = await call(altProvider);
|
|
360
|
+
// Resolve usedIdentity from the alt provider if not already set
|
|
361
|
+
if (!usedIdentity) {
|
|
362
|
+
try {
|
|
363
|
+
usedIdentity = canonicalIdentity(altProvider.config) ?? undefined;
|
|
364
|
+
}
|
|
365
|
+
catch { /* leave undefined */ }
|
|
366
|
+
}
|
|
142
367
|
const altStatus = getStatus(altResult);
|
|
143
368
|
if (isTransportFailure(altResult)) {
|
|
144
369
|
// Both transport-failed mid-call — preserve BOTH triggering statuses.
|
|
@@ -152,6 +377,11 @@ export async function runWithFallback(input) {
|
|
|
152
377
|
bothUnavailable: true,
|
|
153
378
|
unavailableReason: 'transport_failure',
|
|
154
379
|
unavailableTriggeringStatus: altStatus, // alt's failure status (final state)
|
|
380
|
+
...(forbidden.length > 0 ? {
|
|
381
|
+
fallbackSeparationRespected: skippedDueToSeparation || undefined,
|
|
382
|
+
assignedIdentity,
|
|
383
|
+
usedIdentity,
|
|
384
|
+
} : {}),
|
|
155
385
|
};
|
|
156
386
|
}
|
|
157
387
|
// Alt succeeded.
|
|
@@ -162,6 +392,11 @@ export async function runWithFallback(input) {
|
|
|
162
392
|
fallbackReason,
|
|
163
393
|
fallbackTriggeringStatus, // assigned's failure status (root cause)
|
|
164
394
|
bothUnavailable: false,
|
|
395
|
+
...(forbidden.length > 0 ? {
|
|
396
|
+
fallbackSeparationRespected: skippedDueToSeparation || undefined,
|
|
397
|
+
assignedIdentity,
|
|
398
|
+
usedIdentity,
|
|
399
|
+
} : {}),
|
|
165
400
|
};
|
|
166
401
|
}
|
|
167
402
|
/** Lifecycle helper: builds the synthetic RunResult expected when both tiers are
|
|
@@ -182,7 +417,7 @@ export function makeSyntheticRunResult(assigned, errorCode) {
|
|
|
182
417
|
errorCode,
|
|
183
418
|
retryable: false,
|
|
184
419
|
turns: 0,
|
|
185
|
-
usage: { inputTokens: 0, outputTokens: 0, totalTokens: 0, costUSD: 0,
|
|
420
|
+
usage: { inputTokens: 0, outputTokens: 0, totalTokens: 0, costUSD: 0, costDeltaVsParentUSD: 0, cachedTokens: null, reasoningTokens: null },
|
|
186
421
|
filesRead: [],
|
|
187
422
|
filesWritten: [],
|
|
188
423
|
toolCalls: [],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fallback.js","sourceRoot":"","sources":["../../src/escalation/fallback.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fallback.js","sourceRoot":"","sources":["../../src/escalation/fallback.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAA0B,MAAM,wCAAwC,CAAC;AAEnH,MAAM,CAAC,MAAM,kBAAkB,GAA2B,IAAI,GAAG,CAAC;IAChE,WAAW;IACX,eAAe;IACf,SAAS;CACV,CAAC,CAAC;AAKH,8DAA8D;AAC9D,MAAM,UAAU,eAAe,CAC7B,GAAmB,EACnB,IAAe,EACf,MAAsB;IAEtB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,CAAY;IACpC,OAAO,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;AACnD,CAAC;AAED;;;;yEAIyE;AACzE,MAAM,UAAU,kBAAkB,CAAC,CAAW,EAAE,CAAW;IACzD,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAC/D,CAAC;AAyDD,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,KAA8B;IAE9B,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;IAC1G,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,KAAK,CAAC,mBAAmB,IAAI,EAAE,CAAC;IAElD,wCAAwC;IACxC,4EAA4E;IAC5E,gFAAgF;IAChF,kFAAkF;IAClF,uGAAuG;IACvG,0DAA0D;IAC1D,iDAAiD;IACjD,MAAM,eAAe,GAAG,CAAC,IAAe,EAAmD,EAAE;QAC3F,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QACnD,IAAI,CAAuB,CAAC;QAC5B,IAAI,CAAC;YAAC,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QAAC,CAAC;QAChE,IAAI,CAAC,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YACvC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;YACpF,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACvC,CAAC;QAAC,MAAM,CAAC;YACP,6EAA6E;YAC7E,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACxB,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,uBAAuB,GAAG,CAAC,IAAe,EAA4B,EAAE;QAC5E,IAAI,CAAuB,CAAC;QAC5B,IAAI,CAAC;YAAC,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,IAAI,CAAC;QAAC,CAAC;QACrD,IAAI,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QACpB,IAAI,CAAC;YAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,IAAI,CAAC;QAAC,CAAC;IACpE,CAAC,CAAC;IAEF,mEAAmE;IACnE,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC;IAExE,gFAAgF;IAChF,IAAI,QAAQ,GAAuB,QAAQ,CAAC;IAC5C,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,cAA0C,CAAC;IAC/C,IAAI,yBAAqD,CAAC;IAC1D,IAAI,sBAAsB,GAAG,KAAK,CAAC;IACnC,IAAI,YAAY,GAAkC,gBAAgB,CAAC;IAEnE,IAAI,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnC,yBAAyB,GAAG,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC;QAC5D,cAAc,GAAG,yBAAyB,CAAC;IAC7C,CAAC;SAAM,CAAC;QACN,IAAI,gBAAsC,CAAC;QAC3C,IAAI,CAAC;YAAC,gBAAgB,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,uDAAuD,CAAC,CAAC;QACnH,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACnC,eAAe,CAAC,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC;YAC9D,yBAAyB,GAAG,gBAAgB,CAAC;YAC7C,cAAc,GAAG,gBAAgB,CAAC;QACpC,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;YACtC,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;gBACb,sBAAsB,GAAG,IAAI,CAAC;gBAC9B,cAAc,GAAG,gBAAgB,CAAC;YACpC,CAAC;iBAAM,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;gBACxB,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QACjC,qEAAqE;QACrE,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;QAChC,IAAI,oBAAgD,CAAC;QACrD,IAAI,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,oBAAoB,GAAG,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;QACpD,CAAC;aAAM,CAAC;YACN,IAAI,OAA6B,CAAC;YAClC,IAAI,CAAC;gBAAC,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,0BAA0B,CAAC,CAAC;YACxE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,eAAe,CAAC,gBAAgB,EAAE,GAAG,EAAE,gBAAgB,CAAC,CAAC;gBACzD,oBAAoB,GAAG,gBAAgB,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACN,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;gBACpC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;oBAChB,sBAAsB,GAAG,IAAI,CAAC;oBAC9B,oBAAoB,GAAG,gBAAgB,CAAC;gBAC1C,CAAC;qBAAM,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;oBAC3B,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC;gBACjC,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACvC,uEAAuE;YACvE,+CAA+C;YAC/C,IAAI,sBAAsB,EAAE,CAAC;gBAC3B,OAAO;oBACL,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC;oBACtC,QAAQ,EAAE,MAAM;oBAChB,aAAa,EAAE,KAAK;oBACpB,eAAe,EAAE,IAAI;oBACrB,cAAc;oBACd,yBAAyB;oBACzB,iBAAiB,EAAE,oBAAoB;oBACvC,2BAA2B,EAAE,IAAI;oBACjC,gBAAgB;oBAChB,YAAY,EAAE,SAAS;iBACxB,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC;gBACtC,QAAQ,EAAE,MAAM;gBAChB,aAAa,EAAE,KAAK;gBACpB,eAAe,EAAE,IAAI;gBACrB,cAAc;gBACd,yBAAyB;gBACzB,iBAAiB,EAAE,oBAAoB;aACxC,CAAC;QACJ,CAAC;QACD,QAAQ,GAAG,GAAG,CAAC;QACf,aAAa,GAAG,IAAI,CAAC;IACvB,CAAC;IAED,yCAAyC;IACzC,IAAI,QAAkB,CAAC;IACvB,IAAI,CAAC;QACH,QAAQ,GAAG,WAAW,CAAC,QAAqB,CAAE,CAAC;IACjD,CAAC;IAAC,MAAM,CAAC;QACP,+DAA+D;QAC/D,mEAAmE;QACnE,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,GAAG,GAAG,SAAS,CAAC,QAAqB,CAAC,CAAC;YAC7C,aAAa,GAAG,IAAI,CAAC;YACrB,QAAQ,GAAG,GAAG,CAAC;YACf,IAAI,CAAC;gBACH,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAE,CAAC;YAC/B,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO;oBACL,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC;oBACtC,QAAQ,EAAE,MAAM;oBAChB,aAAa,EAAE,IAAI;oBACnB,eAAe,EAAE,IAAI;oBACrB,cAAc,EAAE,gBAAgB;oBAChC,yBAAyB;oBACzB,iBAAiB,EAAE,gBAAgB;oBACnC,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;wBACzB,2BAA2B,EAAE,sBAAsB,IAAI,SAAS;wBAChE,gBAAgB;wBAChB,YAAY,EAAE,SAAS;qBACxB,CAAC,CAAC,CAAC,EAAE,CAAC;iBACR,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO;gBACL,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC;gBACtC,QAAQ,EAAE,MAAM;gBAChB,aAAa,EAAE,IAAI;gBACnB,eAAe,EAAE,IAAI;gBACrB,cAAc;gBACd,yBAAyB;gBACzB,iBAAiB,EAAE,gBAAgB;gBACnC,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;oBACzB,2BAA2B,EAAE,sBAAsB,IAAI,SAAS;oBAChE,gBAAgB;oBAChB,YAAY,EAAE,SAAS;iBACxB,CAAC,CAAC,CAAC,EAAE,CAAC;aACR,CAAC;QACJ,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEpC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,0EAA0E;QAC1E,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,IAAI,CAAC;gBAAC,YAAY,GAAG,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC;QACzG,CAAC;QACD,OAAO;YACL,MAAM;YACN,QAAQ;YACR,aAAa;YACb,cAAc;YACd,yBAAyB;YACzB,eAAe,EAAE,KAAK;YACtB,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;gBACzB,2BAA2B,EAAE,sBAAsB,IAAI,SAAS;gBAChE,gBAAgB;gBAChB,YAAY;aACb,CAAC,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;IACJ,CAAC;IAED,gFAAgF;IAChF,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IACvC,eAAe,CAAC,gBAAgB,EAAE,QAAqB,EAAE,mBAAmB,CAAC,CAAC;IAC9E,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,IAAI,CAAC;YAAC,YAAY,GAAG,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC;IACzG,CAAC;IAED,+EAA+E;IAC/E,4DAA4D;IAC5D,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO;YACL,MAAM;YACN,QAAQ;YACR,aAAa,EAAE,IAAI;YACnB,cAAc;YACd,wBAAwB,EAAE,YAAY;YACtC,yBAAyB;YACzB,eAAe,EAAE,IAAI;YACrB,iBAAiB,EAAE,mBAAmB;YACtC,2BAA2B,EAAE,YAAY;YACzC,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;gBACzB,2BAA2B,EAAE,sBAAsB,IAAI,SAAS;gBAChE,gBAAgB;gBAChB,YAAY;aACb,CAAC,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;IACJ,CAAC;IAED,wEAAwE;IACxE,cAAc,GAAG,mBAAmB,CAAC;IACrC,MAAM,wBAAwB,GAAG,YAAY,CAAC;IAC9C,MAAM,SAAS,GAAG,SAAS,CAAC,QAAqB,CAAC,CAAC;IAEnD,2EAA2E;IAC3E,6EAA6E;IAC7E,2EAA2E;IAC3E,yEAAyE;IACzE,yEAAyE;IACzE,iDAAiD;IACjD,MAAM,uBAAuB,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;IACvD,IAAI,uBAAuB,KAAK,SAAS,IAAI,kBAAkB,CAAC,QAAQ,EAAE,uBAAuB,CAAC,EAAE,CAAC;QACnG,+EAA+E;QAC/E,MAAM,eAAe,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,QAAqB,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QACxG,OAAO;YACL,MAAM;YACN,QAAQ;YACR,aAAa,EAAE,KAAK;YACpB,eAAe,EAAE,KAAK;YACtB,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;gBACzB,2BAA2B,EAAE,eAAe,CAAC,IAAI,IAAI,sBAAsB,IAAI,SAAS;gBACxF,gBAAgB;gBAChB,YAAY;aACb,CAAC,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;IACJ,CAAC;IAED,8EAA8E;IAC9E,IAAI,oBAAgD,CAAC;IACrD,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QACpC,oBAAoB,GAAG,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC;IAC1D,CAAC;SAAM,CAAC;QACN,IAAI,QAA8B,CAAC;QACnC,IAAI,CAAC;YAAC,QAAQ,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,0BAA0B,CAAC,CAAC;QAC/E,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,eAAe,CAAC,gBAAgB,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC;YAC/D,oBAAoB,GAAG,gBAAgB,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;YAC1C,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;gBAChB,aAAa,GAAG,IAAI,CAAC;gBACrB,oBAAoB,GAAG,gBAAgB,CAAC;YAC1C,CAAC;iBAAM,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBAC3B,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC;YACjC,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;QACvC,2EAA2E;QAC3E,OAAO;YACL,MAAM;YACN,QAAQ;YACR,aAAa,EAAE,IAAI;YACnB,cAAc;YACd,wBAAwB;YACxB,eAAe,EAAE,IAAI;YACrB,iBAAiB,EAAE,oBAAoB;YACvC,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;gBACzB,2BAA2B,EAAE,aAAa,IAAI,sBAAsB,IAAI,SAAS;gBACjF,gBAAgB;gBAChB,YAAY;aACb,CAAC,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;IACJ,CAAC;IAED,WAAW;IACX,IAAI,WAAqB,CAAC;IAC1B,IAAI,CAAC;QACH,WAAW,GAAG,WAAW,CAAC,SAAS,CAAE,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;YACL,MAAM;YACN,QAAQ;YACR,aAAa,EAAE,IAAI;YACnB,cAAc;YACd,wBAAwB;YACxB,eAAe,EAAE,IAAI;YACrB,iBAAiB,EAAE,gBAAgB;YACnC,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;gBACzB,2BAA2B,EAAE,sBAAsB,IAAI,SAAS;gBAChE,gBAAgB;gBAChB,YAAY;aACb,CAAC,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1C,gEAAgE;IAChE,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,IAAI,CAAC;YAAC,YAAY,GAAG,iBAAiB,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC;IAC5G,CAAC;IACD,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;IAEvC,IAAI,kBAAkB,CAAC,SAAS,CAAC,EAAE,CAAC;QAClC,sEAAsE;QACtE,eAAe,CAAC,gBAAgB,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC;QAClE,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,SAAS;YACnB,aAAa,EAAE,IAAI;YACnB,cAAc;YACd,wBAAwB,EAAa,yCAAyC;YAC9E,eAAe,EAAE,IAAI;YACrB,iBAAiB,EAAE,mBAAmB;YACtC,2BAA2B,EAAE,SAAS,EAAE,qCAAqC;YAC7E,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;gBACzB,2BAA2B,EAAE,sBAAsB,IAAI,SAAS;gBAChE,gBAAgB;gBAChB,YAAY;aACb,CAAC,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;IACJ,CAAC;IAED,iBAAiB;IACjB,OAAO;QACL,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,SAAS;QACnB,aAAa,EAAE,IAAI;QACnB,cAAc;QACd,wBAAwB,EAAe,yCAAyC;QAChF,eAAe,EAAE,KAAK;QACtB,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;YACzB,2BAA2B,EAAE,sBAAsB,IAAI,SAAS;YAChE,gBAAgB;YAChB,YAAY;SACb,CAAC,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED;;;;;;;;oBAQoB;AACpB,MAAM,UAAU,sBAAsB,CAAC,QAAmB,EAAE,SAAiB;IAC3E,OAAO;QACL,MAAM,EAAE,aAAa;QACrB,MAAM,EAAE,EAAE;QACV,kBAAkB,EAAE,IAAI;QACxB,KAAK,EAAE,qDAAqD,QAAQ,GAAG;QACvE,SAAS;QACT,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,CAAC;QACR,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,oBAAoB,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE;QAC1I,SAAS,EAAE,EAAE;QACb,YAAY,EAAE,EAAE;QAChB,SAAS,EAAE,EAAE;QACb,aAAa,EAAE,EAAE;KAClB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,CAAsB;IAEtB,OAAO,CAAC,CAAC,MAAM,KAAK,WAAW,IAAI,CAAC,CAAC,MAAM,KAAK,eAAe,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC;AAC5F,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../src/executors/audit.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACnE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AA+GtD,MAAM,WAAW,WAAY,SAAQ,cAAc;IACjD,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAsB,YAAY,CAChC,GAAG,EAAE,gBAAgB,EACrB,KAAK,EAAE,KAAK,GACX,OAAO,CAAC,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../src/executors/audit.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACnE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AA+GtD,MAAM,WAAW,WAAY,SAAQ,cAAc;IACjD,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAsB,YAAY,CAChC,GAAG,EAAE,gBAAgB,EACrB,KAAK,EAAE,KAAK,GACX,OAAO,CAAC,WAAW,CAAC,CAmHtB"}
|