Tutorial
How we know it works
The test report, recordings and the list of scenarios behind this tutorial.
Every page of this tutorial is checked by end-to-end tests. They run the real Auto Center app, click through every screen as a person would, and fail if anything is missing or wrong. The screenshots you have seen come from those runs, not from mock-ups.
100 scenarios, 100 passing. Open the full test report
What is tested
Set up the shop (owner admin) (11)
- ✓ Add a team member linked to RobOS
- ✓ Change a team member's role and hourly cost
- ✓ Deactivate someone who has left
- ✓ You cannot deactivate someone who still has open work
- ✓ Save the shop's details
- ✓ Bring in your existing customers and their cars
- ✓ A bad row stops the whole customer import
- ✓ Add a part to the catalog and find it again
- ✓ Import a supplier price list
- ✓ Review the questions the front desk asks
- ✓ See whether your records are backed up
Take the customer's call at the front desk (17)
- ✓ A new customer phones in
- ✓ An existing customer is found by phone number
- ✓ An existing customer is found by email
- ✓ An existing customer is found by name
- ✓ Add another vehicle for an existing customer
- ✓ A customer texts in and prefers text messages
- ✓ A walk-in who only has an email address
- ✓ A new customer needs a phone number or an email
- ✓ An unknown customer can be added straight from the search
- ✓ The vehicle year, make and model are required
- ✓ A car that already has an open ticket cannot be taken in twice
- ✓ Questions about the problem come from the knowledge graph
- ✓ Routine service takes several choices
- ✓ Unsafe cars are flagged urgent
- ✓ A problem must be chosen
- ✓ Log a call, text or email about a ticket
- ✓ Prepare the estimate and record approval from the front desk
Work the ticket at the mechanic bench (14)
- ✓ Pick your name and take a ticket
- ✓ See what the customer told the front desk
- ✓ Record what you found
- ✓ Request a part
- ✓ Order and receive the part
- ✓ Log your hours
- ✓ Time the job with a stopwatch
- ✓ Unrealistic hours are refused
- ✓ Add notes as you go
- ✓ Tell the front desk you found more work
- ✓ A job cannot be finished while a part is still on order
- ✓ A job cannot be finished with the timer running
- ✓ Finish the job and hand it to checkout
- ✓ Switch to another mechanic
Check the customer out (6)
- ✓ Only finished cars are ready for checkout
- ✓ Issue the invoice from the approved estimate
- ✓ Charges well above the estimate need the customer's approval first
- ✓ Take payment in more than one go
- ✓ The customer cannot leave with a balance
- ✓ Pay in full, hand over the keys and close the ticket
One whole repair, using the four menus (1)
- ✓ A complete repair using the four menus
Read the car with an OBD-II adapter (6)
- ✓ Connect to the adapter and read the codes
- ✓ Save the scan on the ticket
- ✓ Put the codes in the diagnosis
- ✓ A scan from a different car is not saved
- ✓ Clear the codes after the repair
- ✓ Watch live engine data
Build your shop team (4)
- ✓ Add a technician linked to a RobOS person
- ✓ Add a teammate who is not in RobOS yet
- ✓ The same teammate cannot be added twice
- ✓ A malformed hourly cost is rejected
Add a customer (4)
- ✓ Add a customer linked to a RobOS user and group
- ✓ Add a walk-in customer with only contact details
- ✓ An invalid email address is rejected
- ✓ The same customer is not created twice
Register the customer's vehicle (3)
- ✓ Add a vehicle to a customer
- ✓ A malformed VIN is rejected
- ✓ The same VIN cannot be on file twice
Find makes, models, parts and codes as you type (8)
- ✓ Suggest makes as you type
- ✓ Models narrow to the chosen make
- ✓ Pick a year the model was actually sold
- ✓ Find a vehicle by year, make and model in one go
- ✓ Choose a suggestion with the keyboard
- ✓ A vehicle that is not in the catalog can still be added
- ✓ Look up trouble codes by number or by description
- ✓ Pick the customer's vehicle when taking a car in
Take the car in (3)
- ✓ Take in a car and open a repair ticket
- ✓ A car cannot have two open repairs
- ✓ The ticket is backed up
Diagnose and quote (5)
- ✓ Record the diagnosis
- ✓ Send an itemized estimate
- ✓ An estimate line must have a description
- ✓ The customer approves the estimate
- ✓ The customer declines, the shop revises, the customer approves
Fix the car (4)
- ✓ Record the parts used
- ✓ Track hours for each teammate
- ✓ Unrealistic hours are rejected
- ✓ An invoice needs logged hours
Invoice, collect payment and hand the car back (4)
- ✓ Issue the invoice
- ✓ The customer pays part now and the rest later
- ✓ The car cannot leave with a balance
- ✓ Pay in full and return the vehicle
Every repair is tracked from start to finish (3)
- ✓ The ticket history lists each step in order
- ✓ Every step is backed up
- ✓ Tickets survive closing and reopening the app
From first call to a paid, returned car (1)
- ✓ A brake job from walk-in to offboard
Parts catalog and estimate suggestions (6)
- ✓ Suggest common parts and labor jobs on an estimate
- ✓ Your own parts come first, with supplier and price filled in
- ✓ Parts that fit the vehicle are suggested first
- ✓ Record parts used from the catalog
- ✓ Import a supplier price list
- ✓ A bad row stops the whole import
Run the tests yourself
cd packages/auto-center
npm install
npm run e2e:lifecycle # runs every scenario, with video
node scripts/build-guide.js # rebuilds these pages from the run