refactor(open-sse): registry consolidation + DRY media/oauth/adhoc cleanup
- Single-source registry: oauth clientId/tokenUrl, usage URLs, image/embed configs, search defaultModel, codex fixedPort, google token url derive. - Remove 29 unused OmniRoute providers (registry 100→71); media intact. - De-adhoc: codex literals → registry format/oauth flags; reasoningInject, image/embed openrouter headers + xai bodyFields config-driven. - Add REGISTRY_TEMPLATE.js + expand PROVIDER_DEFAULTS/schema JSDoc. - Baselines updated; PROVIDERS 62 + alias 90 byte-for-byte, golden snapshots. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -9,12 +9,15 @@ const here = dirname(fileURLToPath(import.meta.url));
|
||||
const baseline = JSON.parse(readFileSync(join(here, "providers-baseline.json"), "utf8"));
|
||||
|
||||
// Fields intentionally added during refactor (verified by dedicated runtime tests, not byte-baseline).
|
||||
const ADDED_FIELDS = new Set(["forceStream", "urlSuffix"]);
|
||||
// authUrl: removed dead field (qwen/iflow) — no consumer reads config.authUrl (oauth block has authorize/deviceCode)
|
||||
const ADDED_FIELDS = new Set(["forceStream", "urlSuffix", "retry", "quirks", "auth", "validateUrl", "usage", "clientId", "clientSecret", "tokenUrl", "cliVersion", "apiClient", "copilot", "authorizeUrl", "authUrl", "regions", "defaultRegion", "reasoningInject"]);
|
||||
|
||||
// Normalize via JSON roundtrip so function/undefined are dropped identically; drop added fields.
|
||||
// Normalize via JSON roundtrip so function/undefined are dropped identically; drop added/removed fields.
|
||||
// ADDED_FIELDS are verified by dedicated runtime tests, so drop them from BOTH sides (added or intentionally removed).
|
||||
const current = JSON.parse(JSON.stringify(PROVIDERS));
|
||||
for (const id of Object.keys(current)) {
|
||||
for (const f of ADDED_FIELDS) delete current[id][f];
|
||||
for (const f of ADDED_FIELDS) {
|
||||
for (const id of Object.keys(current)) delete current[id][f];
|
||||
for (const id of Object.keys(baseline)) delete baseline[id][f];
|
||||
}
|
||||
|
||||
const diffs = [];
|
||||
|
||||
Reference in New Issue
Block a user