Expand description
Port for persisting ContractorEvaluation entities (Story 3.9 — FR34
FR35 INV-21 INV-24).
Distinct from ContractEvaluationRepository,
the legacy marketplace-rating port (Issue #276). Story 3.9 introduces the
audit-grade flow gated by an approved TechnicalSpec.
All methods return Result<_, AppError> natively — no legacy String
error debt to migrate later (CRITICAL.md #4 / #555).
Evaluations are append-only — the repository exposes only save and
read methods; mutation guards are enforced at the DB trigger level (cf.
migration 20260605070000_create_contractor_evaluations.sql).