audit-tools 0.32.14 → 0.32.15
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/dist/audit/cli/nextStepCommand.d.ts.map +1 -1
- package/dist/audit/cli/nextStepCommand.js +29 -0
- package/dist/audit/cli/nextStepCommand.js.map +1 -1
- package/dist/audit/cli/nextStepHelpers.d.ts +4 -0
- package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
- package/dist/audit/cli/nextStepHelpers.js +57 -5
- package/dist/audit/cli/nextStepHelpers.js.map +1 -1
- package/dist/audit/cli/providerConfirmationStep.d.ts +24 -0
- package/dist/audit/cli/providerConfirmationStep.d.ts.map +1 -0
- package/dist/audit/cli/providerConfirmationStep.js +93 -0
- package/dist/audit/cli/providerConfirmationStep.js.map +1 -0
- package/dist/audit/cli/steps.d.ts +4 -4
- package/dist/audit/cli/steps.d.ts.map +1 -1
- package/dist/audit/cli/steps.js +1 -0
- package/dist/audit/cli/steps.js.map +1 -1
- package/dist/audit/orchestrator/intakeExecutors.d.ts.map +1 -1
- package/dist/audit/orchestrator/intakeExecutors.js +12 -4
- package/dist/audit/orchestrator/intakeExecutors.js.map +1 -1
- package/dist/audit/orchestrator/providerConfirmation.d.ts +6 -2
- package/dist/audit/orchestrator/providerConfirmation.d.ts.map +1 -1
- package/dist/audit/orchestrator/providerConfirmation.js +10 -6
- package/dist/audit/orchestrator/providerConfirmation.js.map +1 -1
- package/dist/shared/index.d.ts +4 -4
- package/dist/shared/index.d.ts.map +1 -1
- package/dist/shared/index.js +3 -3
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/providers/providerConfirmation.d.ts +27 -8
- package/dist/shared/providers/providerConfirmation.d.ts.map +1 -1
- package/dist/shared/providers/providerConfirmation.js +64 -14
- package/dist/shared/providers/providerConfirmation.js.map +1 -1
- package/dist/shared/providers/sharedProviderConfirmation.d.ts +32 -2
- package/dist/shared/providers/sharedProviderConfirmation.d.ts.map +1 -1
- package/dist/shared/providers/sharedProviderConfirmation.js +111 -6
- package/dist/shared/providers/sharedProviderConfirmation.js.map +1 -1
- package/dist/shared/types/providerConfirmation.d.ts +66 -0
- package/dist/shared/types/providerConfirmation.d.ts.map +1 -1
- package/dist/shared/types/providerConfirmation.js +12 -0
- package/dist/shared/types/providerConfirmation.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sharedProviderConfirmation.d.ts","sourceRoot":"","sources":["../../../src/shared/providers/sharedProviderConfirmation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAIH,OAAO,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAIrF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAO5D,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"sharedProviderConfirmation.d.ts","sourceRoot":"","sources":["../../../src/shared/providers/sharedProviderConfirmation.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,8 +36,9 @@ import { join } from "node:path";
|
|
|
36
36
|
import { auditToolsDir } from "../io/auditToolsPaths.js";
|
|
37
37
|
import { readJsonFile, writeJsonFile } from "../io/json.js";
|
|
38
38
|
import { withFileLock } from "../quota/fileLock.js";
|
|
39
|
-
import { discoverProviders,
|
|
39
|
+
import { discoverProviders, annotateConfirmedPool, } from "./providerConfirmation.js";
|
|
40
40
|
import { resolveConfirmedCostPositions } from "../dispatch/costRank.js";
|
|
41
|
+
import { PROVIDER_CONFIRMATION_INPUT_VERSION } from "../types/providerConfirmation.js";
|
|
41
42
|
// ---------------------------------------------------------------------------
|
|
42
43
|
// Version + on-disk location
|
|
43
44
|
// ---------------------------------------------------------------------------
|
|
@@ -107,8 +108,15 @@ function rostersEqual(a, b) {
|
|
|
107
108
|
* overriding the default self-spawn-blocked exclusion for those names.
|
|
108
109
|
* @param detectCommand - Injectable PATH-detection hook, forwarded to
|
|
109
110
|
* `discoverProviders` so tests can drive discovery deterministically.
|
|
111
|
+
* @param input - Operator's Gate-0 submission (interactive path): its
|
|
112
|
+
* `cost_order` overrides the suggested ordering and its `host_models` become
|
|
113
|
+
* priced, orderable host-native tiers (`host_model_cost_order`). Omit for the
|
|
114
|
+
* headless / no-operator path — the tool then emits its price-ascending
|
|
115
|
+
* suggestion with no host models, exactly as before. `exclude`/`include` are
|
|
116
|
+
* passed via the dedicated params above (the executor forwards them from the
|
|
117
|
+
* same input), so this arg governs ordering + host roster only.
|
|
110
118
|
*/
|
|
111
|
-
export function buildSharedProviderConfirmation(sessionConfig = {}, env = process.env, exclude = [], include = [], detectCommand) {
|
|
119
|
+
export function buildSharedProviderConfirmation(sessionConfig = {}, env = process.env, exclude = [], include = [], detectCommand, input) {
|
|
112
120
|
const discovered = discoverProviders(sessionConfig, env, detectCommand);
|
|
113
121
|
const excludeSet = new Set(exclude);
|
|
114
122
|
const includeSet = new Set(include);
|
|
@@ -139,13 +147,18 @@ export function buildSharedProviderConfirmation(sessionConfig = {}, env = proces
|
|
|
139
147
|
reason: provider.reason,
|
|
140
148
|
});
|
|
141
149
|
}
|
|
150
|
+
// Cost-first routing: annotate with representative model price + cost_order,
|
|
151
|
+
// read at dispatch as rung 1 of costRank (spec/cost-first-routing.md). When an
|
|
152
|
+
// operator input is present its ordering wins and its host roster is priced.
|
|
153
|
+
const annotated = annotateConfirmedPool(pool, sessionConfig, input);
|
|
142
154
|
return {
|
|
143
155
|
schema_version: SHARED_PROVIDER_CONFIRMATION_VERSION,
|
|
144
156
|
session_level: true,
|
|
145
157
|
confirmed_at: new Date().toISOString(),
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
158
|
+
provider_pool: annotated.provider_pool,
|
|
159
|
+
...(annotated.host_model_cost_order.length > 0
|
|
160
|
+
? { host_model_cost_order: annotated.host_model_cost_order }
|
|
161
|
+
: {}),
|
|
149
162
|
roster: sortRoster(discovered.map((p) => p.name)),
|
|
150
163
|
};
|
|
151
164
|
}
|
|
@@ -186,6 +199,16 @@ function isConfirmedPoolEntry(value) {
|
|
|
186
199
|
typeof obj.capability_tier === "string" &&
|
|
187
200
|
typeof obj.excluded === "boolean");
|
|
188
201
|
}
|
|
202
|
+
function isHostModelCostEntry(value) {
|
|
203
|
+
if (value === null || typeof value !== "object" || Array.isArray(value)) {
|
|
204
|
+
return false;
|
|
205
|
+
}
|
|
206
|
+
const obj = value;
|
|
207
|
+
return (typeof obj.model_id === "string" &&
|
|
208
|
+
(obj.blended_price_usd_per_mtok === null ||
|
|
209
|
+
typeof obj.blended_price_usd_per_mtok === "number") &&
|
|
210
|
+
typeof obj.cost_order === "number");
|
|
211
|
+
}
|
|
189
212
|
/**
|
|
190
213
|
* Validate a parsed value as a SharedProviderConfirmation. Returns the typed
|
|
191
214
|
* value or `null` when any required field is missing or malformed — a corrupt
|
|
@@ -208,11 +231,20 @@ function parseSharedProviderConfirmation(value) {
|
|
|
208
231
|
}
|
|
209
232
|
if (!isResolvedProviderNameArray(obj.roster))
|
|
210
233
|
return null;
|
|
234
|
+
// host_model_cost_order is optional + additive; a malformed value degrades to
|
|
235
|
+
// absent (the field never blocks parsing — INV-DC1-6 never-block spirit).
|
|
236
|
+
const hostModels = Array.isArray(obj.host_model_cost_order) &&
|
|
237
|
+
obj.host_model_cost_order.every(isHostModelCostEntry)
|
|
238
|
+
? obj.host_model_cost_order
|
|
239
|
+
: undefined;
|
|
211
240
|
return {
|
|
212
241
|
schema_version: SHARED_PROVIDER_CONFIRMATION_VERSION,
|
|
213
242
|
session_level: true,
|
|
214
243
|
confirmed_at: obj.confirmed_at,
|
|
215
244
|
provider_pool: obj.provider_pool,
|
|
245
|
+
...(hostModels && hostModels.length > 0
|
|
246
|
+
? { host_model_cost_order: hostModels }
|
|
247
|
+
: {}),
|
|
216
248
|
roster: obj.roster,
|
|
217
249
|
};
|
|
218
250
|
}
|
|
@@ -280,6 +312,79 @@ export async function readConfirmedCostPositions(root, sessionConfig = {}, env =
|
|
|
280
312
|
const read = await readSharedProviderConfirmation(root, sessionConfig, env);
|
|
281
313
|
if (!read || read.status !== "confirmed")
|
|
282
314
|
return new Map();
|
|
283
|
-
|
|
315
|
+
// Provider-pool positions (configured models) PLUS any host-native tiers the
|
|
316
|
+
// operator confirmed at Gate-0 (follow-up c). Both are model-keyed; a host tier
|
|
317
|
+
// and a configured pool thread to dispatch identically. Host entries are already
|
|
318
|
+
// in the single unified cost order, so a plain merge preserves the total order.
|
|
319
|
+
const positions = resolveConfirmedCostPositions(read.confirmation.provider_pool);
|
|
320
|
+
for (const entry of read.confirmation.host_model_cost_order ?? []) {
|
|
321
|
+
if (entry.model_id &&
|
|
322
|
+
Number.isFinite(entry.cost_order) &&
|
|
323
|
+
entry.cost_order >= 0) {
|
|
324
|
+
positions.set(entry.model_id, entry.cost_order);
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
return positions;
|
|
328
|
+
}
|
|
329
|
+
// ---------------------------------------------------------------------------
|
|
330
|
+
// Interactive Gate-0 operator input (spec/cost-first-routing.md — Gate-0)
|
|
331
|
+
// ---------------------------------------------------------------------------
|
|
332
|
+
/** File name of the host-written Gate-0 input under the audit artifacts dir. */
|
|
333
|
+
export const PROVIDER_CONFIRMATION_INPUT_FILENAME = "provider-confirmation.input.json";
|
|
334
|
+
/**
|
|
335
|
+
* Validate a parsed value as a ProviderConfirmationInput. Degrade-safe: returns
|
|
336
|
+
* `null` for absent/malformed so a missing or corrupt input is never an error
|
|
337
|
+
* (the executor then falls back to the tool's suggested ordering). Only the
|
|
338
|
+
* version is required; every other field is optional and validated to its
|
|
339
|
+
* expected shape (a malformed field is dropped, not fatal).
|
|
340
|
+
*/
|
|
341
|
+
export function parseProviderConfirmationInput(value) {
|
|
342
|
+
if (value === null || typeof value !== "object" || Array.isArray(value)) {
|
|
343
|
+
return null;
|
|
344
|
+
}
|
|
345
|
+
const obj = value;
|
|
346
|
+
if (obj.schema_version !== PROVIDER_CONFIRMATION_INPUT_VERSION)
|
|
347
|
+
return null;
|
|
348
|
+
const stringArray = (v) => Array.isArray(v) && v.every((x) => typeof x === "string")
|
|
349
|
+
? v
|
|
350
|
+
: undefined;
|
|
351
|
+
const costOrder = stringArray(obj.cost_order);
|
|
352
|
+
const exclude = stringArray(obj.exclude);
|
|
353
|
+
const include = stringArray(obj.include);
|
|
354
|
+
const hostModels = Array.isArray(obj.host_models)
|
|
355
|
+
? obj.host_models
|
|
356
|
+
.filter((m) => m !== null &&
|
|
357
|
+
typeof m === "object" &&
|
|
358
|
+
typeof m.model_id === "string")
|
|
359
|
+
.map((m) => ({
|
|
360
|
+
model_id: m.model_id,
|
|
361
|
+
...(typeof m.tier === "string"
|
|
362
|
+
? { tier: m.tier }
|
|
363
|
+
: {}),
|
|
364
|
+
}))
|
|
365
|
+
: undefined;
|
|
366
|
+
return {
|
|
367
|
+
schema_version: PROVIDER_CONFIRMATION_INPUT_VERSION,
|
|
368
|
+
...(costOrder ? { cost_order: costOrder } : {}),
|
|
369
|
+
...(exclude ? { exclude } : {}),
|
|
370
|
+
...(include ? { include } : {}),
|
|
371
|
+
...(hostModels && hostModels.length > 0 ? { host_models: hostModels } : {}),
|
|
372
|
+
};
|
|
373
|
+
}
|
|
374
|
+
/**
|
|
375
|
+
* Read the operator's Gate-0 input from `<artifactsDir>/provider-confirmation.input.json`.
|
|
376
|
+
* Returns `null` when the file is absent, unreadable, or malformed — the "operator
|
|
377
|
+
* has not acted yet" signal the gate uses to decide emit-vs-consume. Never throws.
|
|
378
|
+
*/
|
|
379
|
+
export async function readProviderConfirmationInput(artifactsDir) {
|
|
380
|
+
const path = join(artifactsDir, PROVIDER_CONFIRMATION_INPUT_FILENAME);
|
|
381
|
+
let raw;
|
|
382
|
+
try {
|
|
383
|
+
raw = await readJsonFile(path);
|
|
384
|
+
}
|
|
385
|
+
catch {
|
|
386
|
+
return null;
|
|
387
|
+
}
|
|
388
|
+
return parseProviderConfirmationInput(raw);
|
|
284
389
|
}
|
|
285
390
|
//# sourceMappingURL=sharedProviderConfirmation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sharedProviderConfirmation.js","sourceRoot":"","sources":["../../../src/shared/providers/sharedProviderConfirmation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EACL,iBAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"sharedProviderConfirmation.js","sourceRoot":"","sources":["../../../src/shared/providers/sharedProviderConfirmation.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,72 @@ import type { CapabilityTier } from "../providers/providerConfirmation.js";
|
|
|
19
19
|
* spec/cost-first-routing.md.
|
|
20
20
|
*/
|
|
21
21
|
export declare const PROVIDER_CONFIRMATION_RESULT_VERSION: "1.1.0";
|
|
22
|
+
/**
|
|
23
|
+
* Schema version for the operator-written Gate-0 input file
|
|
24
|
+
* (`<root>/.audit-tools/provider-confirmation.input.json`). The HOST writes this
|
|
25
|
+
* plain input; the tool owns the canonical envelope it is promoted into (the
|
|
26
|
+
* per-tool `provider_confirmation.json` seam + the shared
|
|
27
|
+
* `provider-confirmation.json`) — the input/envelope split so the tool stays the
|
|
28
|
+
* sole writer of the roster snapshot + cost annotation.
|
|
29
|
+
*/
|
|
30
|
+
export declare const PROVIDER_CONFIRMATION_INPUT_VERSION: "provider-confirmation-input/v1";
|
|
31
|
+
/**
|
|
32
|
+
* One model the host self-reports at the confirmation step so its host-native
|
|
33
|
+
* tiers are priced + ordered at Gate-0 (follow-up c) rather than only
|
|
34
|
+
* deterministically at dispatch. `model_id` is both the price-lookup key
|
|
35
|
+
* (models.dev) and the dispatch cost-position key. Never hardcoded — the host
|
|
36
|
+
* supplies it.
|
|
37
|
+
*/
|
|
38
|
+
export interface HostRosterModel {
|
|
39
|
+
/** Model id used to price (models.dev) and to key the dispatch cost position. */
|
|
40
|
+
model_id: string;
|
|
41
|
+
/** Optional capability tier for the price-unknown tiebreak in the suggestion. */
|
|
42
|
+
tier?: CapabilityTier;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* The operator's Gate-0 submission. Every field is optional beyond the version:
|
|
46
|
+
* an empty `{ schema_version }` accepts the tool's suggested ordering verbatim
|
|
47
|
+
* (the presence of the file is the "operator has acted" signal). The tool applies
|
|
48
|
+
* it degrade-safe — unknown keys in `cost_order` are ignored, omitted candidates
|
|
49
|
+
* keep their suggested relative order.
|
|
50
|
+
*/
|
|
51
|
+
export interface ProviderConfirmationInput {
|
|
52
|
+
/** Must equal PROVIDER_CONFIRMATION_INPUT_VERSION. */
|
|
53
|
+
schema_version: typeof PROVIDER_CONFIRMATION_INPUT_VERSION;
|
|
54
|
+
/**
|
|
55
|
+
* Operator's confirmed ordering as a list of candidate keys (provider names
|
|
56
|
+
* and/or host `model_id`s), cheapest-first. Array index becomes `cost_order`.
|
|
57
|
+
* Omit to accept the tool's price-ascending suggestion. A unified space over
|
|
58
|
+
* both provider pools and host models so one total cost order drives dispatch.
|
|
59
|
+
*/
|
|
60
|
+
cost_order?: string[];
|
|
61
|
+
/** Provider names to exclude from the dispatchable pool. */
|
|
62
|
+
exclude?: ResolvedProviderName[];
|
|
63
|
+
/** Self-spawn-blocked provider names the operator opts back IN. */
|
|
64
|
+
include?: ResolvedProviderName[];
|
|
65
|
+
/**
|
|
66
|
+
* Host self-reported model roster (follow-up c). Each becomes a priced,
|
|
67
|
+
* orderable candidate whose confirmed position threads to dispatch by
|
|
68
|
+
* `model_id` via `host_model_cost_order`.
|
|
69
|
+
*/
|
|
70
|
+
host_models?: HostRosterModel[];
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* A host-native model's persisted cost position (follow-up c). Lives on the
|
|
74
|
+
* shared confirmation alongside `provider_pool`; merged into the model-keyed
|
|
75
|
+
* dispatch positions map by `resolveConfirmedCostPositions` so a host tier routes
|
|
76
|
+
* by its operator-confirmed order exactly like a configured pool does. Kept as a
|
|
77
|
+
* separate list (not extra `provider_pool` entries) so no `provider_pool` consumer
|
|
78
|
+
* has to tolerate duplicate provider names.
|
|
79
|
+
*/
|
|
80
|
+
export interface HostModelCostEntry {
|
|
81
|
+
/** Host model id — the dispatch cost-position key. */
|
|
82
|
+
model_id: string;
|
|
83
|
+
/** Blended $/Mtok from models.dev, or `null` when unpriceable. Advisory. */
|
|
84
|
+
blended_price_usd_per_mtok: number | null;
|
|
85
|
+
/** Operator-confirmed 0-based cost position (rung 1 of costRank). */
|
|
86
|
+
cost_order: number;
|
|
87
|
+
}
|
|
22
88
|
/** One entry in the confirmed provider pool. */
|
|
23
89
|
export interface ConfirmedPoolEntry {
|
|
24
90
|
/** Canonical provider name. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providerConfirmation.d.ts","sourceRoot":"","sources":["../../../src/shared/types/providerConfirmation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAM3E;;;;;;;GAOG;AACH,eAAO,MAAM,oCAAoC,EAAG,OAAgB,CAAC;AAMrE,gDAAgD;AAChD,MAAM,WAAW,kBAAkB;IACjC,+BAA+B;IAC/B,IAAI,EAAE,oBAAoB,CAAC;IAC3B,kDAAkD;IAClD,eAAe,EAAE,cAAc,CAAC;IAChC;;;OAGG;IACH,QAAQ,EAAE,OAAO,CAAC;IAClB;;;;;;;OAOG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,8DAA8D;IAC9D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,0BAA0B,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B;IACzC,wEAAwE;IACxE,cAAc,EAAE,OAAO,oCAAoC,CAAC;IAC5D,yDAAyD;IACzD,YAAY,EAAE,MAAM,CAAC;IACrB,8EAA8E;IAC9E,aAAa,EAAE,kBAAkB,EAAE,CAAC;IACpC;;;OAGG;IACH,aAAa,EAAE,OAAO,CAAC;CACxB"}
|
|
1
|
+
{"version":3,"file":"providerConfirmation.d.ts","sourceRoot":"","sources":["../../../src/shared/types/providerConfirmation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAM3E;;;;;;;GAOG;AACH,eAAO,MAAM,oCAAoC,EAAG,OAAgB,CAAC;AAMrE;;;;;;;GAOG;AACH,eAAO,MAAM,mCAAmC,EAC9C,gCAAyC,CAAC;AAE5C;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC9B,iFAAiF;IACjF,QAAQ,EAAE,MAAM,CAAC;IACjB,iFAAiF;IACjF,IAAI,CAAC,EAAE,cAAc,CAAC;CACvB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,yBAAyB;IACxC,sDAAsD;IACtD,cAAc,EAAE,OAAO,mCAAmC,CAAC;IAC3D;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,4DAA4D;IAC5D,OAAO,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACjC,mEAAmE;IACnE,OAAO,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACjC;;;;OAIG;IACH,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;CACjC;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB;IACjC,sDAAsD;IACtD,QAAQ,EAAE,MAAM,CAAC;IACjB,4EAA4E;IAC5E,0BAA0B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,qEAAqE;IACrE,UAAU,EAAE,MAAM,CAAC;CACpB;AAMD,gDAAgD;AAChD,MAAM,WAAW,kBAAkB;IACjC,+BAA+B;IAC/B,IAAI,EAAE,oBAAoB,CAAC;IAC3B,kDAAkD;IAClD,eAAe,EAAE,cAAc,CAAC;IAChC;;;OAGG;IACH,QAAQ,EAAE,OAAO,CAAC;IAClB;;;;;;;OAOG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,8DAA8D;IAC9D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,0BAA0B,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B;IACzC,wEAAwE;IACxE,cAAc,EAAE,OAAO,oCAAoC,CAAC;IAC5D,yDAAyD;IACzD,YAAY,EAAE,MAAM,CAAC;IACrB,8EAA8E;IAC9E,aAAa,EAAE,kBAAkB,EAAE,CAAC;IACpC;;;OAGG;IACH,aAAa,EAAE,OAAO,CAAC;CACxB"}
|
|
@@ -20,4 +20,16 @@
|
|
|
20
20
|
* spec/cost-first-routing.md.
|
|
21
21
|
*/
|
|
22
22
|
export const PROVIDER_CONFIRMATION_RESULT_VERSION = "1.1.0";
|
|
23
|
+
// ---------------------------------------------------------------------------
|
|
24
|
+
// Interactive Gate-0 operator input (spec/cost-first-routing.md — Gate-0)
|
|
25
|
+
// ---------------------------------------------------------------------------
|
|
26
|
+
/**
|
|
27
|
+
* Schema version for the operator-written Gate-0 input file
|
|
28
|
+
* (`<root>/.audit-tools/provider-confirmation.input.json`). The HOST writes this
|
|
29
|
+
* plain input; the tool owns the canonical envelope it is promoted into (the
|
|
30
|
+
* per-tool `provider_confirmation.json` seam + the shared
|
|
31
|
+
* `provider-confirmation.json`) — the input/envelope split so the tool stays the
|
|
32
|
+
* sole writer of the roster snapshot + cost annotation.
|
|
33
|
+
*/
|
|
34
|
+
export const PROVIDER_CONFIRMATION_INPUT_VERSION = "provider-confirmation-input/v1";
|
|
23
35
|
//# sourceMappingURL=providerConfirmation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providerConfirmation.js","sourceRoot":"","sources":["../../../src/shared/types/providerConfirmation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,oCAAoC,GAAG,OAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"providerConfirmation.js","sourceRoot":"","sources":["../../../src/shared/types/providerConfirmation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,oCAAoC,GAAG,OAAgB,CAAC;AAErE,8EAA8E;AAC9E,0EAA0E;AAC1E,8EAA8E;AAE9E;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,mCAAmC,GAC9C,gCAAyC,CAAC"}
|