Files
SlabUploader/.planning/milestones/v0.5/M3/task_breakdown.md
T
Ty f0f891f80e docs(m3): add the prompt revision interface, seed, and auth gap
UAT requires prompt tuning, so the iteration system is M3; only the editing
UI is deferred.

- METADATA-105 now covers storage, append-only revisions, and recording the
  revision used.
- METADATA-106 adds the REST revision interface (append, activate, read); no
  prompt UI.
- METADATA-107 records the missing authentication as a later row; there is no
  M4 yet, so the PoR carries it.
- PROMPTS.md owns the seed text as revision 0, the seed mechanism, and the
  interface; sections renumbered after inserting them.
- DATA-MODEL.md §7 cites PROMPTS.md, adds content_hash, and states the
  append-only rule.
- task_breakdown.md notes the S7 interface and the deferred auth.

155 requirements; both gates pass.
2026-09-19 12:29:08 -07:00

2.7 KiB

M3 — task breakdown

Role: breakdown. Ordered task list for v0.5 / M3. Cites requirement IDs; defines none.

Objectives: roadmap.md in this folder. Behavior and acceptance: docs/capabilities/CREATE.md. Scope and IDs: docs/MILESTONES.md. Decisions live in docs/contracts/, not here.

TDD every slice: the failing test precedes its implementation; never parallelize RED and GREEN of the same scenario.

Slice Delivers M3 IDs
S0 factory, config/startup guards, health/meta, JSON logs, Dockerfile APP-30, APP-45, APP-55, APP-65, SETTINGS-10, SETTINGS-25, OPS-25
S1 AES-GCM crypto + Settings (masked, write-only secrets) SETTINGS-5/15/20/25/30/35/75/85/90, QUALITY-125
S2 slabs CRUD, optimistic concurrency, soft delete APP-5/15/20/35/40, REVIEW-45
S3 photos (multipart → BLOBs, original/processed, 410 after purge) CAPTURE-95/105/130, PUBLISH-40
S4 Woo client (application-password Basic) + taxonomy sync + test-woo METADATA-5/10/15/20/30, SETTINGS-40/50/51/55/60/80, QUALITY-35
S5 pricing, deterministic templates, server-derived ready REVIEW-5/10/15/20/25/30/35/40/50, METADATA-70/80/85/90, QUALITY-90/95
S6 publish (sequence, UAT draft, duplicate/stale/partial failure) PUBLISH-5/10/15/20/25/30/31/35/36/37/38/40/45/50/55/60
S7 inference last (Call 1 / Call 2, prompt revisions, template fallback) METADATA-35/40/45/50/55/60/65/66/75/95/100/105/106/110/115, SETTINGS-45/70
Cross frontend API client; Review / Settings / Publish screens UI for the slices above
Exit inference-off suite, Woo-mock integration, Compose UI E2E, real UAT draft QUALITY-20/35/50/105/110/120

Parked work items

  1. The seven per-leaf long-description prose templates (the specialized Call 2 prompts) are authored when the Call 2 slice is built (METADATA-85): Knife blanks, Dimensional wood, Live edge wood, Bowl blanks, logs and caps, Pen blanks, Pepper mill blanks.
  2. Specialty cuts is out of M3: no title pattern, no prose template, no Call 2 prompt.
  3. S7 ships the prompt revision REST interface (METADATA-106) so UAT prompt tuning can be done against the running server. There is no prompt editing UI; tuning is an API call.
  4. Authentication for the prompt revision interface is later (METADATA-107), not M3.

Frontend layout

New code stays outside the Capture union: frontend/src/api/*, frontend/src/create/*.

Verification

Slice bar: docs/contracts/TEST-SPEC.md. Docs gate: python tools/check_requirements.py. Exit bar: docs/MILESTONES.md and docs/capabilities/CREATE.md.

Not yet validated

  • Long-horizon multi-step agentic loops (more than one or two tool round-trips).
  • M3 implementation has not started.