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

One whole repair, from the first call to the keys going back. Watch on YouTube

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