docs(design): record deployed browser verification
@@ -299,7 +299,15 @@ None. External service credentials may be absent; use the documented demo/degrad
|
|||||||
- `cd frontend && playwright test --reporter=line` — **18 passed** including the full
|
- `cd frontend && playwright test --reporter=line` — **18 passed** including the full
|
||||||
five-minute demo, every interactive route, return review semantics and four viewport
|
five-minute demo, every interactive route, return review semantics and four viewport
|
||||||
overflow checks.
|
overflow checks.
|
||||||
- Exact next action after this record: commit this evidence set, push
|
- Review deployment updated at `http://192.168.10.150:1236` with persistent PostgreSQL
|
||||||
`design/mobilityops-premium-ui`, and deploy that branch to the
|
and n8n volumes preserved. Deployed smoke: all ten authenticated routes plus login at
|
||||||
existing Unraid review stack without touching master or persistent volumes; verify live
|
desktop and mobile sizes rendered without alert state or horizontal overflow; browser console had zero
|
||||||
health and responsive UI.
|
warnings/errors; seven authenticated API paths returned 200; PostgreSQL/API were
|
||||||
|
healthy and n8n `/healthz` returned `{"status":"ok"}`.
|
||||||
|
- The repository compose file uses developer ports, so the existing review deployment's
|
||||||
|
established bindings were restored after archive extraction: web `1236:80`, n8n
|
||||||
|
`127.0.0.1:15678:5678`, and no host API port. This is deployment configuration only;
|
||||||
|
no unrelated container was altered.
|
||||||
|
- Exact next action after this record: commit and push the deployed evidence, update the
|
||||||
|
deployed source-revision marker to that final documentation commit without rebuilding
|
||||||
|
unchanged images, then hand the branch off for review. Do not merge master automatically.
|
||||||
|
|||||||
@@ -49,11 +49,16 @@ return registration gained an evidence-based review boundary before commit.
|
|||||||
| Browser journeys | 18 passed locally |
|
| Browser journeys | 18 passed locally |
|
||||||
| Horizontal overflow | none at 390/768/1280/1440 px |
|
| Horizontal overflow | none at 390/768/1280/1440 px |
|
||||||
| Accessibility | named landmarks, skip link, visible focus, text-plus-shape status, labelled mobile rows, reduced-motion support |
|
| Accessibility | named landmarks, skip link, visible focus, text-plus-shape status, labelled mobile rows, reduced-motion support |
|
||||||
| Console/network | pending final deployed smoke test; local API/browser journeys are clean |
|
| Deployed browser smoke | passed on all 10 authenticated routes plus login at desktop and mobile sizes |
|
||||||
|
| Console/network | 0 browser warnings/errors; 7 authenticated API paths returned HTTP 200 |
|
||||||
|
|
||||||
All displayed operational counts remain derived from the existing persisted API data.
|
All displayed operational counts remain derived from the existing persisted API data.
|
||||||
Synthetic-data labelling is persistent on login and authenticated surfaces.
|
Synthetic-data labelling is persistent on login and authenticated surfaces.
|
||||||
|
|
||||||
|
Deployed evidence is stored in `artifacts/design-validation/implementation/deployed/`.
|
||||||
|
The review stack reports healthy PostgreSQL/API state, HTTP 200 from the web application,
|
||||||
|
and `{"status":"ok"}` from n8n's internal health endpoint.
|
||||||
|
|
||||||
## Performance observations
|
## Performance observations
|
||||||
|
|
||||||
No runtime font, image or animation dependency was added. The application uses inline SVG
|
No runtime font, image or animation dependency was added. The application uses inline SVG
|
||||||
@@ -61,8 +66,9 @@ and CSS visuals, and the production bundle remains appropriate for this internal
|
|||||||
|
|
||||||
## Known limitations
|
## Known limitations
|
||||||
|
|
||||||
- Global search is present as a shell affordance but does not execute a cross-entity
|
- The global search visual is a non-submitting orientation cue because no cross-entity
|
||||||
query because no matching API contract exists; route-level search and filters are live.
|
query API exists; all route-level search and filters are live. It is intentionally not
|
||||||
|
presented as an action button.
|
||||||
- The MCP Hub state is correctly shown as not configured in the current PoC rather than
|
- The MCP Hub state is correctly shown as not configured in the current PoC rather than
|
||||||
simulated as healthy.
|
simulated as healthy.
|
||||||
- Live RAGcore and MCP Hub round trips remain subject to the existing environment limits
|
- Live RAGcore and MCP Hub round trips remain subject to the existing environment limits
|
||||||
|
|||||||
|
After Width: | Height: | Size: 62 KiB |
|
After Width: | Height: | Size: 67 KiB |
|
After Width: | Height: | Size: 80 KiB |
|
After Width: | Height: | Size: 80 KiB |
|
After Width: | Height: | Size: 67 KiB |
|
After Width: | Height: | Size: 72 KiB |
|
After Width: | Height: | Size: 82 KiB |
|
After Width: | Height: | Size: 75 KiB |
|
After Width: | Height: | Size: 63 KiB |
|
After Width: | Height: | Size: 74 KiB |
|
After Width: | Height: | Size: 55 KiB |
|
After Width: | Height: | Size: 27 KiB |
|
After Width: | Height: | Size: 25 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 37 KiB |
|
After Width: | Height: | Size: 33 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 30 KiB |
|
After Width: | Height: | Size: 39 KiB |
|
After Width: | Height: | Size: 39 KiB |
|
After Width: | Height: | Size: 28 KiB |
|
After Width: | Height: | Size: 25 KiB |
@@ -38,6 +38,11 @@ Mobile:
|
|||||||
|
|
||||||
The complete capture set is in `artifacts/design-validation/implementation/`.
|
The complete capture set is in `artifacts/design-validation/implementation/`.
|
||||||
|
|
||||||
|
Deployed review captures taken from `http://192.168.10.150:1236` are stored under
|
||||||
|
`artifacts/design-validation/implementation/deployed/`. The deployed smoke covered login,
|
||||||
|
dashboard, fleet list/detail, bookings list/active return, quality list/duplicate review,
|
||||||
|
knowledge, integrations and audit at both desktop and mobile sizes.
|
||||||
|
|
||||||
## Responsive evidence
|
## Responsive evidence
|
||||||
|
|
||||||
Browser evaluation measured the document element after authenticated page render:
|
Browser evaluation measured the document element after authenticated page render:
|
||||||
@@ -51,6 +56,19 @@ Browser evaluation measured the document element after authenticated page render
|
|||||||
|
|
||||||
The same widths are automated in `frontend/e2e/ui-redesign.spec.ts`.
|
The same widths are automated in `frontend/e2e/ui-redesign.spec.ts`.
|
||||||
|
|
||||||
|
## Deployed smoke result
|
||||||
|
|
||||||
|
- All ten authenticated desktop routes rendered their expected page heading with no
|
||||||
|
visible alert state and no horizontal overflow.
|
||||||
|
- The same ten routes plus login rendered at 390 px with no alert state and
|
||||||
|
`scrollWidth === clientWidth`.
|
||||||
|
- Browser console: zero error or warning entries after the full route smoke.
|
||||||
|
- Authenticated network verification through the deployed web proxy returned HTTP 200
|
||||||
|
for dashboard, vehicles, active booking, open quality issues, knowledge status,
|
||||||
|
workflows and audit.
|
||||||
|
- Container verification: PostgreSQL and API healthy, web HTTP 200, n8n `/healthz`
|
||||||
|
returned `{"status":"ok"}`. Existing database and n8n volumes were preserved.
|
||||||
|
|
||||||
## Performance choices
|
## Performance choices
|
||||||
|
|
||||||
- No image runtime dependency and no animation library were added.
|
- No image runtime dependency and no animation library were added.
|
||||||
|
|||||||