← All screens |2.8 Accept / reject / challenge ← Prev Next: Stale + refresh →

2.8 · Challenge / accept / reject Phase 4A

All writes are new API-NEW — today review_status is read-only. Addendum §4: the UI action is cell-level; the write applies to all unresolved claims in the cell unless explicit claim_ids are supplied. Maps to review_status {accepted, rejected, escalated}. Challenge uses a structured reason-code taxonomy (feeds evals, doc 07), not free text.

4A
4A path, step 6 — the only 4A writes. Each decision submits the cell’s current version (optimistic concurrency); if the cell changed underneath you, the write is rejected and you are prompted to reload and retry (see System states). Reviewer role is read-only in 4A.

Accept A

Records you + timestamp + the evidence state. One action.

fan-out Applies to all 1 unresolved claim in this cell.
→ gutter becomes accepted

“Accepted” ≠ legally correct. It records a reviewer’s decision on a specific evidence state for this matter.

Reject R

Reopen as needs_source (it was unsupported)
→ gutter becomes rejected

Rejected cells are excluded from the client-ready output by default, but the decision record stays in the audit export.

Challenge C

Structured disagreement — you dissent but haven’t resolved it.

wrong jurisdiction
quote out of context
authority overruled
superseded version
→ gutter becomes challenged (escalated)

Resolution. Re-opening a challenged cell and choosing Accept or Reject supersedes the challenge; the audit record preserves which claims were affected and by whom. Reviewer role is read-only in 4A (addendum §7) — these actions are disabled for reviewers with a clear tooltip until review permissions are explicitly added.