Troubleshoot the Apple Store Lab
Diagnose from the outside inward: host port, containers, HTTP response, Laravel logs, then storage or dependencies.
Run the confidence checks
make start
make logs
curl -i http://localhost:8000/apples
make test
Use make shell for inspection inside the application container.
The storefront does not open
- Confirm Docker is running.
- Read the first service error from
make start. - Check whether another program uses port
8000. - Use
http://localhost:8000, not HTTPS.
A request returns 419
Reload the page, confirm cookies are enabled, and inspect the request's X-CSRF-TOKEN header. Do not disable CSRF protection. In scaled mode, a changing or missing cart may be part of the session experiment; record the instance and cookie name before changing anything.
A request returns 422
Inspect the JSON errors object and compare its field names with the submitted JSON. Use only placeholder guest information.
A request returns 500
Record the request time and identifier, then inspect make logs. Start with the first relevant application exception. Before resubmitting checkout, determine whether the failed request left an order or inventory change.
Assets are missing
Inspect failed JavaScript and CSS requests and browser console errors. make start builds the containerized frontend assets; do not install host Node dependencies as a workaround.
A demonstration behaves differently
- Confirm
curlandjqare installed. - Run one demonstration at a time.
- Confirm whether it requires
make singleormake scaled. - Capture exact statuses, duration, instance markers, and logs.
- Repeat timing-sensitive experiments before treating the result as deterministic.
Tests fail
Run make test and investigate the first meaningful failure. Confirm no demonstration still injects latency or failure. Use make reset only when discarding local workshop data is acceptable.
When asking for help, provide the command, timestamp, expected result, actual status or body, topology, and the smallest relevant log excerpt. Never publish .env contents, cookies, or tokens.