Files
SlabUploader/docs/PRODUCT.md
T
grokbot_ty df40c4269f docs(m3): lock Create requirements on m3-ds
Add docs/CREATE.md as M3 SoT from Ty conversation (Woo attributes sync,
ready-set use, create, OpenAI Settings dependency). Point AGENTS/PRODUCT
here; mark main milestone splits obsolete for this branch.
2026-09-16 20:32:03 +00:00

71 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Product requirements
SlabUploader creates one WooCommerce listing per wood slab for Whidbey Wood Store.
Each slab is one unit and one listing. Photos and metadata are the inventory record.
Photographs are taken of the slab on a green or black sheet. That is the capture starting state.
## Complete listing
- Inventory photo(s), uniform 3:4 transparent PNG
- SKU, length, thickness, price
- Species, wood category, edge type, figure, grade
- Thickness band, moisture
- One or more `fig-*` tags
- Title, short title, description
- Zero or more `feat-*` tags
Store categories, attributes, and `fig-*` / `feat-*` tags are the filters. Measured values feed title and description templates.
## Decision rights
| Field | Source |
|---|---|
| Length, thickness | User |
| SKU | User |
| Mask and crop | App proposal, user approve |
| Widths, sqft, bdft | App, from approved reference photo + length + thickness |
| Species, wood category, edge, figure, grade, tags | App may propose; user may change |
| Price | App proposal `bdft × species $/bdft`; user may replace |
| Title, short title, description | Templates from listing facts; user may edit |
## System seams
Milestones 1 and 2 run in the browser. No backend and no inference URL.
Milestone 1 handoff is the device draft: source photo, approved mask, inventory PNG, length, thickness, widths, sqft, bdft.
Milestone 2 extends the draft with the photo batch, calibration choice, per-photo inventory PNGs, and the dimension-overlay calibration copy.
Milestone 3 uses FastAPI as the Woo client. Store credentials stay on the server.
## Create
Spec: `docs/CREATE.md` (Milestone 3 SoT on this branch).
`SLAB-UAT-*` creates as a WooCommerce draft (store status).
Duplicate SKU blocks create.
A listing can be created with inference off.
A device draft in the app is separate from a WooCommerce draft.
Woo attributes (synced taxonomy) and the OpenAI-compatible inference Settings dependency are defined in `docs/CREATE.md`.
## Milestones
M1 and M2 are shipped inputs. **M3 scope is defined in `docs/CREATE.md` and Ty conversations — not by older splits on `main`.**
### Milestone 1 — Capture
Spec: `docs/CAPTURE.md`. Shipped; handoff into Milestone 2.
### Milestone 2 — Photos
Spec: `docs/PHOTOS.md`. Shipped on UAT `:10881`. No Woo create. No Complete-listing taxonomy in this milestone.
### Milestone 3 — Create
Spec: `docs/CREATE.md`. Current work on branch `m3-ds`.
Woo attributes sync via application password, ready-set use of that taxonomy, product create, inference endpoint dependency.
Acceptance: see Done when in `docs/CREATE.md`.
### Later work
Anything beyond `docs/CREATE.md` (including fuller Assist UX) is out of M3 unless Ty expands scope in chat.