[cross-feature coupling] endpoint_resolver imports private _detect_provider from llm_core #704
Labels
No labels
area:chat
area:core
area:llm
area:routes
area:tools
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
refactor
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
sleepy/odysseus#704
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
File:
src/endpoint_resolver.pyline 15AGENTS.md rule: Features communicate through narrow, typed interfaces. Never import another feature's internals directly.
endpoint_resolverimports_detect_provider— a private, underscore-prefixed function. This creates a tight coupling between two core modules. Ifllm_coreis refactored (see issue #700), this import breaks.Provider detection is used by both
endpoint_resolver.pyandmodel_routes.pyand should either:llm_core(remove underscore prefix), orsrc/llm_core/providers.pymodule that both can import from.This is part of the broader duplication problem:
_detect_provideris called inllm_core.py,endpoint_resolver.py,model_routes.py, andai_interaction.py.Fixed via PR #874 — promoted private functions to public API, removed duplicated helpers from model_routes.