Files
SlabUploader/AGENTS.md
T

55 lines
3.0 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.
# AGENTS.md
## Status — Phase 2 reconciliation complete
`docs/REQUIREMENTS.md` (153 rows) is the only normative text; scope is the M3 ID subset in `docs/MILESTONES.md`.
Capability and contract docs live in `docs/capabilities/` and `docs/contracts/`.
Reconciliation evidence is archived under `.audit/archive/`; the coverage ledger and matrices are in `.audit/coverage/`.
Starting implementation is Ty's call; when it starts, implement only the M3 ID subset.
## Structure contract (read before creating any doc)
Requirements live only in `docs/REQUIREMENTS.md`; milestone scope in `docs/MILESTONES.md`.
Before creating or moving any doc, look up its home in `docs/STRUCTURE.md` (artifact registry + namespace routing).
If no home exists, stop and ask Ty — do not create a new artifact.
Run `python tools/check_requirements.py` after any docs change; it must pass.
## Agent runtime rules
- Subagents (`explore`, `general`) run on a single local GPU and cannot handle concurrency. Invoke only one subagent at a time; never issue parallel subagent calls.
- Subagents are for mechanical extraction only (read and list). They never write and never set a disposition; rulings stay with Ty.
## Agent context
Read `docs/README.md` first, then this file, `docs/capabilities/CAPTURE.md`, `docs/capabilities/PHOTOS.md`, and `docs/capabilities/CREATE.md`.
Implement **Milestone 3** only. Specification: `docs/capabilities/CREATE.md`.
Product overview: `docs/PRODUCT.md`.
**M3 scope** (what is in vs out) comes from Ty conversations and the reconciled `docs/MILESTONES.md` + `docs/REQUIREMENTS.md`.
**Behavior** for Woo sync, metadata, pricing, and inference is in `docs/capabilities/CREATE.md` and the `docs/contracts/` set. `docs/REQUIREMENTS.md` is the only normative text.
Do not implement work outside the M3 requirement subset unless Ty expands scope in chat.
Do not touch deploy port `:10880`. UAT redeploy target is overnight Docker on ubudual5060 `:10881`.
## Milestones and capabilities
Scope and exit criteria: `docs/MILESTONES.md`. Capability specs: `docs/capabilities/`. Interfaces: `docs/contracts/`.
## Invariants
- Quantity per listing is one.
- User enters length, thickness, and SKU.
- App may propose remaining listing fields. User reviews before create.
- Non-math fields remain editable until create.
- `bdft = sqft × thickness_in`
- Price proposal is `bdft × species $/bdft`. User may replace it. Missing rate leaves price empty.
- User-entered length, thickness, SKU, price, and taxonomy override computed or inferred values.
- **Woo Slab Taxonomy** means synced species and wood categories; Edge, Figure, Grade, Thickness, Moisture; `fig-*` and `feat-*`. Store is source of truth.
- Woo auth is WordPress application password (server-side). `WOO_BASE_URL` is compose/env. Inference URL is Settings.
- SKUs matching `SLAB-UAT-*` create as Woo draft.
- Create works with inference off.
- Source below the PNG size floor requires a new photo.
- Existing store SKU blocks create.
- Dimension overlay orientation follows the user-approved length axis from Milestone 1.