06. First Slice Acceptance
Back to Requirements Hub
This page covers original Section 13.
13. Acceptance Characteristics of the First Strong Vertical Slice
13.1 User-Visible Demo Path
The first strong vertical slice must allow a user to:
- Launch the app
- Connect to the simulated machine
- Load a simple seeded recipe
- Home the stage
- Start an inspection run
- See machine state changes
- See stage position updates over time
- See telemetry updates
- See frame preview updates or placeholder frame progression
- See defect count change during the run
- Stop or abort the run
- Observe alarms when faults are injected
- Review a simple run summary
13.2 Pass / Fail Acceptance Criteria
The first slice is acceptable only if all of the following are true:
- On launch, the app shows a disconnected machine, no loaded run, and command availability consistent with the initial canonical app state.
- In the disconnected state,
Connectis enabled whileHome,Start,Stop, andAbortare not. - Loading a seeded recipe updates the displayed current recipe and stores an ordered scan plan with at least 3 scan points.
- A successful connection transitions through
Disconnected -> Connecting -> Connected, and a failed connection attempt returns toDisconnectedwith visible diagnostics. - Homing transitions through
Homingand results in a homed motion state beforeStartbecomes available. - Starting from valid preconditions transitions through
Preparing -> Running, visits scan points in order, and produces progress, telemetry, preview, and defect updates during the run. Stopduring an active run results in terminal stateStopped, and no new scan point begins after the stop request is accepted.Abortduring active work results in terminal stateAbortedwithout waiting for all remaining scan points to finish.- Injecting a critical fault raises an active alarm, transitions the workflow to
Faulted, blocks invalid commands, and preserves a run summary if a run was active. - Every terminal run outcome stores exactly one run summary with status
Completed,Stopped,Aborted, orFaulted.
13.3 Minimum Automated Verification for the First Slice
At minimum, the first slice should have automated tests for:
- start precondition guards
- stop versus abort terminal behavior
- fault-to-
Faultedtransition and recovery guard behavior - bounded or explicitly coalesced streaming behavior at the application boundary