fix(providers): add codex_cli to the server provider catalog (#1530) - #1953
Open
sloemo01 wants to merge 1 commit into
Open
fix(providers): add codex_cli to the server provider catalog (#1530)#1953sloemo01 wants to merge 1 commit into
sloemo01 wants to merge 1 commit into
Conversation
|
✅ Health of changed files: 5.8 (unchanged) 📋 At a glance Files & modules (2)
✅ Health gate: passed 📌 Before you merge
🔎 More signals (2)🗺️ Change map flowchart LR
subgraph PR ["Changed in this PR (1 with dependents)"]
f_packages_server_src_repowise_server_provider_config_py[".../server/provider_config.py 🔥"]:::changed
end
f_packages_cli_src_repowise_cli_commands_init_cmd_command_py[".../init_cmd/command.py"]
f_packages_server_src_repowise_server_provider_config_py --> f_packages_cli_src_repowise_cli_commands_init_cmd_command_py
f_packages_cli_src_repowise_cli_helpers_py[".../cli/helpers.py"]
f_packages_server_src_repowise_server_provider_config_py --> f_packages_cli_src_repowise_cli_helpers_py
f_packages_cli_src_repowise_cli_ui_provider_selection_py[".../ui/provider_selection.py"]
f_packages_server_src_repowise_server_provider_config_py --> f_packages_cli_src_repowise_cli_ui_provider_selection_py
f_packages_core_src_repowise_core_generation_cost_tracker_py[".../generation/cost_tracker.py"]
f_packages_server_src_repowise_server_provider_config_py --> f_packages_core_src_repowise_core_generation_cost_tracker_py
more(["+6 more dependents"])
PR --> more
t_tests_unit_server_test_provider_config_py(["✅ .../server/test_provider_config.py"]):::guard
t_tests_unit_server_test_provider_config_py -.-> f_packages_server_src_repowise_server_provider_config_py
classDef changed fill:#dbeafe,stroke:#1d4ed8,color:#1e3a5f
classDef warn fill:#fef3c7,stroke:#b45309,color:#78350f
classDef guard fill:#dcfce7,stroke:#15803d,color:#14532d
Solid arrows: code that imports the changed files (10 direct dependents, from the last indexed snapshot). Dashed: history/tests. 🔥 Hotspots touched (2)
👀 Suggested reviewers @RaghavChamadiya 📊 See the full report for this PR |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
注册 for free
to join this conversation on GitHub.
Already have an account?
登录 to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Fixes #1530. The web dashboard's provider list disagreed with the CLI:
codex_cliis a built-in provider in the registry (packages/core/.../llm/registry.py) but was missing from the server'sPROVIDER_CATALOG, which is what the dashboard renders. The catalog hadclaude_cliandopencodebut notcodex_cli.Root cause
The server catalog in
packages/server/src/repowise/server/provider_config.pywas maintained by hand, and the drift test guarding it only comparedenv_keysfor providers that already existed in both places — it could not catch a missing entry.Changes
codex_clientry toPROVIDER_CATALOG(keyless,requires_key: false, sentinel modelcodex_cli/default; the runtime model list comes from the authenticated codex catalog, andlist_provider_statusappends the resolved active model when it isn't cataloged).test_server_provider_catalog_agrees_with_the_registryto assert every built-in provider (exceptmock) is present in the server catalog, so a future provider addition can't silently skip the dashboard again.Tests
uv run pytest tests/unit/test_providers/test_provider_env_registry.py -q→ 26 passed. The hardened test fails on unpatched main.