approval-engine/approval_engine/errors.py
tegwick 2bd2d19a98 Implement approval engine production readiness
Assistant: codex
Assistant-Model: gpt-5.6-sol
Assistant-Session: 01a05e2e-805b-7042-a750-71f473bceea2
2026-09-02 00:52:04 +02:00

38 lines
731 B
Python

class ApprovalError(Exception):
http_status = 400
reason_code = "error"
class Unauthenticated(ApprovalError):
http_status = 401
reason_code = "unauthenticated"
class Forbidden(ApprovalError):
http_status = 403
reason_code = "forbidden"
class NotFound(ApprovalError):
http_status = 404
reason_code = "not_found"
class Conflict(ApprovalError):
http_status = 409
reason_code = "conflict"
class DuplicateApprover(ApprovalError):
http_status = 409
reason_code = "duplicate_approver"
class Unprocessable(ApprovalError):
http_status = 422
reason_code = "unprocessable"
class StoreUnavailable(ApprovalError):
http_status = 503
reason_code = "store_unavailable"