Desk Review Prep

Portal page at /desk-review-prep (roles: triage, up_owner, up_admin) listing pre-staged post-production desk reviews from ppdr_staging (api migration 024). Two sections: 01 Desk Review Prep (staged / on hold / submitted-in-flight) and 02 Desk Review Completions (cert Approved + invoice Sent/Paid, or project Closed). Branch tabs + county dropdown + search per section. Staged rows deep-link into the intake wizard (/intake?staging_id=N), skipping owner approval.

Context panel integration (2026-07-29, portal 20214a6)

Rows with a created project (created_project_record_id set — converted and completed rows) open that project in the Shell’s right context panel on click, the same panel used by Desk Review Queue / Command Center, with the standard « Expand (full width up to the left sidebar) / Collapse → / ← Close controls in the panel header. Details:

  • Click gated to up_owner/up_admin — the Shell doesn’t render the context panel for triage users, so their rows stay inert (no false pointer cursor for Stephaney).
  • Staged rows have no project yet → not clickable.
  • Inner action buttons (Start Desk Review, Hold, Release, Remove) and Cert PDF chips stopPropagation so they don’t also open the panel.
  • Edits made through the panel refresh the worklist via onProjectUpdate so cert/invoice/status chips stay live.

Related: Entirely-v2, src/pages/DeskReviewPrep.tsx, src/components/Shell.tsx (context panel), src/contexts/ContextPanelContext.tsx.