docs(m1): plan of record — TDD card breakdown, UAT deployment, fixtures, worker dispatch

- docs/M1-POR.md: scope, TDD method, 6-card breakdown, deployment POR,
  test plan, real-slab fixtures, dev/QA worker dispatch (.202:8081 text,
  .202:8082 vision; one task per endpoint)
- docs/CAPTURE.md: input photo (JPEG + HEIC fallback), 200KB soft goal
- deploy/README.md: Milestone 1 UAT deployment POR (one container, LAN URL)
- tests/fixtures/: 3 black-sheet slab photos + calibration records
  (152422 28x2.25 irregular, 155818 21x1.75, 155754 21x1.75)
This commit is contained in:
Ty
2026-09-13 22:37:19 -07:00
parent 3bae76cea3
commit 92d1a7ec5e
9 changed files with 146 additions and 0 deletions
+8
View File
@@ -45,6 +45,12 @@ Phone: iOS Safari, Android Chrome.
PC: Chrome, Edge, Firefox.
Other clients get a hard stop.
## Input photo
Accepted input: JPEG. Phones typically save JPEG; Android Chrome delivers JPEG by default.
If the file is HEIC and the browser cannot decode it, show a one-tap notice to retake the photo as JPEG. HEIC is never silently dropped and never decoded server-side in Milestone 1.
## States
One photo component is reused. Each state advances on approve. Back returns to the previous state. A device draft restores the last approved state.
@@ -126,3 +132,5 @@ The first inventory photo is the measurement reference. Later inventory photos u
Source below that floor: warn and require a new photo. No upscale from an undersized source.
Editor preview of alpha is a light gray checkerboard. The storefront uses the theme background.
File size: aim under 200KB per image (soft goal, not a hard gate in Milestone 1).