mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-08-01 21:02:12 +03:00
* feat(dashboard): show Codex plan label in provider and quota views ConnectionRow on the provider-detail page never surfaced the Codex subscription plan captured at OAuth import time (providerSpecificData.chatgptPlanType, src/lib/oauth/services/codexImport.ts) anywhere in the row UI. Added a small pure helper, getCodexPlanLabel, and a Badge in ConnectionRow gated on isCodex. Separately, the quota view's plan-badge machinery (resolvePlanValue / tierByConnection / QuotaCardHeader) already existed for all providers, but its persisted-metadata fallback list omitted chatgptPlanType. When the live Codex usage endpoint has no plan_type/planType field, the usage service reports the literal string "unknown" (open-sse/services/usage/codex.ts), which resolvePlanValue's normalizePlanCandidate() filters out — so the quota badge fell through to "Unknown" instead of the plan captured at login. Added chatgptPlanType to the persisted candidate list. Co-authored-by: Carmelo Campos <carmelogunsroses@gmail.com> Inspired-by: https://github.com/decolua/9router/pull/2570 * chore(changelog): fragment for #7210 * fix(dashboard): extract getCodexPlanLabel to unfreeze providerPageHelpers.ts The Fast Quality Gates file-size ratchet froze providerPageHelpers.ts at 1053 lines; adding getCodexPlanLabel inline pushed it to 1067. Move the self-contained helper into its own codexPlanLabel.ts module instead of growing the frozen file, and repoint ConnectionRow.tsx + the regression test at the new location. No behavior change. --------- Co-authored-by: Carmelo Campos <carmelogunsroses@gmail.com>