# Quickstart — Ops-UX Constitution Rollout (v1.3.0 Alignment) (055)

This feature is a repo-wide migration. It standardizes operation feedback across:

- **Toast** (queued only)
- **Progress widget** (queued/running only)
- **DB notification** (terminal only)

## Dev setup

Use Sail-first:

- `./vendor/bin/sail up -d`
- `./vendor/bin/sail artisan migrate`

## Key places in the codebase

- Operation runs table: `operation_runs`
- Monitoring UI: Filament resources/pages for operation runs
- Existing widget: Livewire `BulkOperationProgress` injected via Filament render hook
- Canonical run links helper: `App\Support\OperationRunLinks`

## What to change (high level)

1) Centralize operation label + UX copy
- Create/update catalog/presenter so widget + notification + toast share strings.

2) Enforce queued vs terminal feedback split
- Toast for `queued`
- Widget for `queued|running`
- DB notification for terminal states only

3) Enforce canonical “View run” link
- All surfaces link to Monitoring → Operations → Run Detail.

4) Metrics normalization
- Use `summary_counts` only.
- Apply whitelist + integer normalization.

## How to validate

Run targeted tests:

- `./vendor/bin/sail artisan test --group=ops-ux`

Then run Pint:

- `./vendor/bin/pint --dirty`
