Bug: remove thickness band from Review UI (deterministic from thickness_in) #88

Closed
opened 2026-09-21 06:08:09 +00:00 by Ty · 0 comments
Owner

Summary

Thickness band must not be an editable control on the Review screen. It is applied deterministically from the owner-entered free-text thickness (thickness_in) via the existing round-up-into-synced-Woo-band rule. The Review UI currently exposes a Thickness band <select> that lets the owner override it.

Observed (HEAD main @ 41401a7)

  • frontend/src/create/review/Review.svelte binds thicknessId and renders an editable field:
    • label "Thickness band"
    • data-testid="thickness-band"
    • bind:value={thicknessId} + on:change={commitReview}
    • PATCH includes thickness_term_id from that select
  • Owner already enters numeric thickness earlier (1/8-inch steps). Band should follow from that value, not a second manual pick.

Spec / requirements (authoritative)

  • METADATA-15 (docs/REQUIREMENTS.md): Thickness is locked attribute (1, round-up band) — not a free owner taxonomy pick like species/grade.
  • METADATA-25: free-text thickness is not a product attribute; the Woo attribute is the derived band.
  • QUALITY-95 / TV-9 (docs/contracts/TEST-SPEC.md): 1 in rounds up into the synced Woo thickness band (deterministic mapping).
  • API (docs/contracts/API.md): thickness_term_id = round-up band.
  • Owner enters length and thickness (inches); band is derived. Review still requires a thickness band on the listing (REVIEW-5), but that value should be system-applied, not UI-edited.

Expected

  1. Review UI has no thickness-band select / control (data-testid="thickness-band" gone or non-interactive display-only if needed for debug — prefer remove).
  2. thickness_term_id is set automatically from thickness_in + synced Woo thickness terms (same TV-9 / QUALITY-95 round-up rule) whenever thickness is known or changes.
  3. Owner cannot diverge band from measured thickness via Review.
  4. Submission-ready still satisfies REVIEW-5 thickness band requirement via the deterministic value.
  5. Docs that currently instruct picking the band on Review (e.g. docs/UAT-PRACTICE.md "Thickness band. Pick the Woo band…", docs/contracts/UX.md Review required-set wording if it implies a manual control) updated to match deterministic application.

Acceptance

  • Review screen has no editable thickness-band control.
  • Given thickness_in, stored/published thickness_term_id matches synced Woo round-up band (TV-9 / QUALITY-95).
  • Changing thickness (where editable upstream) recomputes band; Review does not offer override.
  • E2E/unit coverage updated: no Review interaction with thickness-band; deterministic mapping still tested.
  • Live UAT on deployed stack: Review UI shows no band picker; create/publish still carries correct band.
  • Spec/UAT docs no longer tell the owner to pick the band on Review.

Out of scope

  • Changing how thickness_in is entered on capture/measure.
  • Moisture default behavior (still owner-visible unless separately decided).

Labels / type

bug · M3 Review UI

## Summary Thickness band must not be an editable control on the Review screen. It is applied deterministically from the owner-entered free-text thickness (`thickness_in`) via the existing round-up-into-synced-Woo-band rule. The Review UI currently exposes a Thickness band `<select>` that lets the owner override it. ## Observed (HEAD `main` @ 41401a7) - `frontend/src/create/review/Review.svelte` binds `thicknessId` and renders an editable field: - label "Thickness band" - `data-testid="thickness-band"` - `bind:value={thicknessId}` + `on:change={commitReview}` - PATCH includes `thickness_term_id` from that select - Owner already enters numeric thickness earlier (1/8-inch steps). Band should follow from that value, not a second manual pick. ## Spec / requirements (authoritative) - **METADATA-15** (`docs/REQUIREMENTS.md`): Thickness is locked attribute **(1, round-up band)** — not a free owner taxonomy pick like species/grade. - **METADATA-25**: free-text thickness is not a product attribute; the Woo attribute is the derived band. - **QUALITY-95 / TV-9** (`docs/contracts/TEST-SPEC.md`): 1 in rounds up into the **synced** Woo thickness band (deterministic mapping). - **API** (`docs/contracts/API.md`): `thickness_term_id` = round-up band. - Owner enters **length and thickness** (inches); band is derived. Review still requires a thickness band on the listing (REVIEW-5), but that value should be system-applied, not UI-edited. ## Expected 1. Review UI has **no** thickness-band select / control (`data-testid="thickness-band"` gone or non-interactive display-only if needed for debug — prefer remove). 2. `thickness_term_id` is set automatically from `thickness_in` + synced Woo thickness terms (same TV-9 / QUALITY-95 round-up rule) whenever thickness is known or changes. 3. Owner cannot diverge band from measured thickness via Review. 4. Submission-ready still satisfies REVIEW-5 thickness band requirement via the deterministic value. 5. Docs that currently instruct picking the band on Review (e.g. `docs/UAT-PRACTICE.md` "Thickness band. Pick the Woo band…", `docs/contracts/UX.md` Review required-set wording if it implies a manual control) updated to match deterministic application. ## Acceptance - [ ] Review screen has no editable thickness-band control. - [ ] Given `thickness_in`, stored/published `thickness_term_id` matches synced Woo round-up band (TV-9 / QUALITY-95). - [ ] Changing thickness (where editable upstream) recomputes band; Review does not offer override. - [ ] E2E/unit coverage updated: no Review interaction with thickness-band; deterministic mapping still tested. - [ ] Live UAT on deployed stack: Review UI shows no band picker; create/publish still carries correct band. - [ ] Spec/UAT docs no longer tell the owner to pick the band on Review. ## Out of scope - Changing how thickness_in is entered on capture/measure. - Moisture default behavior (still owner-visible unless separately decided). ## Labels / type bug · M3 Review UI
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Ty_Tech/SlabUploader#88