Protected workflow
Foundation demo boundary
Parallel slice foundation
Blazor foundation shell
Shared workspace context, workspace updates, connected workflow primitives, and production page patterns for future vertical slices.
Workspace context
Workspace and update context
The shell subscribes once per circuit to workspace-filtered update notifications.
Development authentication only
This local cookie sign-in is deterministic test support; production OAuth, OIDC, SSO, and invite flows are intentionally deferred.
Sign in as development memberWorkspace updates
Workspace update states
Routes should render update status near the page header and pause version-sensitive actions while workspace views are saving or need refresh.
Developer evidence
- Global position
- 11
- Correlation
- foundation-demo-pending
- Workspace view updates
- No projection names reported.
Developer evidence
- Global position
- 12
- Correlation
- foundation-demo-fresh
- Workspace view updates
- FoundationDemoProjection, TimelineProjection
Developer evidence
- Global position
- 13
- Correlation
- foundation-demo-stale
- Workspace view updates
- TimelineProjection
Connected workflow
Connected lifecycle primitives
Routes compose these render-only helpers from their current workspace views so users can see lifecycle position, related work, evidence, and the next safe step.
Source and evidence
Supplier catalogue summary is workspace-restricted and stored behind the asset-store abstraction.
Human approval remains required before protected supplier, payment, warehouse, or commerce actions.
Safe-language policy examples
- Bare live publish label: Blocked — Action wording uses "publish" without fake, preview, simulation, record, read-only, external record, or approval required context.
- Preview record label: Allowed — Action wording is safe.
Reusable states Reusable UI state patterns Loading, error, access, review, conflict, and approval examples.
Reusable states
Reusable UI state patterns
Future slices should compose these states instead of inventing one-off loading, error, access, review, update-conflict, or approval panels.
Authentication required
Login required
Sign in as a workspace member before viewing private workspace context.
The current skeleton uses deterministic development auth only; production identity is intentionally not configured here.
Empty state
No workspace records yet
This workspace view has no records to show yet. Capture safe context or connect related work to begin the workflow.
Loading
Loading workspace view
Waiting for workspace updates, product context, and source evidence to become available.
Error
Workspace view needs attention
A recoverable problem occurred. Diagnostics are redacted; refresh or return to the owning workflow if this continues.
Developer evidence
Trace identifier redacted-demo-trace; no private provider payloads are shown.
Review needed
Review needed
Resolve the highlighted details before saving this action.
- Name: A value is required.
- Record version: Refresh the workspace view before saving this action.
Developer evidence
- Name: A value is required.
- ExpectedVersion: Refresh the workspace view before saving this action.
Update conflict
Workspace view changed
The workspace view changed before this action was saved. Refresh to review the latest activity, then try again.
Latest activity is available.
Refresh the workspace view, review the newer activity, and then save again if the change is still correct.
Developer evidence
- Stream
- workspace-development
- Expected version
- 3
- Actual version
- 4
Approval required
Approval required
Attach an approval reference before continuing with costly, public, legally sensitive, or irreversible work.
- Approval reference
- Stable safe reference recorded for this review.
- Safe handling
- Only redacted summaries and stable references are shown in approval views.
Developer evidence
- Snapshot hash
- sha256:0f4c2a7b9d8e6f10
- Payload evidence
- Redacted approval payload evidence remains available for audit review only.
Approval blocked
Approval blocked
Edit permission is separate from approval authority. Costly, public, legally sensitive, or irreversible work needs explicit human approval.
- Approval reference
- Stable safe reference recorded for this review.
- Safe handling
- Only redacted summaries and stable references are shown in approval views.
Developer evidence
- Snapshot hash
- sha256:19b8d3e6a0c4f275
- Payload evidence
- Redacted approval payload evidence remains available for audit review only.
Approval pending
Approval pending
A human approver is reviewing the redacted approval reference. The action remains disabled until approval is granted.
- Approval reference
- Stable safe reference recorded for this review.
- Safe handling
- Only redacted summaries and stable references are shown in approval views.
Developer evidence
- Snapshot hash
- sha256:2a5d9f31c6e0b842
- Payload evidence
- Redacted approval payload evidence remains available for audit review only.
Approval rejected
Approval rejected
The approval request was rejected. Rebuild the approval reference and request a new review if the action is still needed.
- Approval reference
- Stable safe reference recorded for this review.
- Safe handling
- Only redacted summaries and stable references are shown in approval views.
Developer evidence
- Snapshot hash
- sha256:3c7e0a42b9f1d658
- Payload evidence
- Redacted approval payload evidence remains available for audit review only.
Approval expired
Approval expired
The approval window closed. Request a fresh approval for the current record.
- Approval reference
- Stable safe reference recorded for this review.
- Safe handling
- Only redacted summaries and stable references are shown in approval views.
Developer evidence
- Snapshot hash
- sha256:4e1f8b63a2d7c905
- Payload evidence
- Redacted approval payload evidence remains available for audit review only.
Review needed
Review needed
The approval reference no longer matches the latest workspace activity. Refresh, review, and request approval again.
- Approval reference
- Stable safe reference recorded for this review.
- Safe handling
- Only redacted summaries and stable references are shown in approval views.
Developer evidence
- Snapshot hash
- sha256:5f2a9c74e3b8d016
- Payload evidence
- Redacted approval payload evidence remains available for audit review only.
Product page primitives Shared status, filter, and timeline patterns Expandable route-building examples keep the demo page scannable.
Product page primitives
Shared page, status, metric, filter, and timeline patterns
These primitives give every route the same hierarchy while preserving feature-owned workflow behavior.
Status panels pair copy with semantic tone
Demo timeline
-
Workspace context resolved
Shell state is scoped to the active workspace.
-
Workspace updates changed
Routes use the same badge and status pattern.
-
Safety copy preserved
No live provider calls or irreversible actions are introduced.
Assets File asset UI patterns Safe metadata, redaction, missing content, and approval warning examples.
Assets
File asset UI patterns
Future catalogue, generated-media, and commerce slices should render safe file metadata while raw bytes remain behind the file asset store.
File asset reference
Summer 2026 supplier catalogue.pdf
Safe metadata only. Raw file bytes stay behind the file asset store and are not embedded in events or projections.
- Media type
- application/pdf
- Size
- 4.8 MB
- Pages
- 12
- Provenance
- 1 provenance reference
- Source coordinates
- 1 source coordinate
Safe summary
12-page handbag catalogue; supplier-provided pricing ranges pending review
Supplier portal credential
Credential values stay behind the configured secret boundary; this component never accepts the raw private value.
Asset availability
Asset content unavailable
The workspace can show safe metadata, but the raw file content is missing or unavailable.
Asset content unavailable for this workspace. Storage diagnostic redacted: [redacted reference] [redacted local path] [redacted provider payload] [redacted provider payload].
Sensitive asset action warning
Review before read/download/export
Reads, downloads, and exports of confidential, sensitive, or approval-protected assets must preserve audit context and avoid exposing private provider diagnostics.
- Read attempts should use safe diagnostics and record who accessed the asset and why.
- Download and export attempts for confidential, sensitive, or approval-protected export assets require explicit human approval in future command paths.
- This pattern shows warning copy only; it does not upload, download, export, or call live integrations.
Exports stay approval-protected until a future approved workflow provides an explicit human approval reference.