- Type: Security - Affected area: `src/contracts/contracts.service.ts`, payout controller - BackendAcademy - Summary: Payout creation and release need role, balance, duplicate, and terminal-state checks. - Acceptance criteria: Only authorized actors can release payouts; completed or failed payouts cannot be released again; all actions are audited.
src/contracts/contracts.service.ts, payout controller