FullStackDev e2d111ce5b feat: error handling, retry with backoff, and circuit breaker
Add robust error handling to the evolution loop and LLM adapters:
- Retry utility with exponential backoff for transient errors (429, 5xx, timeouts)
- Per-call error isolation in evaluator and judge adapter
- Circuit breaker in EvolutionLoop (trips after N consecutive failures)
- CLI flags: --max-retries, --error-strategy (skip|retry|abort)
- Config fields: max_retries, retry_delay_base, circuit_breaker_threshold, error_strategy
- 16 new unit tests covering all error handling paths

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-29 12:47:55 +00:00

Prometheus

Prompt evolution without reference data.

Quick Start

uv sync
uv run prometheus optimize -i examples/sample_config.yaml -o result.yaml -v

Architecture

Clean hexagonal architecture with four layers:

  • Domain — entities, ports, scoring (zero external dependencies)
  • Application — use cases, bootstrap, evaluator, evolution loop
  • Infrastructure — DSPy signatures, modules, adapters, file I/O
  • CLI — Typer app with optimize command

Testing

uv run pytest
uv run ruff check .
uv run mypy src/
Description
No description provided
Readme 351 KiB
Languages
Python 99.9%
Shell 0.1%