You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
EPApprovalRequest request type (submit/accept/decline actions) with full payload schema
Accept: auto-generates CERN-EP-{year}-{seq} report number, mints apprn PID, propagates to submitted version and all newer published versions via DB query
EPReportNumberComponent: guards apprn against removal/change using the PID table as source of truth (catches race condition where draft predates approval); soft field error on update_draft, hard raise on publish; superusers exempt
Email notifications on submit/accept/decline
Tests covering submit→accept/decline, report number sequencing, propagation, immutability, race condition
Implementation details
EPApprovalRequestrequest type (submit/accept/decline actions) with full payload schemaCERN-EP-{year}-{seq}report number, mintsapprnPID, propagates to submitted version and all newer published versions via DB queryEPReportNumberComponent: guardsapprnagainst removal/change using the PID table as source of truth (catches race condition where draft predates approval); soft field error onupdate_draft, hard raise onpublish; superusers exempt