As a developer, I want a circuit breaker for broker calls, So that repeated failures don’t overload the system or the external API. ## Acceptance criteria - [ ] AC1: A circuit breaker is implemented for each broker adapter. - [ ] AC2: The circuit breaker opens (stops sending requests) after N consecutive failures. - [ ] AC3: The circuit breaker moves to a half-open state after a configured timeout, allowing one test request. - [ ] AC4: A successful test request closes the breaker; a failed one keeps it open. - [ ] AC5: The state of the circuit breaker (`OPEN`, `CLOSED`, `HALF-OPEN`) is exposed via the `/status` endpoint. ## Definition of Done - [ ] Code implemented in a feature/fix branch - [ ] Unit / integration tests added or existing tests updated - [ ] Linting passed and code builds locally - [ ] Docs / README updated if behavior changed - [ ] PR opened and linked (`Closes #<issue-number>`) - [ ] Manual QA steps verified (if applicable)
As a developer,
I want a circuit breaker for broker calls,
So that repeated failures don’t overload the system or the external API.
Acceptance criteria
OPEN,CLOSED,HALF-OPEN) is exposed via the/statusendpoint.Definition of Done
Closes #<issue-number>)