Skip to content

13.4 Resilience

Sprint: Sprint 13 - Observability and Resilience
Feature ID: 13.4
Subtasks: 13.4.1, 13.4.2

Objective

Deliver "Resilience" within Sprint 13 - Observability and Resilience.

Dependencies

Aggregated from the subtasks below (prerequisite task IDs and enablers):

  • 8.2.2
  • 8.5.1
  • Sprints 04-12
  • 13.4.1

Subtasks

13.4.1 Resilience4j on all outbound calls

  • ID: 13.4.1
  • Title: Apply circuit breaker, retry, and bulkhead to every external call
  • Description: Ensure every synchronous outbound call (Feign clients, PSP, object storage) and critical resource pool is wrapped with Resilience4j circuit breaker, retry, and bulkhead, surfacing DependencyFailureException on open circuits (NFR-10). Centralize config defaults.
  • Business Purpose: Prevent cascading failures across services (NFR-10).
  • Inputs: ADR-005, NFR-10, analysis Section 5.
  • Outputs: Resilience4j config + annotations/wrappers per service.
  • Acceptance Criteria:
  • With a downstream forced to fail, the breaker opens and the caller degrades gracefully with a mapped error; metrics show breaker state transitions.
  • Dependencies: 8.2.2, 8.5.1, Sprints 04-12
  • Complexity: L

13.4.2 Resilience integration tests

  • ID: 13.4.2
  • Title: Add resilience behavior tests
  • Description: Tests injecting downstream failure/latency to assert breaker open/half-open/closed transitions, retry counts, and bulkhead rejection.
  • Business Purpose: Verify resilience configuration behaves as intended (NFR-10, NFR-17).
  • Inputs: 13.4.1.
  • Outputs: Resilience test suite.
  • Acceptance Criteria:
  • Tests confirm breaker transitions, bounded retries, and bulkhead limits for representative calls.
  • Dependencies: 13.4.1
  • Complexity: M

Acceptance Criteria

Each subtask above carries its own objective, testable acceptance criteria. This feature is complete when every subtask's acceptance criteria are met.

Deliverables

  • Resilience4j config + annotations/wrappers per service.
  • Resilience test suite.

Definition of Done

  • All subtasks (13.4.1, 13.4.2) completed and their acceptance criteria verified.
  • All listed dependencies satisfied.
  • Build and tests green per the global conventions in ../README.md (Section 3).