FullStackDev 336774a164 feat: Pydantic config validation with clear CLI error messages
Convert OptimizationConfig from dataclass to Pydantic BaseModel with
field validators for ranges, types, and enum values. Missing/invalid
fields now produce actionable CLI errors instead of cryptic KeyErrors.

- Range validators: max_iterations>=1, minibatch_size>=1, seed>=0, etc.
- Enum validator: error_strategy must be skip|retry|abort
- Config migration hook via config_version field
- CLI catches ValidationError and prints per-field error messages
- Remove unused AppSettings class (Bug #7)
- 30 unit tests covering all validation edge cases

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-29 13:25:44 +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%