Initial MobilityOps build pack (docs, contracts, scaffold)
This commit is contained in:
@@ -0,0 +1,74 @@
|
||||
# Testing and acceptance
|
||||
|
||||
## Test layers
|
||||
|
||||
### Unit/domain
|
||||
|
||||
- vehicle status derivation;
|
||||
- return mileage handling;
|
||||
- duplicate scoring and merge rules;
|
||||
- booking overlap detection;
|
||||
- status conflict rules;
|
||||
- outbox retry schedule;
|
||||
- RAG answer-state mapping.
|
||||
|
||||
### Database/integration
|
||||
|
||||
- migrations from empty database;
|
||||
- constraints and transaction rollback;
|
||||
- concurrent return submissions;
|
||||
- idempotency replay;
|
||||
- customer merge atomicity;
|
||||
- outbox claim concurrency;
|
||||
- demo reset determinism.
|
||||
|
||||
### API contract
|
||||
|
||||
Validate OpenAPI and test authentication, role boundaries, filtering, error shape and service-token routes.
|
||||
|
||||
### External adapters
|
||||
|
||||
Use contract tests with fake HTTP servers for RAGcore, n8n and MCP Hub-facing APIs. Test timeout, unavailable, malformed response and success.
|
||||
|
||||
### Playwright
|
||||
|
||||
The five-minute demo must be automated:
|
||||
|
||||
1. login as Operations Manager;
|
||||
2. verify dashboard metrics are loaded;
|
||||
3. open active demo booking;
|
||||
4. register odometer-regression return;
|
||||
5. verify issue and queued workflow;
|
||||
6. resolve/merge the duplicate customer scenario;
|
||||
7. ask the damage procedure question and inspect citations;
|
||||
8. inspect audit entries;
|
||||
9. verify responsive navigation at mobile width.
|
||||
|
||||
## Clean-checkout acceptance
|
||||
|
||||
From a clean checkout:
|
||||
|
||||
1. copy `.env.example` to `.env`;
|
||||
2. run one documented bootstrap command;
|
||||
3. migrations and seed complete automatically or via one explicit command;
|
||||
4. web and API health become green;
|
||||
5. all automated tests pass;
|
||||
6. no secret is required for the demo provider;
|
||||
7. RAGcore unavailable state is clear and operational pages still work;
|
||||
8. n8n unavailable does not roll back a vehicle return;
|
||||
9. MCP provider endpoints are read-only and service-protected;
|
||||
10. no visible route contains dead actions or placeholder data.
|
||||
|
||||
## Final evidence
|
||||
|
||||
Create `artifacts/evidence/final-summary.md` containing:
|
||||
|
||||
- commit/tag;
|
||||
- exact commands;
|
||||
- test counts;
|
||||
- screenshots of the seven main pages;
|
||||
- RAGcore success and unavailable evidence;
|
||||
- n8n success and retry evidence;
|
||||
- MCP tool sample calls;
|
||||
- known PoC limitations;
|
||||
- truthful portfolio wording.
|
||||
Reference in New Issue
Block a user