75 lines
5.0 KiB
Markdown
75 lines
5.0 KiB
Markdown
# Fleet Ops — final acceptance evidence
|
|
|
|
## Accepted implementation
|
|
|
|
- Runtime commit: `eecfcb4b79a3dd0d36d5b85580e09b9b0432e479` (`master`; runtime code from `cb7edb0`).
|
|
- Live demo: `http://192.168.10.150:1236` — public passwordless synthetic demo.
|
|
- Deployment: Unraid `/mnt/user/appdata/mobilityops`, Compose project `mobilityops`.
|
|
- Database migration: `b913a72e8c14 (head)`.
|
|
- Product name: Fleet Ops; MobilityOps remains the technical repository/deployment ID.
|
|
|
|
## Clean acceptance — 2026-08-10
|
|
|
|
```text
|
|
Backend, isolated PostgreSQL: 241 passed, zero warnings
|
|
Playwright, fresh local build: 152 passed (5.4 min)
|
|
Playwright, live production: 152 passed (4.7 min)
|
|
Ruff: clean
|
|
Mypy: clean across 58 source files
|
|
Frontend lint/build: passed
|
|
npm audit, full and prod: 0 vulnerabilities
|
|
Alembic: b913a72e8c14 (head)
|
|
```
|
|
|
|
The browser suite covers both roles, protected routes, booking/return/maintenance/user/privacy workflows, five data-quality resolution types, correlated audit, retryable orchestration, grounded knowledge in three languages, the complete guided demo, the recruiter highlights, keyboard behaviour and responsive layouts from 360 to 1440 px.
|
|
|
|
The provider matrix explicitly covers both valid title contracts: the deterministic provider uses Markdown frontmatter titles, while production RAGcore returns curated localized presentation titles. Both must include the language-specific source fragment. The focused live matrix passed 3/3, followed by the complete 152/152 green production run.
|
|
|
|
## Production hand-off state
|
|
|
|
The final reset completed immediately before the verified Hub call at `2026-08-10T19:16Z` and restored:
|
|
|
|
```text
|
|
users 2 · customers 180 · vehicles 50 · bookings 254 · inspections 75
|
|
maintenance 40 · data-quality issues 33 · workflow runs 20
|
|
scenario_integrity.all_ready = true (5/5 scenarios)
|
|
```
|
|
|
|
API readiness is `ready`, PostgreSQL is `up`, and API, web, database, scheduled backup, Prometheus and Grafana are running healthy/current. No traceback or critical error appears in post-deployment API/backup logs.
|
|
|
|
A pre-deployment custom-format backup was created and independently verified by SHA-256 plus `pg_restore --list`:
|
|
|
|
`/mnt/user/appdata/mobilityops/backups/postgres/mobilityops-20260810T185833Z.dump`
|
|
|
|
## External integration evidence
|
|
|
|
- **Existing central n8n:** configured, dispatch enabled and operational. All four expected workflows have recent healthy heartbeats. The reset state contains 19 successful runs, zero pending, zero unexpected failures and one explicitly synthetic failed-retry scenario.
|
|
- **RAGcore:** reachable and ready for tenant `northstar-mobility-demo`, workspace `mobilityops`, collection `internal-procedures`. Exact identity lookups independently confirm 11/11 active published documents in each of NL/EN/FR; the latest n8n report separately records 33 synchronized documents and zero failures. The canonical parsed-artifact hash is not misrepresented as a raw-source hash.
|
|
- **ITWorx MCP Hub:** registration is enabled, the Hub is reachable and Fleet Ops is **operational**. Three real `mobilityops.operations.summary` verification calls are audited under the Hub's tenant-bound client identity; the final short-lived bearer produced HTTP 200/JSON and HTTP 401 after immediate revocation. All exposed Fleet Ops tools remain read-only.
|
|
|
|
## Recruiter and visual acceptance
|
|
|
|
The public entry now offers a direct **90-second Highlights** route. It links three product actions to their engineering proof, while the **Engineering** workspace explains domain ownership, commit-before-orchestration, citation-bound AI, security and explicit scope.
|
|
|
|
Interactive live inspection confirmed:
|
|
|
|
- no horizontal overflow on Highlights or Engineering at desktop; automated coverage confirms 360/390 px mobile layouts;
|
|
- clear hierarchy, consistent primary actions and readable proof cards;
|
|
- compact remaining-attention action (count badge, two-line label, small directional icon) without the former stretched empty panel;
|
|
- truthful live n8n/RAGcore/MCP labels after reset, including 11 verified RAG documents and the real Hub client/tool evidence;
|
|
- no dead links, placeholder numbers or unexplained raw data-quality references;
|
|
- complete synthetic-data disclosure on login and in the persistent shell.
|
|
|
|
Current evidence images are in `artifacts/evidence/screenshots/`:
|
|
|
|
- `1-login.png`
|
|
- `2-highlights.png`
|
|
- `3-engineering-story.png`
|
|
- `4-dashboard.png`
|
|
- `5-knowledge-evidence.png`
|
|
- `6-highlights-mobile.png`
|
|
|
|
## Deliberate boundary
|
|
|
|
This is a completed, production-shaped public demo—not claimed customer adoption and not a general ERP. Accounting, payments, public reservations, CRM, inventory, HR, a second RAG stack, a separate MCP server and autonomous write agents remain intentionally excluded. A real personal-data rollout would additionally require the adopting organisation's identity provider, retention approvals, secrets lifecycle, alert ownership and disaster-recovery governance.
|