audit-tools 0.33.4 → 0.33.7

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 (80) hide show
  1. package/dist/audit/cli/args.d.ts +1 -1
  2. package/dist/audit/cli/args.js +1 -1
  3. package/dist/audit/cli/hybridDispatch.d.ts +9 -2
  4. package/dist/audit/cli/hybridDispatch.d.ts.map +1 -1
  5. package/dist/audit/cli/hybridDispatch.js +10 -6
  6. package/dist/audit/cli/hybridDispatch.js.map +1 -1
  7. package/dist/audit/cli/nextStepCommand.js +8 -8
  8. package/dist/audit/cli/nextStepCommand.js.map +1 -1
  9. package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
  10. package/dist/audit/cli/nextStepHelpers.js +45 -43
  11. package/dist/audit/cli/nextStepHelpers.js.map +1 -1
  12. package/dist/audit/cli/reviewRun.d.ts +1 -0
  13. package/dist/audit/cli/reviewRun.d.ts.map +1 -1
  14. package/dist/audit/cli/reviewRun.js +5 -1
  15. package/dist/audit/cli/reviewRun.js.map +1 -1
  16. package/dist/audit/cli/rollingAuditDispatch.d.ts +2 -32
  17. package/dist/audit/cli/rollingAuditDispatch.d.ts.map +1 -1
  18. package/dist/audit/cli/rollingAuditDispatch.js +9 -39
  19. package/dist/audit/cli/rollingAuditDispatch.js.map +1 -1
  20. package/dist/remediate/steps/dispatch/marshal.d.ts.map +1 -1
  21. package/dist/remediate/steps/dispatch/marshal.js +8 -1
  22. package/dist/remediate/steps/dispatch/marshal.js.map +1 -1
  23. package/dist/remediate/steps/dispatch/waveScheduling.d.ts +9 -2
  24. package/dist/remediate/steps/dispatch/waveScheduling.d.ts.map +1 -1
  25. package/dist/remediate/steps/dispatch/waveScheduling.js +29 -19
  26. package/dist/remediate/steps/dispatch/waveScheduling.js.map +1 -1
  27. package/dist/remediate/steps/nextStep.d.ts +79 -65
  28. package/dist/remediate/steps/nextStep.d.ts.map +1 -1
  29. package/dist/remediate/steps/nextStep.js +342 -376
  30. package/dist/remediate/steps/nextStep.js.map +1 -1
  31. package/dist/remediate/steps/sessionConfigLoad.js +1 -1
  32. package/dist/remediate/steps/sessionConfigLoad.js.map +1 -1
  33. package/dist/shared/dispatch/admissionLoop.d.ts +31 -9
  34. package/dist/shared/dispatch/admissionLoop.d.ts.map +1 -1
  35. package/dist/shared/dispatch/admissionLoop.js +87 -3
  36. package/dist/shared/dispatch/admissionLoop.js.map +1 -1
  37. package/dist/shared/dispatch/dispatchQuotaContract.d.ts +7 -7
  38. package/dist/shared/dispatch/rollingDispatch.d.ts +18 -1
  39. package/dist/shared/dispatch/rollingDispatch.d.ts.map +1 -1
  40. package/dist/shared/dispatch/rollingDispatch.js +35 -9
  41. package/dist/shared/dispatch/rollingDispatch.js.map +1 -1
  42. package/dist/shared/index.d.ts +2 -2
  43. package/dist/shared/index.d.ts.map +1 -1
  44. package/dist/shared/index.js +3 -3
  45. package/dist/shared/index.js.map +1 -1
  46. package/dist/shared/providers/auditorSources.d.ts +39 -44
  47. package/dist/shared/providers/auditorSources.d.ts.map +1 -1
  48. package/dist/shared/providers/auditorSources.js +90 -63
  49. package/dist/shared/providers/auditorSources.js.map +1 -1
  50. package/dist/shared/providers/claudeWorkerProvider.d.ts +12 -11
  51. package/dist/shared/providers/claudeWorkerProvider.d.ts.map +1 -1
  52. package/dist/shared/providers/claudeWorkerProvider.js +23 -16
  53. package/dist/shared/providers/claudeWorkerProvider.js.map +1 -1
  54. package/dist/shared/providers/providerConfirmation.d.ts +2 -2
  55. package/dist/shared/providers/providerConfirmation.js +2 -2
  56. package/dist/shared/providers/providerConfirmation.js.map +1 -1
  57. package/dist/shared/providers/providerPathGuard.d.ts +33 -4
  58. package/dist/shared/providers/providerPathGuard.d.ts.map +1 -1
  59. package/dist/shared/providers/providerPathGuard.js +33 -4
  60. package/dist/shared/providers/providerPathGuard.js.map +1 -1
  61. package/dist/shared/providers/proxyCatalog.d.ts +19 -16
  62. package/dist/shared/providers/proxyCatalog.d.ts.map +1 -1
  63. package/dist/shared/providers/proxyCatalog.js +272 -181
  64. package/dist/shared/providers/proxyCatalog.js.map +1 -1
  65. package/dist/shared/providers/sharedProviderConfirmation.d.ts +1 -1
  66. package/dist/shared/providers/sharedProviderConfirmation.js +2 -2
  67. package/dist/shared/providers/sharedProviderConfirmation.js.map +1 -1
  68. package/dist/shared/quota/apiPool.d.ts +76 -44
  69. package/dist/shared/quota/apiPool.d.ts.map +1 -1
  70. package/dist/shared/quota/apiPool.js +142 -75
  71. package/dist/shared/quota/apiPool.js.map +1 -1
  72. package/dist/shared/quota/capacity.d.ts +1 -1
  73. package/dist/shared/types/providerConfirmation.d.ts +2 -2
  74. package/dist/shared/types/sessionConfig.d.ts +9 -8
  75. package/dist/shared/types/sessionConfig.d.ts.map +1 -1
  76. package/dist/shared/types/sessionConfig.js +1 -1
  77. package/dist/shared/types/sessionConfig.js.map +1 -1
  78. package/dist/shared/validation/sessionConfig.js +1 -1
  79. package/dist/shared/validation/sessionConfig.js.map +1 -1
  80. package/package.json +1 -1
@@ -57,10 +57,10 @@ export declare function resolveConversationHostProvider(options?: {
57
57
  * both orchestrators.
58
58
  *
59
59
  * NOTE: this returns the configured provider verbatim when set — a run with
60
- * `provider: codex` (codex as the driving host) keys to codex. The audit
61
- * host-review path additionally DEMOTES a headless in-process backend to a
62
- * worker (see `resolveHostDispatchProviderName`), routing the driver identity
63
- * through {@link resolveConversationHostProvider} instead.
60
+ * `provider: codex` (codex as the driving host) keys to codex. The host-DISPATCH
61
+ * paths additionally treat a headless in-process backend as a worker, not a
62
+ * driver (see {@link resolveHostDispatchProviderName}), routing the driver
63
+ * identity through {@link resolveConversationHostProvider} instead.
64
64
  */
65
65
  export declare function resolveHostProviderName(sessionConfig: {
66
66
  provider?: ProviderName;
@@ -69,4 +69,33 @@ export declare function resolveHostProviderName(sessionConfig: {
69
69
  explicit?: ProviderName;
70
70
  env?: NodeJS.ProcessEnv;
71
71
  }): ResolvedProviderName;
72
+ /**
73
+ * The identity of the agent DRIVING the host fan-out this invocation — what the
74
+ * host-dispatch pool / host-session quota key is keyed to (and charged against).
75
+ * When `sessionConfig.provider` names a headless in-process backend (codex /
76
+ * opencode / openai-compatible / agy — plus the command-shaped backends under a
77
+ * draw whose `commandWorkers` policy admits them), that provider is a WORKER,
78
+ * never the driver: the conversation host that reached the host-dispatch path
79
+ * resolves via {@link resolveConversationHostProvider} (auto-detected, and
80
+ * overridable via `--host-provider` / `host_provider` — NOT the literal
81
+ * `claude-code`, which mis-charged a Codex host's fan-out to the Claude pool).
82
+ * An explicit conversation-host provider (vscode-task / antigravity /
83
+ * claude-code — and, for audit's policy, worker-command / subprocess-template)
84
+ * IS a driver and passes through unchanged.
85
+ *
86
+ * This is the founding-bug fix ([[capability-is-per-auditor-not-per-audit]]): a
87
+ * run started with `provider: codex` and later resumed by a Claude host never
88
+ * keys or charges the host fan-out against codex's meter. Hoisted to shared
89
+ * (H2+H4 collapse, plan D5) so audit and remediate key their fan-outs through
90
+ * the ONE resolver; the `isHeadlessPrimaryProvider` read here is DRIVER
91
+ * IDENTITY, not branch selection — it survives the branch-pair deletion.
92
+ * [[host-provider-misattribution-nim-codex]]
93
+ */
94
+ export declare function resolveHostDispatchProviderName(sessionConfig: {
95
+ provider?: ProviderName;
96
+ host_provider?: ProviderName;
97
+ } | null | undefined, options?: {
98
+ commandWorkers?: boolean;
99
+ env?: NodeJS.ProcessEnv;
100
+ }): ResolvedProviderName;
72
101
  //# sourceMappingURL=providerPathGuard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"providerPathGuard.d.ts","sourceRoot":"","sources":["../../../src/shared/providers/providerPathGuard.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EACZ,oBAAoB,EACrB,MAAM,2BAA2B,CAAC;AAqCnC;;;GAGG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,IAAI,GAC1C,IAAI,CAEN;AAiBD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,oBAAoB,EAC9B,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAoBT;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,+BAA+B,CAAC,OAAO,CAAC,EAAE;IACxD,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,aAAa,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,YAAY,CAAA;KAAE,GAAG,IAAI,CAAC;IACxD,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CACzB,GAAG,oBAAoB,CAUvB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CACrC,aAAa,EAAE;IAAE,QAAQ,CAAC,EAAE,YAAY,CAAC;IAAC,aAAa,CAAC,EAAE,YAAY,CAAA;CAAE,GAAG,IAAI,GAAG,SAAS,EAC3F,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,YAAY,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;CAAE,GAC7D,oBAAoB,CAUtB"}
1
+ {"version":3,"file":"providerPathGuard.d.ts","sourceRoot":"","sources":["../../../src/shared/providers/providerPathGuard.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EACZ,oBAAoB,EACrB,MAAM,2BAA2B,CAAC;AAsCnC;;;GAGG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,IAAI,GAC1C,IAAI,CAEN;AAiBD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,oBAAoB,EAC9B,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAoBT;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,+BAA+B,CAAC,OAAO,CAAC,EAAE;IACxD,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,aAAa,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,YAAY,CAAA;KAAE,GAAG,IAAI,CAAC;IACxD,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CACzB,GAAG,oBAAoB,CAUvB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CACrC,aAAa,EAAE;IAAE,QAAQ,CAAC,EAAE,YAAY,CAAC;IAAC,aAAa,CAAC,EAAE,YAAY,CAAA;CAAE,GAAG,IAAI,GAAG,SAAS,EAC3F,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,YAAY,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;CAAE,GAC7D,oBAAoB,CAUtB;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,+BAA+B,CAC7C,aAAa,EAAE;IAAE,QAAQ,CAAC,EAAE,YAAY,CAAC;IAAC,aAAa,CAAC,EAAE,YAAY,CAAA;CAAE,GAAG,IAAI,GAAG,SAAS,EAC3F,OAAO,CAAC,EAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;CAAE,GAC9D,oBAAoB,CAKtB"}
@@ -1,4 +1,5 @@
1
1
  import { spawnSync } from "node:child_process";
2
+ import { isHeadlessPrimaryProvider } from "./inProcessWorkers.js";
2
3
  /**
3
4
  * Single-sourced PATH detection + self-spawn guard for the provider subsystem.
4
5
  *
@@ -132,10 +133,10 @@ export function resolveConversationHostProvider(options) {
132
133
  * both orchestrators.
133
134
  *
134
135
  * NOTE: this returns the configured provider verbatim when set — a run with
135
- * `provider: codex` (codex as the driving host) keys to codex. The audit
136
- * host-review path additionally DEMOTES a headless in-process backend to a
137
- * worker (see `resolveHostDispatchProviderName`), routing the driver identity
138
- * through {@link resolveConversationHostProvider} instead.
136
+ * `provider: codex` (codex as the driving host) keys to codex. The host-DISPATCH
137
+ * paths additionally treat a headless in-process backend as a worker, not a
138
+ * driver (see {@link resolveHostDispatchProviderName}), routing the driver
139
+ * identity through {@link resolveConversationHostProvider} instead.
139
140
  */
140
141
  export function resolveHostProviderName(sessionConfig, options) {
141
142
  const provider = sessionConfig?.provider;
@@ -148,4 +149,32 @@ export function resolveHostProviderName(sessionConfig, options) {
148
149
  }
149
150
  return provider;
150
151
  }
152
+ /**
153
+ * The identity of the agent DRIVING the host fan-out this invocation — what the
154
+ * host-dispatch pool / host-session quota key is keyed to (and charged against).
155
+ * When `sessionConfig.provider` names a headless in-process backend (codex /
156
+ * opencode / openai-compatible / agy — plus the command-shaped backends under a
157
+ * draw whose `commandWorkers` policy admits them), that provider is a WORKER,
158
+ * never the driver: the conversation host that reached the host-dispatch path
159
+ * resolves via {@link resolveConversationHostProvider} (auto-detected, and
160
+ * overridable via `--host-provider` / `host_provider` — NOT the literal
161
+ * `claude-code`, which mis-charged a Codex host's fan-out to the Claude pool).
162
+ * An explicit conversation-host provider (vscode-task / antigravity /
163
+ * claude-code — and, for audit's policy, worker-command / subprocess-template)
164
+ * IS a driver and passes through unchanged.
165
+ *
166
+ * This is the founding-bug fix ([[capability-is-per-auditor-not-per-audit]]): a
167
+ * run started with `provider: codex` and later resumed by a Claude host never
168
+ * keys or charges the host fan-out against codex's meter. Hoisted to shared
169
+ * (H2+H4 collapse, plan D5) so audit and remediate key their fan-outs through
170
+ * the ONE resolver; the `isHeadlessPrimaryProvider` read here is DRIVER
171
+ * IDENTITY, not branch selection — it survives the branch-pair deletion.
172
+ * [[host-provider-misattribution-nim-codex]]
173
+ */
174
+ export function resolveHostDispatchProviderName(sessionConfig, options) {
175
+ if (isHeadlessPrimaryProvider(sessionConfig?.provider, options)) {
176
+ return resolveConversationHostProvider({ sessionConfig, env: options?.env });
177
+ }
178
+ return resolveHostProviderName(sessionConfig, { env: options?.env });
179
+ }
151
180
  //# sourceMappingURL=providerPathGuard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"providerPathGuard.js","sourceRoot":"","sources":["../../../src/shared/providers/providerPathGuard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"providerPathGuard.js","sourceRoot":"","sources":["../../../src/shared/providers/providerPathGuard.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,14 @@
1
1
  import type { DispatchableSource } from "../types/sessionConfig.js";
2
2
  /**
3
- * The POPULATE cache for the repair-proxy lane: `GET <proxy>/registry` expanded into
4
- * ready-to-fold `claude-worker` {@link DispatchableSource}s, written once per populate
5
- * (Gate-0 build / explicit refresh) and READ by resolve — never fetched mid-resolve
6
- * (`docs/reviews/commit3-proxy-kind1-transport-plan-2026-07-16.md` §populate/resolve).
3
+ * The POPULATE cache for the proxy lane: discovered via `GET <proxy>/v1/models` +
4
+ * `GET <proxy>/model/info` (OpenAI-compatible surfaces) expanded into ready-to-fold
5
+ * `claude-worker` {@link DispatchableSource}s, written once per populate (Gate-0 build
6
+ * / explicit refresh) and READ by resolve — never fetched mid-resolve.
7
7
  *
8
8
  * Named `catalog-cache.json`, NOT the `catalog-<auditor-id>.json` the reserved-name
9
9
  * comment at `auditorSources.ts` anticipates: populate/resolve run on the AMBIENT
10
10
  * path, where no auditor id exists to key on. The cache is machine-level like the
11
- * declaration beside it — and it is a CACHE of live registry state, not resolved
11
+ * declaration beside it — and it is a CACHE of live discovery state, not resolved
12
12
  * per-auditor capability, so an auditor-id key would assert an isolation the data
13
13
  * doesn't have. Per-auditor never-inherit still holds: every resolve re-proves proxy
14
14
  * REACH itself; the cache only supplies the expansion.
@@ -38,15 +38,17 @@ export interface ProxyCatalog {
38
38
  sources: DispatchableSource[];
39
39
  }
40
40
  export interface PopulateProxyCatalogOptions {
41
- /** The repair-proxy base url (`GET <endpoint>/registry`). */
41
+ /** The proxy base url (`GET <endpoint>/v1/models`, `GET <endpoint>/model/info`). */
42
42
  endpoint: string;
43
- /** Models expanded per backend provider (declared `repair_proxy.top_k`); default {@link DEFAULT_PROXY_TOP_K}. */
43
+ /** Models expanded per backend provider (declared `proxy.top_k`); default {@link DEFAULT_PROXY_TOP_K}. */
44
44
  topK?: number;
45
45
  /**
46
- * Operator-declared blended $/Mtok for the proxied lane (`repair_proxy.cost_per_mtok`,
47
- * the free-to-operator axis). WINS over any registry list price.
46
+ * Operator-declared blended $/Mtok for the proxied lane (`proxy.cost_per_mtok`,
47
+ * the free-to-operator axis). WINS over any advert price.
48
48
  */
49
49
  costPerMtok?: number;
50
+ /** Env var holding the proxy's master key when authentication is required. */
51
+ apiKeyEnv?: string;
50
52
  /** Injectable fetch (tests); defaults to global fetch. */
51
53
  fetchImpl?: typeof fetch;
52
54
  /** Home dir override for the cache path (tests). */
@@ -68,13 +70,14 @@ export interface PopulateProxyCatalogResult {
68
70
  }>;
69
71
  }
70
72
  /**
71
- * POPULATE: fetch `GET <endpoint>/registry` and write the expanded `claude-worker`
72
- * sources to the machine-level cache. Network-bound and cacheable — runs at Gate-0
73
- * build / explicit refresh, NEVER inside `resolveAmbientSources` (which only READS
74
- * via {@link readProxyCatalog}). Never throws: a failed fetch returns
75
- * `{written:false, reason}` and leaves any prior cache untouched; an empty/zero-match
76
- * registry WRITES an empty expansion (fresh knowledge — resolve reports the lane
77
- * unexpanded with a reason).
73
+ * POPULATE: discover and expand models from an OpenAI-compatible proxy
74
+ * (`GET <endpoint>/v1/models` + `GET <endpoint>/model/info`) into
75
+ * ready-to-fold `claude-worker` sources, then write to the machine-level cache.
76
+ * Network-bound and cacheable — runs at Gate-0 build / explicit refresh, NEVER
77
+ * inside `resolveAmbientSources` (which only READS via {@link readProxyCatalog}).
78
+ * Never throws: a failed fetch returns `{written:false, reason}` and leaves any
79
+ * prior cache untouched; an empty discovery WRITES an empty expansion (fresh
80
+ * knowledge — resolve reports the lane unexpanded with a reason).
78
81
  */
79
82
  export declare function populateProxyCatalog(options: PopulateProxyCatalogOptions): Promise<PopulateProxyCatalogResult>;
80
83
  export interface ReadProxyCatalogDeps {
@@ -1 +1 @@
1
- {"version":3,"file":"proxyCatalog.d.ts","sourceRoot":"","sources":["../../../src/shared/providers/proxyCatalog.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAGpE;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,sBAAsB,uBAAuB,CAAC;AAE3D,wFAAwF;AACxF,eAAO,MAAM,mBAAmB,IAAI,CAAC;AAErC,gEAAgE;AAChE,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAE9C,qEAAqE;AACrE,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAE5C;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,QAAc,CAAC;AAEvD,yFAAyF;AACzF,wBAAgB,uBAAuB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED,yFAAyF;AACzF,MAAM,WAAW,YAAY;IAC3B,yFAAyF;IACzF,UAAU,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,QAAQ,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,OAAO,EAAE,kBAAkB,EAAE,CAAC;CAC/B;AAaD,MAAM,WAAW,2BAA2B;IAC1C,6DAA6D;IAC7D,QAAQ,EAAE,MAAM,CAAC;IACjB,iHAAiH;IACjH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0DAA0D;IAC1D,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uDAAuD;IACvD,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB;AAED,MAAM,WAAW,0BAA0B;IACzC,2EAA2E;IAC3E,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAC9B,uFAAuF;IACvF,OAAO,EAAE,OAAO,CAAC;IACjB,iFAAiF;IACjF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8DAA8D;IAC9D,OAAO,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAChD;AAsSD;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,0BAA0B,CAAC,CAkGrC;AAED,MAAM,WAAW,oBAAoB;IACnC,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2EAA2E;IAC3E,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;CACnD;AAUD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,GAAE,oBAAyB,GAC9B,YAAY,GAAG,IAAI,CAmBrB"}
1
+ {"version":3,"file":"proxyCatalog.d.ts","sourceRoot":"","sources":["../../../src/shared/providers/proxyCatalog.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAGpE;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,sBAAsB,uBAAuB,CAAC;AAE3D,wFAAwF;AACxF,eAAO,MAAM,mBAAmB,IAAI,CAAC;AAErC,gEAAgE;AAChE,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAE9C,qEAAqE;AACrE,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAE5C;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,QAAc,CAAC;AAEvD,yFAAyF;AACzF,wBAAgB,uBAAuB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED,yFAAyF;AACzF,MAAM,WAAW,YAAY;IAC3B,yFAAyF;IACzF,UAAU,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,QAAQ,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,OAAO,EAAE,kBAAkB,EAAE,CAAC;CAC/B;AA8BD,MAAM,WAAW,2BAA2B;IAC1C,oFAAoF;IACpF,QAAQ,EAAE,MAAM,CAAC;IACjB,0GAA0G;IAC1G,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8EAA8E;IAC9E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0DAA0D;IAC1D,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uDAAuD;IACvD,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB;AAED,MAAM,WAAW,0BAA0B;IACzC,2EAA2E;IAC3E,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAC9B,uFAAuF;IACvF,OAAO,EAAE,OAAO,CAAC;IACjB,iFAAiF;IACjF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8DAA8D;IAC9D,OAAO,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAChD;AAiWD;;;;;;;;;GASG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,0BAA0B,CAAC,CAyJrC;AAED,MAAM,WAAW,oBAAoB;IACnC,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2EAA2E;IAC3E,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;CACnD;AAUD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,GAAE,oBAAyB,GAC9B,YAAY,GAAG,IAAI,CAmBrB"}