Bug: MOCK provider not discovered in ProviderRegistry._discover_providers #10559

Open
opened 2026-04-18 17:15:36 +00:00 by HAL9000 · 0 comments
Owner

Metadata

Commit Message: Bug: MOCK provider not discovered in ProviderRegistry._discover_providers

Branch Name: main

Background and Context

The ProviderType.MOCK is defined in src/cleveragents/providers/registry.py and has entries in both DEFAULT_CAPABILITIES and DEFAULT_MODELS dictionaries, indicating it is a supported provider type. However, the MOCK provider is missing from the PROVIDER_KEY_ATTRS dictionary, which causes the _discover_providers() method to skip it entirely.

The _discover_providers() method only iterates through providers listed in PROVIDER_KEY_ATTRS, meaning any provider not in that dictionary will never be discovered and added to the _providers registry, even if it's defined elsewhere in the codebase.

Expected Behavior

  • MOCK should be discovered as a provider during registry initialization
  • registry.get_provider_info(ProviderType.MOCK) should return a valid ProviderInfo object
  • registry.get_provider_info("mock") should return a valid ProviderInfo object
  • The is_configured flag should be True for MOCK since it doesn't require an API key

Actual Behavior

  • MOCK is not discovered during registry initialization
  • registry.get_provider_info(ProviderType.MOCK) returns None
  • registry.get_provider_info("mock") returns None
  • MOCK cannot be used as a provider despite being defined in the codebase

Acceptance Criteria

  • MOCK is added to the PROVIDER_KEY_ATTRS dictionary with an appropriate key attribute (or None if no key is required)
  • _discover_providers() successfully discovers MOCK as a provider
  • registry.get_provider_info(ProviderType.MOCK) returns a valid ProviderInfo object
  • registry.get_provider_info("mock") returns a valid ProviderInfo object
  • The returned ProviderInfo has is_configured=True for MOCK
  • Unit tests verify MOCK provider discovery and retrieval

Subtasks

  • Add MOCK to PROVIDER_KEY_ATTRS dictionary in src/cleveragents/providers/registry.py
  • Verify _discover_providers() correctly discovers MOCK
  • Add unit tests for MOCK provider discovery
  • Add unit tests for get_provider_info() with MOCK provider
  • Verify all existing tests still pass

Definition of Done

This issue is complete when:

  1. MOCK provider is successfully discovered by ProviderRegistry._discover_providers()
  2. get_provider_info(ProviderType.MOCK) and get_provider_info("mock") return valid ProviderInfo objects
  3. All acceptance criteria are met
  4. Unit tests verify the fix and prevent regression
  5. All existing tests continue to pass

Automated by CleverAgents Bot
Agent: new-issue-creator

## Metadata **Commit Message:** Bug: MOCK provider not discovered in ProviderRegistry._discover_providers **Branch Name:** main ## Background and Context The `ProviderType.MOCK` is defined in `src/cleveragents/providers/registry.py` and has entries in both `DEFAULT_CAPABILITIES` and `DEFAULT_MODELS` dictionaries, indicating it is a supported provider type. However, the MOCK provider is missing from the `PROVIDER_KEY_ATTRS` dictionary, which causes the `_discover_providers()` method to skip it entirely. The `_discover_providers()` method only iterates through providers listed in `PROVIDER_KEY_ATTRS`, meaning any provider not in that dictionary will never be discovered and added to the `_providers` registry, even if it's defined elsewhere in the codebase. ## Expected Behavior - MOCK should be discovered as a provider during registry initialization - `registry.get_provider_info(ProviderType.MOCK)` should return a valid `ProviderInfo` object - `registry.get_provider_info("mock")` should return a valid `ProviderInfo` object - The `is_configured` flag should be `True` for MOCK since it doesn't require an API key ## Actual Behavior - MOCK is not discovered during registry initialization - `registry.get_provider_info(ProviderType.MOCK)` returns `None` - `registry.get_provider_info("mock")` returns `None` - MOCK cannot be used as a provider despite being defined in the codebase ## Acceptance Criteria - [ ] MOCK is added to the `PROVIDER_KEY_ATTRS` dictionary with an appropriate key attribute (or `None` if no key is required) - [ ] `_discover_providers()` successfully discovers MOCK as a provider - [ ] `registry.get_provider_info(ProviderType.MOCK)` returns a valid `ProviderInfo` object - [ ] `registry.get_provider_info("mock")` returns a valid `ProviderInfo` object - [ ] The returned `ProviderInfo` has `is_configured=True` for MOCK - [ ] Unit tests verify MOCK provider discovery and retrieval ## Subtasks - [ ] Add MOCK to `PROVIDER_KEY_ATTRS` dictionary in `src/cleveragents/providers/registry.py` - [ ] Verify `_discover_providers()` correctly discovers MOCK - [ ] Add unit tests for MOCK provider discovery - [ ] Add unit tests for `get_provider_info()` with MOCK provider - [ ] Verify all existing tests still pass ## Definition of Done This issue is complete when: 1. MOCK provider is successfully discovered by `ProviderRegistry._discover_providers()` 2. `get_provider_info(ProviderType.MOCK)` and `get_provider_info("mock")` return valid `ProviderInfo` objects 3. All acceptance criteria are met 4. Unit tests verify the fix and prevent regression 5. All existing tests continue to pass --- **Automated by CleverAgents Bot** Agent: new-issue-creator
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
cleveragents/cleveragents-core#10559
No description provided.