Provenance-first legal review workbench
These wireframes realise the 12 screens in
Phase-4-low-fi-ux-blueprint.md §2, read through the controlling
Phase-4-ux-api-decision-addendum.md and the
Phase-4-consolidated-design-direction.md. They show layout and behaviour,
not final visual design. Every screen carries honest [API-REALITY]
tags so the planning pack does not under-scope. The addendum supersedes the blueprint where they conflict
(authority lookup is exact-citation only; quote text needs a secure preview API; the client-ready gate is
server-computed; cell actions fan out to claims; there is no per-cell client_ready gutter;
canonical warning codes and a permission matrix apply; the grid supports real wide-table mechanics).
Phase 4A — first vertical slice Phase 4A
4A
The first slice, end to end: matter workspace → create / select a review table → add questions →
list persisted cells → select a cell → inspect claim & support metadata →
accept / reject / challenge with optimistic concurrency. These screens show only what 4A builds.
Authority attach, stale refresh, client-ready / export, the command palette and the assistant are
out of 4A — shown disabled here and on dedicated preview screens below.
All screens
Each card is tagged with the phase that builds it. 4A is the buildable first slice; 4B/4C/deferred screens are honest previews, not 4A scope.
2.1 4A
Matters launcher
The only list screen. Cards / table, search, matter status.
2.2 4A
Empty matter + review table
Guided upload, create a review table, add the first question.
2.3 4A
Three-zone workbench
Rail / grid / cell inspector. Replaces the tabbed page.
2.4 4A
Review grid (persisted cells)
Documents × questions, support glyphs, review gutter, generation status.
2.5 4A
Cell + provenance inspector
Claim, supports, secure preview, status metadata, accept/reject/challenge.
2.8 4A
Accept / reject / challenge
Cell actions that fan out to claims; structured challenge codes; optimistic concurrency.
2.11 4A
First-slice system states
No table / no questions / no cells / loading / conflict / write denied / preview fallback.
2.6 4B preview
Document viewer split
Locator-synced highlight beside the grid. Real render is post-4A.
2.7 4B preview
Authority attach
Exact citation / provider ID → currentness before attach. Not in 4A.
2.9 4B preview
Stale detection + refresh
Stale cascade and per-cell evidence refresh. Not in 4A.
2.10 4C preview
Client-ready gate + export
Server-computed gate; CSV / XLSX / HTML export. Not in 4A.
2.12 4C preview
13" constrained width
Responsive polish: rail → icons, inspector → drawer.
2.13 Deferred
Contextual assistant
No chatbot. Where a scoped assistant would live, if/when built. Not in 4A/4B/4C.
Legend
Support status (cell glyph)
● registered_with_locator — quote / locator support
◐ registered_file_level — file-level only (weak)
○ not_registered — source not registered
✗ unsupported — no support found
~ stale — support superseded
Review gutter (left edge — colour + pattern + label)
draft / needs review (solid grey)
accepted (solid green)
rejected (solid red)
challenged / escalated (solid amber)
stale (dashed amber)
Addendum §5: client_ready is not a per-cell gutter — it is a matter / export gate state only.
Authority & warnings
⚖ authority attached & checked
⚖? authority not checked
⚠N N warning codes on this cell
No percentages, gauges, or “high/medium/low confidence” appear anywhere.
[API-REALITY] tags
UI-NOW UI only — works against current API
READ-P3 supported by current Phase 3 read APIs
API-NEW requires Phase 4 API / schema work
JOB-NEW depends on Phase 4 backend job orchestration
DEFER out of Phase 4
Canonical warning dictionary API-NEW
From addendum §6 — UI copy comes from the dictionary; export includes both machine code and label; blocker severity feeds the client-ready gate.
| Code | Severity | Display label | Default action |
| unsupported_claim | blocker | Unsupported claim | Add source/authority or reject |
| authority_currentness_unverified | blocker* | Currentness not verified | Verify authority / currentness |
| in_force_status_unverified | blocker* | In-force status unverified | Verify in-force status |
| source_version_stale | blocker | Source version stale | Refresh evidence |
| wrong_source_type_for_claim | blocker | Wrong source type | Replace support |
| lawyer_review_required | blocker | Lawyer review required | Review and decide |
| matter_only_not_checked_against_law | needs review | Matter support only | Add/check authority where legal |
| authority_treatment_unchecked | needs review | Treatment not checked | Check treatment or caveat |
| pending_amendments_not_checked | needs review | Pending amendments not checked | Verify amendments |
| provider_identifier_ambiguous | needs review | Provider identifier ambiguous | Choose exact authority |
| authority_coverage_incomplete | caveat | Authority coverage incomplete | Review caveat |
| provider_rate_limited | caveat | Provider rate-limited | Retry later |
| licence_reuse_limited | caveat | Licence limits reuse | Review export permissions |
* Blocker for legal / legislative authority claims. Full dictionary in addendum §6.
Phase 4A permission matrix API-NEW
From addendum §7 — unavailable actions are disabled with a clear tooltip, never hidden. Reviewer is read-only in 4A unless new review permissions are explicitly added.
| Action | Owner | Member | Reviewer | Client viewer |
| View matter / workbench | yes | yes | yes | no |
| Upload documents | yes | yes | no | no |
| Create review table / question | yes | yes | no | no |
| View provenance / support preview | yes | yes | yes | no |
| Accept / reject / challenge | yes | yes | no (4A) | no |
| Add authority / refresh evidence | yes | yes | no | no |
| Export / client-ready | yes | yes | no (4A) | no |
Phase 4 tranche boundaries
Phase 4A — Review table spine
Persistent review table / question / cell schema · document × question generation · secure support preview · cell-bound inspector · accept/reject/challenge writes (claim-level) · permission enforcement · removal of scaffold confidence & local types.
Phase 4B — Authority & staleness
Exact citation / provider-ID authority attach · server-side eligibility · stale cascade view · per-cell refresh job · warning dictionary & severity · provider failure / rate-limit UX.
Phase 4C — Export, templates, polish
Server-computed client-ready gate · CSV/XLSX/HTML export with citations + audit · redaction/caveat options · curated templates · command palette · shortcut overlay · responsive & accessibility hardening.