refactor(open-sse): P3 provider registry — split into providers/registry/{id}.js
- 100 registry files: transport + models co-located per provider (Mongoose-style) - providers/shared.js: shared Claude headers + OS/arch helpers (deduped) - providers/models/helpers.js: withCodexReviewModels (kept dynamic) - providers/index.js builds PROVIDERS + PROVIDER_MODELS = old API (content byte-for-byte) - config/providers.js + providerModels.js → barrel re-export, keep accessors + runtime helpers - Verified: PROVIDERS/MODELS/OAuth/alias byte-for-byte, golden translator tests pass, 0 new regression Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
20
open-sse/providers/models/helpers.js
Normal file
20
open-sse/providers/models/helpers.js
Normal file
@@ -0,0 +1,20 @@
|
||||
// Codex auto-generates a "-review" variant for each llm model (review quota family)
|
||||
const CODEX_REVIEW_SUFFIX = "-review";
|
||||
|
||||
export function withCodexReviewModels(models) {
|
||||
return models.flatMap((model) => {
|
||||
if ((model.type || "llm") !== "llm" || model.id.endsWith(CODEX_REVIEW_SUFFIX)) {
|
||||
return [model];
|
||||
}
|
||||
return [
|
||||
model,
|
||||
{
|
||||
...model,
|
||||
id: `${model.id}${CODEX_REVIEW_SUFFIX}`,
|
||||
name: `${model.name} Review`,
|
||||
upstreamModelId: model.upstreamModelId || model.id,
|
||||
quotaFamily: "review"
|
||||
}
|
||||
];
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user