@sriinnu/kosha-discovery 1.12.1 → 1.13.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/dist/discovery/base.d.ts.map +1 -1
- package/dist/discovery/base.js +11 -2
- package/dist/discovery/base.js.map +1 -1
- package/dist/discovery/bedrock.d.ts +2 -0
- package/dist/discovery/bedrock.d.ts.map +1 -1
- package/dist/discovery/bedrock.js +6 -1
- package/dist/discovery/bedrock.js.map +1 -1
- package/dist/discovery/catalog-only.d.ts +19 -0
- package/dist/discovery/catalog-only.d.ts.map +1 -0
- package/dist/discovery/catalog-only.js +49 -0
- package/dist/discovery/catalog-only.js.map +1 -0
- package/dist/discovery/free-tier.d.ts +4 -0
- package/dist/discovery/free-tier.d.ts.map +1 -1
- package/dist/discovery/free-tier.js +4 -0
- package/dist/discovery/free-tier.js.map +1 -1
- package/dist/discovery/modelsdev-seed.d.ts +12 -0
- package/dist/discovery/modelsdev-seed.d.ts.map +1 -1
- package/dist/discovery/modelsdev-seed.js +57 -2
- package/dist/discovery/modelsdev-seed.js.map +1 -1
- package/dist/discovery/price-evidence.d.ts +29 -0
- package/dist/discovery/price-evidence.d.ts.map +1 -0
- package/dist/discovery/price-evidence.js +46 -0
- package/dist/discovery/price-evidence.js.map +1 -0
- package/dist/discovery/public-seed.d.ts.map +1 -1
- package/dist/discovery/public-seed.js +9 -1
- package/dist/discovery/public-seed.js.map +1 -1
- package/dist/discovery/vertex.d.ts +2 -0
- package/dist/discovery/vertex.d.ts.map +1 -1
- package/dist/discovery/vertex.js +36 -8
- package/dist/discovery/vertex.js.map +1 -1
- package/dist/discovery-contract.d.ts +4 -1
- package/dist/discovery-contract.d.ts.map +1 -1
- package/dist/discovery-contract.js +2 -2
- package/dist/discovery-contract.js.map +1 -1
- package/dist/registry-discovery.d.ts +1 -1
- package/dist/registry-discovery.d.ts.map +1 -1
- package/dist/registry-discovery.js +6 -4
- package/dist/registry-discovery.js.map +1 -1
- package/dist/registry-runtime.d.ts +5 -1
- package/dist/registry-runtime.d.ts.map +1 -1
- package/dist/registry-runtime.js +123 -11
- package/dist/registry-runtime.js.map +1 -1
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +3 -1
- package/dist/registry.js.map +1 -1
- package/dist/types.d.ts +11 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/server.json +2 -2
package/dist/discovery/vertex.js
CHANGED
|
@@ -16,9 +16,9 @@ import { execFileSync, execSync } from "node:child_process";
|
|
|
16
16
|
import { readFileSync } from "node:fs";
|
|
17
17
|
import { homedir } from "node:os";
|
|
18
18
|
import { join } from "node:path";
|
|
19
|
-
import { assertSafeShellArg, cliSpawnOptions } from "../shell-safe.js";
|
|
20
|
-
import { assertCleanPayload } from "../security.js";
|
|
21
19
|
import { extractOriginProvider } from "../normalize.js";
|
|
20
|
+
import { assertCleanPayload } from "../security.js";
|
|
21
|
+
import { assertSafeShellArg, cliSpawnOptions } from "../shell-safe.js";
|
|
22
22
|
import { BaseDiscoverer } from "./base.js";
|
|
23
23
|
import { getPublicSeed } from "./public-seed.js";
|
|
24
24
|
// ---------------------------------------------------------------------------
|
|
@@ -52,9 +52,7 @@ export class VertexDiscoverer extends BaseDiscoverer {
|
|
|
52
52
|
*/
|
|
53
53
|
async discover(credential, options) {
|
|
54
54
|
// Project ID resolution: credential → env vars → gcloud config
|
|
55
|
-
let projectId = credential.metadata?.projectId ??
|
|
56
|
-
process.env.GOOGLE_CLOUD_PROJECT ??
|
|
57
|
-
process.env.GCLOUD_PROJECT;
|
|
55
|
+
let projectId = credential.metadata?.projectId ?? process.env.GOOGLE_CLOUD_PROJECT ?? process.env.GCLOUD_PROJECT;
|
|
58
56
|
if (!projectId) {
|
|
59
57
|
projectId = this.resolveProjectFromCli();
|
|
60
58
|
}
|
|
@@ -87,6 +85,12 @@ export class VertexDiscoverer extends BaseDiscoverer {
|
|
|
87
85
|
// Attempt 4: Static fallback
|
|
88
86
|
return this.staticFallback(region, projectId);
|
|
89
87
|
}
|
|
88
|
+
/** Public data only: no gcloud, no token, no ambient credential. */
|
|
89
|
+
async discoverKeyless() {
|
|
90
|
+
const region = "us-central1";
|
|
91
|
+
const seeds = await this.publicCatalogFallback(region, undefined);
|
|
92
|
+
return seeds.length > 0 ? seeds : this.staticFallback(region, undefined);
|
|
93
|
+
}
|
|
90
94
|
// -------------------------------------------------------------------------
|
|
91
95
|
// Private: REST API
|
|
92
96
|
// -------------------------------------------------------------------------
|
|
@@ -294,13 +298,37 @@ export class VertexDiscoverer extends BaseDiscoverer {
|
|
|
294
298
|
*/
|
|
295
299
|
staticFallback(region, projectId) {
|
|
296
300
|
const base = { provider: "vertex", originProvider: "google", region, projectId, source: "manual" };
|
|
297
|
-
const geminiChat = (id, name, ctx, out) => this.makeCard({
|
|
301
|
+
const geminiChat = (id, name, ctx, out) => this.makeCard({
|
|
302
|
+
...base,
|
|
303
|
+
id,
|
|
304
|
+
name,
|
|
305
|
+
mode: "chat",
|
|
306
|
+
capabilities: ["chat", "vision", "function_calling", "code", "nlu"],
|
|
307
|
+
contextWindow: ctx,
|
|
308
|
+
maxOutputTokens: out,
|
|
309
|
+
});
|
|
298
310
|
return [
|
|
299
311
|
geminiChat("gemini-2.5-pro", "Gemini 2.5 Pro", 1_048_576, 65_536),
|
|
300
312
|
geminiChat("gemini-3.8-flash", "Gemini 3.8 Flash", 1_048_576, 65_536),
|
|
301
313
|
geminiChat("gemini-2.5-flash", "Gemini 2.5 Flash", 1_048_576, 65_536),
|
|
302
|
-
this.makeCard({
|
|
303
|
-
|
|
314
|
+
this.makeCard({
|
|
315
|
+
...base,
|
|
316
|
+
id: "text-embedding-005",
|
|
317
|
+
name: "Text Embedding 005",
|
|
318
|
+
mode: "embedding",
|
|
319
|
+
capabilities: ["embedding"],
|
|
320
|
+
contextWindow: 2_048,
|
|
321
|
+
maxOutputTokens: 0,
|
|
322
|
+
}),
|
|
323
|
+
this.makeCard({
|
|
324
|
+
...base,
|
|
325
|
+
id: "imagen-3.0-generate-002",
|
|
326
|
+
name: "Imagen 3.0",
|
|
327
|
+
mode: "image",
|
|
328
|
+
capabilities: ["image_generation"],
|
|
329
|
+
contextWindow: 0,
|
|
330
|
+
maxOutputTokens: 0,
|
|
331
|
+
}),
|
|
304
332
|
];
|
|
305
333
|
}
|
|
306
334
|
// -------------------------------------------------------------------------
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vertex.js","sourceRoot":"","sources":["../../src/discovery/vertex.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"vertex.js","sourceRoot":"","sources":["../../src/discovery/vertex.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,8 +5,9 @@
|
|
|
5
5
|
* heuristics here so the registry can stay focused on orchestration.
|
|
6
6
|
* @module
|
|
7
7
|
*/
|
|
8
|
-
import type {
|
|
8
|
+
import type { PriceEvidence } from "./discovery/price-evidence.js";
|
|
9
9
|
import type { ProviderDescriptor } from "./provider-catalog.js";
|
|
10
|
+
import type { ModelCard, ModelPricing, StructuredOutputMode, ToolDialect } from "./types.js";
|
|
10
11
|
/** Stable schema version exposed to Chitragupta and other daemon consumers. */
|
|
11
12
|
export declare const DISCOVERY_SCHEMA_VERSION = 1;
|
|
12
13
|
/** Trusted capability taxonomy surfaced by the v1 discovery contract. */
|
|
@@ -63,6 +64,8 @@ export interface DiscoveryModelV1 {
|
|
|
63
64
|
maxOutputTokens: number | null;
|
|
64
65
|
pricing: ModelPricing | null;
|
|
65
66
|
originPricing?: ModelPricing | null;
|
|
67
|
+
/** What each source said this model costs, when more than one listed it. */
|
|
68
|
+
priceEvidence?: PriceEvidence[];
|
|
66
69
|
dimensions: number | null;
|
|
67
70
|
maxInputTokens: number | null;
|
|
68
71
|
discoveredAt: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery-contract.d.ts","sourceRoot":"","sources":["../src/discovery-contract.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"discovery-contract.d.ts","sourceRoot":"","sources":["../src/discovery-contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -167,7 +167,7 @@ function isFreeTierPricing(model) {
|
|
|
167
167
|
return pricing.inputPerMillion === 0 && pricing.outputPerMillion === 0;
|
|
168
168
|
}
|
|
169
169
|
function hasUnitPricing(pricing) {
|
|
170
|
-
return pricing.imageOutputPerImage !== undefined ||
|
|
170
|
+
return (pricing.imageOutputPerImage !== undefined ||
|
|
171
171
|
pricing.imageInputPerImage !== undefined ||
|
|
172
172
|
pricing.audioInputPerSecond !== undefined ||
|
|
173
173
|
pricing.audioOutputPerSecond !== undefined ||
|
|
@@ -177,6 +177,6 @@ function hasUnitPricing(pricing) {
|
|
|
177
177
|
pricing.outputPerMillionCharacters !== undefined ||
|
|
178
178
|
pricing.webSearchPerThousandRequests !== undefined ||
|
|
179
179
|
pricing.mapsSearchPerThousandRequests !== undefined ||
|
|
180
|
-
pricing.requestPerThousand !== undefined;
|
|
180
|
+
pricing.requestPerThousand !== undefined);
|
|
181
181
|
}
|
|
182
182
|
//# sourceMappingURL=discovery-contract.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery-contract.js","sourceRoot":"","sources":["../src/discovery-contract.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"discovery-contract.js","sourceRoot":"","sources":["../src/discovery-contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
* @module
|
|
7
7
|
*/
|
|
8
8
|
import type { DiscoveryDeltaV1, DiscoveryHealthRecord, DiscoveryModelV1, DiscoveryProviderV1, DiscoverySnapshotV1 } from "./discovery-contract.js";
|
|
9
|
-
import type { ModelCard } from "./types.js";
|
|
10
9
|
import type { ProviderObservation, RegistryState } from "./registry-state.js";
|
|
10
|
+
import type { ModelCard } from "./types.js";
|
|
11
11
|
/**
|
|
12
12
|
* Return the cached snapshot when it is still valid for diff generation.
|
|
13
13
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry-discovery.d.ts","sourceRoot":"","sources":["../src/registry-discovery.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"registry-discovery.d.ts","sourceRoot":"","sources":["../src/registry-discovery.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACX,gBAAgB,EAChB,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,MAAM,yBAAyB,CAAC;AAgBjC,OAAO,KAAK,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,KAAK,EAAE,SAAS,EAA4B,MAAM,YAAY,CAAC;AAEtE;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,aAAa,GAAG,mBAAmB,GAAG,IAAI,CAIzF;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,aAAa,GAAG,mBAAmB,CAInF;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACrC,KAAK,EAAE,aAAa,EACpB,OAAO,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GACvC,gBAAgB,CAiDlB;AAED;;GAEG;AACH,wBAAuB,sBAAsB,CAC5C,KAAK,EAAE,aAAa,EACpB,OAAO,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GACvC,cAAc,CAAC,gBAAgB,EAAE,IAAI,EAAE,IAAI,CAAC,CA6B9C;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC9C,KAAK,EAAE,aAAa,EACpB,gBAAgB,EAAE,mBAAmB,GAAG,IAAI,GAC1C,IAAI,CAoBN;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAE/D;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAuB/F;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,GAAG,mBAAmB,CAsBvG;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,GAAG,gBAAgB,CA8C/F;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,GAAG,qBAAqB,CAmCzG;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACxC,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAA;CAAE,GAC3E,IAAI,CAkBN;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,MAAM,GAAG,mBAAmB,CAAC,eAAe,CAAC,CAoBhG"}
|
|
@@ -206,6 +206,7 @@ export function registrySerializeModel(state, model) {
|
|
|
206
206
|
maxOutputTokens: model.maxOutputTokens > 0 ? model.maxOutputTokens : null,
|
|
207
207
|
pricing: model.pricing ?? null,
|
|
208
208
|
originPricing: model.originPricing ?? null,
|
|
209
|
+
...(model.priceEvidence ? { priceEvidence: model.priceEvidence } : {}),
|
|
209
210
|
dimensions: model.dimensions ?? null,
|
|
210
211
|
maxInputTokens: model.maxInputTokens ?? null,
|
|
211
212
|
discoveredAt: model.discoveredAt,
|
|
@@ -240,9 +241,7 @@ export function registryBuildHealthRecord(state, providerId) {
|
|
|
240
241
|
const breaker = state.healthTracker.breaker(providerId).health();
|
|
241
242
|
const observation = state.providerObservations.get(providerId);
|
|
242
243
|
const provider = state.providerMap.get(providerId);
|
|
243
|
-
const timeoutRate = observation && observation.attemptCount > 0
|
|
244
|
-
? observation.timeoutCount / observation.attemptCount
|
|
245
|
-
: 0;
|
|
244
|
+
const timeoutRate = observation && observation.attemptCount > 0 ? observation.timeoutCount / observation.attemptCount : 0;
|
|
246
245
|
const latencyClass = computeLatencyClass(observation);
|
|
247
246
|
let stateLabel = "unknown";
|
|
248
247
|
// I keep auth and throttle failures distinct because they imply different downstream actions.
|
|
@@ -309,7 +308,10 @@ export function registryClassifyError(errorMessage) {
|
|
|
309
308
|
if (lower.includes("timed out") || lower.includes("timeout") || lower.includes("abort")) {
|
|
310
309
|
return "timeout";
|
|
311
310
|
}
|
|
312
|
-
if (lower.includes("network") ||
|
|
311
|
+
if (lower.includes("network") ||
|
|
312
|
+
lower.includes("econn") ||
|
|
313
|
+
lower.includes("fetch failed") ||
|
|
314
|
+
/\b5\d{2}\b/.test(lower)) {
|
|
313
315
|
return "transport";
|
|
314
316
|
}
|
|
315
317
|
return "unknown";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry-discovery.js","sourceRoot":"","sources":["../src/registry-discovery.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registry-discovery.js","sourceRoot":"","sources":["../src/registry-discovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,8 @@ import type { CredentialResult, DiscoveryOptions, ProviderDiscoverer, ProviderIn
|
|
|
15
15
|
* cache envelopes or internal layout changes.
|
|
16
16
|
*/
|
|
17
17
|
export declare const REGISTRY_MANIFEST_PATH: string;
|
|
18
|
+
/** Providers known only from the public catalog, beside the registry. */
|
|
19
|
+
export declare const CATALOG_ONLY_FILE = "catalog-only.json";
|
|
18
20
|
/**
|
|
19
21
|
* Run provider discovery, enrichment, caching, and delta emission.
|
|
20
22
|
*/
|
|
@@ -83,7 +85,9 @@ export declare function saveRegistryToCache(state: RegistryState): Promise<void>
|
|
|
83
85
|
* still completed successfully, so I swallow errors rather than failing
|
|
84
86
|
* the whole command.
|
|
85
87
|
*/
|
|
86
|
-
export declare function exportRegistryManifest(state: RegistryState
|
|
88
|
+
export declare function exportRegistryManifest(state: RegistryState, options?: {
|
|
89
|
+
catalogOnly?: boolean;
|
|
90
|
+
}): Promise<void>;
|
|
87
91
|
export declare function mergeManifests(previous: DiscoverySnapshotV1 | null, fresh: DiscoverySnapshotV1): DiscoverySnapshotV1;
|
|
88
92
|
/**
|
|
89
93
|
* A single pricing-diff event captured at merge time. Persisted to
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry-runtime.d.ts","sourceRoot":"","sources":["../src/registry-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"registry-runtime.d.ts","sourceRoot":"","sources":["../src/registry-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAWH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAInE,OAAO,KAAK,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGhF,OAAO,KAAK,EACX,gBAAgB,EAEhB,gBAAgB,EAGhB,kBAAkB,EAClB,YAAY,EACZ,MAAM,YAAY,CAAC;AAMpB;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,QAA6C,CAAC;AAEjF,yEAAyE;AACzE,eAAO,MAAM,iBAAiB,sBAAsB,CAAC;AAErD;;GAEG;AACH,wBAAsB,gBAAgB,CACrC,KAAK,EAAE,aAAa,EACpB,YAAY,EAAE,qBAAqB,EACnC,OAAO,CAAC,EAAE,gBAAgB,GACxB,OAAO,CAAC,YAAY,EAAE,CAAC,CAsFzB;AAED;;GAEG;AACH,wBAAsB,eAAe,CACpC,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,gBAAgB,KAAK,OAAO,CAAC,YAAY,EAAE,CAAC,EACjE,UAAU,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CAUf;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAC5C,KAAK,EAAE,aAAa,EACpB,WAAW,CAAC,EAAE,MAAM,EAAE,EACtB,YAAY,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC,kBAAkB,EAAE,CAAC,CA2B/B;AAED;;GAEG;AACH,wBAAsB,6BAA6B,IAAI,OAAO,CAAC;IAC9D,OAAO,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAC;CACjF,GAAG,IAAI,CAAC,CAOR;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAgBrG;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAmB9E;AACD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAChC,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,uDAAuD;IACvD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,4CAA4C;IAC5C,mBAAmB,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAoC/F;AAgFD;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CASvE;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,KAAK,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CA0B1G;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAW7E;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAiGrH;AAkRD,wBAAgB,cAAc,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,EAAE,KAAK,EAAE,mBAAmB,GAAG,mBAAmB,CA0GpH;AAwGD;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,0DAA0D;IAC1D,GAAG,EAAE,MAAM,CAAC;IACZ,sFAAsF;IACtF,KAAK,EAAE,OAAO,GAAG,QAAQ,GAAG,WAAW,GAAG,YAAY,GAAG,cAAc,CAAC;IACxE,+EAA+E;IAC/E,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,QAAQ,EAAE,MAAM,CAAC;IACjB,6EAA6E;IAC7E,KAAK,EAAE,OAAO,CAAC;CACf;AAkFD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE,CAQvG"}
|
package/dist/registry-runtime.js
CHANGED
|
@@ -9,7 +9,9 @@ import { randomBytes } from "crypto";
|
|
|
9
9
|
import { mkdir, open, readdir, rename, stat, unlink, writeFile } from "fs/promises";
|
|
10
10
|
import { homedir } from "os";
|
|
11
11
|
import { dirname, join } from "path";
|
|
12
|
-
import { catalogCacheKey, loadActiveCatalog } from "./catalog-source.js";
|
|
12
|
+
import { catalogCacheKey, loadActiveCatalog, resolveCatalogSource } from "./catalog-source.js";
|
|
13
|
+
import { buildCatalogOnlyRows } from "./discovery/catalog-only.js";
|
|
14
|
+
import { priceAgreement } from "./discovery/price-evidence.js";
|
|
13
15
|
import { applyPriceSchedules } from "./discovery/price-schedules.js";
|
|
14
16
|
import { applyPromoOverrides } from "./discovery/promo-overrides.js";
|
|
15
17
|
import { DISCOVERY_SCHEMA_VERSION } from "./discovery-contract.js";
|
|
@@ -27,6 +29,8 @@ const CACHE_KEY_PREFIX = "provider_";
|
|
|
27
29
|
* cache envelopes or internal layout changes.
|
|
28
30
|
*/
|
|
29
31
|
export const REGISTRY_MANIFEST_PATH = join(homedir(), ".kosha", "registry.json");
|
|
32
|
+
/** Providers known only from the public catalog, beside the registry. */
|
|
33
|
+
export const CATALOG_ONLY_FILE = "catalog-only.json";
|
|
30
34
|
/**
|
|
31
35
|
* Run provider discovery, enrichment, caching, and delta emission.
|
|
32
36
|
*/
|
|
@@ -47,7 +51,9 @@ export async function registryDiscover(state, dependencies, options) {
|
|
|
47
51
|
// Scoped provider rehydration can carry cache-derived state that should
|
|
48
52
|
// not be published as a fresh top-level manifest snapshot.
|
|
49
53
|
if (!providers || providers.length === 0) {
|
|
50
|
-
|
|
54
|
+
// A cache hit makes no network calls, and that includes this file:
|
|
55
|
+
// it waits for the next real discovery.
|
|
56
|
+
await exportRegistryManifest(state, { catalogOnly: false });
|
|
51
57
|
}
|
|
52
58
|
return Array.from(state.providerMap.values());
|
|
53
59
|
}
|
|
@@ -379,7 +385,7 @@ export async function saveRegistryToCache(state) {
|
|
|
379
385
|
* still completed successfully, so I swallow errors rather than failing
|
|
380
386
|
* the whole command.
|
|
381
387
|
*/
|
|
382
|
-
export async function exportRegistryManifest(state) {
|
|
388
|
+
export async function exportRegistryManifest(state, options) {
|
|
383
389
|
let manifestPath = null;
|
|
384
390
|
let lockReleased = true;
|
|
385
391
|
let lockPath = null;
|
|
@@ -459,6 +465,9 @@ export async function exportRegistryManifest(state) {
|
|
|
459
465
|
await unlink(tmpPath).catch(() => { });
|
|
460
466
|
throw err;
|
|
461
467
|
}
|
|
468
|
+
warnOnNewlyDisputedPrices(previousManifest, merged);
|
|
469
|
+
if (options?.catalogOnly !== false)
|
|
470
|
+
await exportCatalogOnlyManifest(manifestPath);
|
|
462
471
|
}
|
|
463
472
|
catch (err) {
|
|
464
473
|
// Manifest export is best-effort — the cache still works either way.
|
|
@@ -617,6 +626,64 @@ async function sweepStaleTmpFiles(manifestPath) {
|
|
|
617
626
|
function escapeRegExp(s) {
|
|
618
627
|
return s.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
619
628
|
}
|
|
629
|
+
/** A price held or changed while its sources disagree is only worth anything if
|
|
630
|
+
* someone hears about it, so say so once, when a model first enters that state. */
|
|
631
|
+
function warnOnNewlyDisputedPrices(previous, merged) {
|
|
632
|
+
const disputed = (snapshot) => (snapshot?.models ?? []).filter((m) => m.rawCapabilities?.includes(PRICING_SOURCES_DISAGREE)).map((m) => m.key);
|
|
633
|
+
const known = new Set(disputed(previous));
|
|
634
|
+
const fresh = disputed(merged).filter((key) => !known.has(key));
|
|
635
|
+
if (fresh.length > 0) {
|
|
636
|
+
console.warn(`[kosha] ${fresh.length} price(s) where sources disagree, e.g. ${fresh[0]}`);
|
|
637
|
+
}
|
|
638
|
+
}
|
|
639
|
+
/** Refuse to write more than this: the catalog itself caps providers and models,
|
|
640
|
+
* so a file this large means something upstream went wrong. */
|
|
641
|
+
const MAX_CATALOG_ONLY_BYTES = 32 * 1024 * 1024;
|
|
642
|
+
/**
|
|
643
|
+
* Save providers known only from the public catalog to their own file beside
|
|
644
|
+
* the registry. They stay out of `registry.json` and the provider cache so no
|
|
645
|
+
* reader, however old, can route to one or match a model name against one.
|
|
646
|
+
* Readers ask this file for one named provider. Goes through the same merge,
|
|
647
|
+
* so a bad publish is held here as it is anywhere else.
|
|
648
|
+
*
|
|
649
|
+
* Failing leaves the previous file in place: the registry above is already saved.
|
|
650
|
+
*/
|
|
651
|
+
async function exportCatalogOnlyManifest(manifestPath) {
|
|
652
|
+
if (resolveCatalogSource().mode !== "community")
|
|
653
|
+
return;
|
|
654
|
+
const path = join(dirname(manifestPath), CATALOG_ONLY_FILE);
|
|
655
|
+
let tmpPath = null;
|
|
656
|
+
try {
|
|
657
|
+
const { getAllDiscoverers } = await import("./discovery/index.js");
|
|
658
|
+
const models = await buildCatalogOnlyRows(getAllDiscoverers().map((discoverer) => discoverer.providerId));
|
|
659
|
+
if (models.length === 0)
|
|
660
|
+
return;
|
|
661
|
+
const fresh = {
|
|
662
|
+
schemaVersion: DISCOVERY_SCHEMA_VERSION,
|
|
663
|
+
discoveredAt: Date.now(),
|
|
664
|
+
cursor: "",
|
|
665
|
+
providers: [],
|
|
666
|
+
models,
|
|
667
|
+
roles: [],
|
|
668
|
+
health: [],
|
|
669
|
+
credentialPrompts: [],
|
|
670
|
+
};
|
|
671
|
+
const merged = mergeManifests(await readPreviousManifest(path), fresh);
|
|
672
|
+
const body = JSON.stringify(merged);
|
|
673
|
+
if (Buffer.byteLength(body) > MAX_CATALOG_ONLY_BYTES) {
|
|
674
|
+
throw new Error(`${CATALOG_ONLY_FILE} would exceed ${MAX_CATALOG_ONLY_BYTES} bytes`);
|
|
675
|
+
}
|
|
676
|
+
assertCleanPayload(merged, CATALOG_ONLY_FILE);
|
|
677
|
+
tmpPath = `${path}.${randomBytes(4).toString("hex")}.tmp`;
|
|
678
|
+
await writeFile(tmpPath, body, { encoding: "utf-8", mode: 0o600 });
|
|
679
|
+
await rename(tmpPath, path);
|
|
680
|
+
}
|
|
681
|
+
catch (err) {
|
|
682
|
+
if (tmpPath)
|
|
683
|
+
await unlink(tmpPath).catch(() => { });
|
|
684
|
+
console.warn(`[kosha] ${CATALOG_ONLY_FILE} not updated: ${err instanceof Error ? err.message : String(err)}`);
|
|
685
|
+
}
|
|
686
|
+
}
|
|
620
687
|
/** Resolve the on-disk path for the registry manifest. Tests + custom callers
|
|
621
688
|
* pin via `state.config.cacheDir`; production falls back to ~/.kosha. */
|
|
622
689
|
function resolveManifestPath(state) {
|
|
@@ -663,10 +730,21 @@ async function readPreviousManifest(manifestPath) {
|
|
|
663
730
|
* used by anomaly logging is a UI-alert threshold; quarantine fires only on
|
|
664
731
|
* a much larger swing so legitimate price updates aren't blocked. */
|
|
665
732
|
const PRICING_QUARANTINE_THRESHOLD = 0.75;
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
*
|
|
669
|
-
const
|
|
733
|
+
const DAY_MS = 24 * 60 * 60 * 1000;
|
|
734
|
+
/** Quarantine guards against a bad publish, but a real move must not stay refused
|
|
735
|
+
* forever. Two independent sources agreeing is strong evidence, so that's a day. */
|
|
736
|
+
const PRICING_AGREED_HOLD_MS = DAY_MS;
|
|
737
|
+
/** One source can't vouch for itself, and a compromised one can simply wait out
|
|
738
|
+
* the hold. So it waits longer, and the row stays flagged once it's accepted. */
|
|
739
|
+
const PRICING_SINGLE_SOURCE_HOLD_MS = 3 * DAY_MS;
|
|
740
|
+
/** Sources can stay apart for good: one going stale after a real move would
|
|
741
|
+
* otherwise pin the old price forever. So a dispute waits longest, and the row
|
|
742
|
+
* stays flagged once it's accepted. */
|
|
743
|
+
const PRICING_DISPUTED_HOLD_MS = 7 * DAY_MS;
|
|
744
|
+
/** The accepted price rests on one source's word. */
|
|
745
|
+
const PRICING_SINGLE_SOURCE = "pricing_single_source";
|
|
746
|
+
/** Sources list different prices for this model. */
|
|
747
|
+
const PRICING_SOURCES_DISAGREE = "pricing_sources_disagree";
|
|
670
748
|
/** After this many consecutive discovery passes in which a previously-known
|
|
671
749
|
* model is missing from the fresh snapshot, the model is dropped from the
|
|
672
750
|
* merged manifest. Prevents the manifest from becoming a graveyard of
|
|
@@ -691,7 +769,8 @@ export function mergeManifests(previous, fresh) {
|
|
|
691
769
|
// → keep the previous pricing and tag the row pricing_quarantined,
|
|
692
770
|
// so a one-shot bad publish (provider returns 0, garbage units, …)
|
|
693
771
|
// can't silently overcharge or underprice downstream consumers.
|
|
694
|
-
// The same rates
|
|
772
|
+
// The same rates are accepted after a day if two sources agree on them,
|
|
773
|
+
// after three days if only one lists them, and not while sources disagree.
|
|
695
774
|
const freshModelKeys = new Set();
|
|
696
775
|
const mergedModels = [];
|
|
697
776
|
for (const f of fresh.models ?? []) {
|
|
@@ -712,21 +791,51 @@ export function mergeManifests(previous, fresh) {
|
|
|
712
791
|
const rates = pricingFingerprint(f);
|
|
713
792
|
const hold = old.pricingHold;
|
|
714
793
|
const since = hold?.rates === rates ? hold.since : now;
|
|
794
|
+
const agreement = priceAgreement(f.priceEvidence);
|
|
795
|
+
const window = agreement === "agree"
|
|
796
|
+
? PRICING_AGREED_HOLD_MS
|
|
797
|
+
: agreement === "disagree"
|
|
798
|
+
? PRICING_DISPUTED_HOLD_MS
|
|
799
|
+
: PRICING_SINGLE_SOURCE_HOLD_MS;
|
|
715
800
|
// A billed rate of $0 is never accepted this way: it poisons cheapest
|
|
716
801
|
// routing however long it's published.
|
|
717
|
-
if (billedRateDroppedToZero(old, f) || now - since <
|
|
802
|
+
if (billedRateDroppedToZero(old, f) || now - since < window) {
|
|
718
803
|
// Quarantine the suspect rates: keep the old pricing block and
|
|
719
804
|
// tag the operational `rawCapabilities` array (the trusted
|
|
720
805
|
// `capabilities` taxonomy stays clean, since this isn't a routing
|
|
721
806
|
// signal — it's a "don't trust the freshly-published rate" flag).
|
|
807
|
+
let tags = tagCapability(kept.rawCapabilities, "pricing_quarantined");
|
|
808
|
+
if (agreement === "disagree")
|
|
809
|
+
tags = tagCapability(tags, PRICING_SOURCES_DISAGREE);
|
|
722
810
|
kept = {
|
|
723
811
|
...kept,
|
|
724
812
|
pricing: old.pricing,
|
|
725
813
|
originPricing: old.originPricing,
|
|
726
|
-
rawCapabilities:
|
|
814
|
+
rawCapabilities: tags,
|
|
727
815
|
pricingHold: { rates, since },
|
|
728
816
|
};
|
|
729
817
|
}
|
|
818
|
+
else if (agreement !== "agree") {
|
|
819
|
+
const flag = agreement === "single" ? PRICING_SINGLE_SOURCE : PRICING_SOURCES_DISAGREE;
|
|
820
|
+
kept = { ...kept, rawCapabilities: tagCapability(kept.rawCapabilities, flag) };
|
|
821
|
+
}
|
|
822
|
+
}
|
|
823
|
+
else if (old && !f.pricing?.schedule) {
|
|
824
|
+
// Below the quarantine line a price still takes effect, but a move its
|
|
825
|
+
// sources dispute is the believable lie, so it carries a flag. Flags
|
|
826
|
+
// from an earlier move last until the rates change or the evidence does.
|
|
827
|
+
const agreement = priceAgreement(f.priceEvidence);
|
|
828
|
+
const moved = pricingFingerprint(old) !== pricingFingerprint(f);
|
|
829
|
+
const wasTagged = (tag) => !moved && (old.rawCapabilities ?? []).includes(tag);
|
|
830
|
+
let tags = kept.rawCapabilities;
|
|
831
|
+
if (agreement === "disagree" && (moved || wasTagged(PRICING_SOURCES_DISAGREE))) {
|
|
832
|
+
tags = tagCapability(tags, PRICING_SOURCES_DISAGREE);
|
|
833
|
+
}
|
|
834
|
+
if (agreement === "single" && wasTagged(PRICING_SINGLE_SOURCE)) {
|
|
835
|
+
tags = tagCapability(tags, PRICING_SINGLE_SOURCE);
|
|
836
|
+
}
|
|
837
|
+
if (tags !== kept.rawCapabilities)
|
|
838
|
+
kept = { ...kept, rawCapabilities: tags };
|
|
730
839
|
}
|
|
731
840
|
mergedModels.push(kept);
|
|
732
841
|
}
|
|
@@ -966,7 +1075,10 @@ async function discoverProvider(state, dependencies, discoverer, timeout, degrad
|
|
|
966
1075
|
? await dependencies.resolveCredential(discoverer.providerId, explicitKey)
|
|
967
1076
|
: dependencies.fallbackCredential(discoverer.providerId, explicitKey);
|
|
968
1077
|
try {
|
|
969
|
-
|
|
1078
|
+
// Cloud discoverers fall back to ambient credentials (the AWS chain, gcloud)
|
|
1079
|
+
// whatever credential they're given, so keyless mode has its own path there.
|
|
1080
|
+
const keylessPath = state.config.keyless ? discoverer.discoverKeyless?.bind(discoverer) : undefined;
|
|
1081
|
+
const models = keylessPath ? await keylessPath() : await discoverer.discover(credential, { timeout });
|
|
970
1082
|
breaker.onSuccess();
|
|
971
1083
|
dependencies.recordObservation(discoverer.providerId, {
|
|
972
1084
|
latencyMs: Date.now() - startedAt,
|