Pattern Proposal: Pluggable Infrastructure Client Adapter
Summary
Adapter pattern isolating external provider implementations behind uniform client contracts.
Candidate Pattern
- ID:
pluggable-infrastructure-client-adapter - Classification: architectural
- Maturity: strategic_direction
- Type: emerging
Observed Signals
No specific signals listed.
Evidence
Supporting Evidence
- src/cas_runner/llm/litellm_client.py (LiteLLMClient) - Production implementation wrapping LiteLLM API.
- src/cas_runner/llm/mock_client.py (MockLLMClient) - In-memory test double mimicking client behavior without external network access.
Scope Assessment
- Evidence Strength: high
- Confidence: high
- Applies to: ideas-to-life-cas
Rationale
- Intent: Decouple external provider calls from business execution and allow seamless test stubbing.
- Context: The system communicates with external model APIs but requires hermetic offline runs for local tests and CI validation.
- Force: Third-party API dependencies introduce network flakiness and cost during test runs.
- Force: Runtime configuration must switch between mock and real execution transparently.
Traceability
Artifact source: proposed-patterns