NPM Package/docs/workflows/takeoff/verification
Verification Checklist
Verify the NPM ribbon, calibration sidebar, scale library, state machine, and recovery behavior before release.
Test with a drawing that has no active scale, a drawing with a known scale, and a reference length suitable for calibration.
- Header, ribbon, sidebar toggle, active-scale card, and Canvas workspace remain usable at desktop and mobile sizes.
- Ribbon measurement actions stay disabled until a snapshot confirms an active scale.
- The Calibrate tab shows Start, Cancel, picked length, Calculate, candidate, and Apply only in their valid states.
- The floating picking banner appears while calibration is active and disappears after finished or cancel.
- Metric and Imperial calibration fields enforce the documented NPM validation rules.
- Calculator presets create a complete scale with
isSelected: trueand wait for snapshot confirmation. - Scale library rows use full known scale data; deletion affects host-only custom presets, never undocumented Canvas scale deletion.
- Apply uses
viewer.measurements.calibration.apply({ requestId, fileIndex })and tools remain gated until its snapshot confirms an active scale. - File change, cancel, timeout, and unmount clear request-specific state and listeners.
