apps/oshun/web/e2e/metis-assessment-submit.spec.ts covers learner
/metis/assessment submit through POST /v1/metis/assessment-submissions and
handoff into /integrity/<verdictId>/appeal.
apps/oshun/web/e2e/operator-metis-themis-review.spec.ts covers
/operator/metis live appeal queue rendering, Uphold / Revise / Dismiss /
Escalate verdict controls, browser-driven
POST /v1/metis/integrity/appeals/:appealId/decision with no raw
teacherOverride, upheld verdict read-back, then opens /messages as the
appealed learner and verifies the real in-app decision row, appeal-record
follow link, clicked receipt, and mark-read read-back. It also renders the
gradebook correction in the operator row and reads back
GET /v1/metis/gradebook/<assessmentId>/latest.
apps/oshun/bff/src/__tests__/metis-integrity-route.test.ts covers the BFF
adjudicate, audit, appeal-open, appeal-list, workspace-read, resolve, and
outcome-decision contracts, including uphold without a client
teacherOverride, dismiss/revise/escalate outcome mapping, the Themis
decision → customer message store bridge, and gradebook pending →
terminal-verdict correction.