Estimate: 14m · Depends on: 2.4.1, 2.3.6
The two write affordances the scope names — and the ONLY ones on the detail page (everything else is the Edit form). Both REUSE 2.3.6's components + gated actions; this Subtask wires them inline, it does not build new mutation primitives.
Status control (workflow-aware). The header status pill becomes a StatusPicker (2.3.6) that offers only the LEGAL next statuses for the current one — the project's transitions in restricted mode, any status in open mode (2.2's canTransition / the workflow context already in the getIssueDetail bundle). Selecting one calls 2.2.4's gated updateStatus via a detail-page Server Action (changeStatusAction — reuse 2.3.6's if its signature fits, else a thin sibling); an illegal/stale transition surfaces the typed error inline; success toasts + revalidatePaths the detail route so the pill + the activity trail reconcile.
Assignee control. The sidebar assignee field becomes an AssigneePicker (2.3.6, a workspace-member combobox) that reassigns via the now-status-free updateWorkItem (2.3.6's finding-#46 cleanup) through an updateAssigneeAction — assignee is a non-status patch field, so it rides the ordinary patch path (which still writes a revision). "Unassign" is supported (null assignee). Optimistic + toast + revalidate. Permission: any project member can change status/assignee in v1 (no per-field RBAC until Epic 6) — but the Server Actions still carry the explicit workspaceId/membership gate (finding #26).
updateStatus; an illegal/stale move surfaces the typed error inline and does not change the pill.updateWorkItem; a revision row is written for the change.StatusPicker/AssigneePicker — no parallel components; the detail page and edit form share them.StatusPicker / AssigneePicker + changeStatusAction / the status-free updateWorkItem (finding #46) — reuse, don't rebuildworkItemsService.updateStatus (2.2.4) + workflowsService.canTransition (2.2.3) — the gated pathsIssueDetailDto workflow context (statuses + legal transitions) — the picker's option sourcemotir-core/CLAUDE.md — Server Action / 4-layer / workspaceId-gate rules