diff --git a/docs/LANES/ROUND3_INSTRUCTIONS.md b/docs/LANES/ROUND3_INSTRUCTIONS.md index 14c3bb5..1f837c3 100644 --- a/docs/LANES/ROUND3_INSTRUCTIONS.md +++ b/docs/LANES/ROUND3_INSTRUCTIONS.md @@ -19,8 +19,13 @@ validation, and the last two integration steps** (LANE_F_NOTES §3.4/§3.5). 2. **True closed residential ring → v2** (stays in V2_IDEAS). 3. **F finding #4 (doubled possessives) is CLOSED** — verified 0 across 2,418 shop names / 5 seeds on current main. It predated Lane A's round-1 fix. -4. **Depot publish and the ~$2.70 MeshGod hero batch remain gated on John** — do not publish, - do not spend. Local validation paths below unblock everything else. +4. **John has authorized the depot publish** (2026-07-14). It needs `GOD3_PW` in the env, which + agents don't have and must not hunt for — John runs `pipeline/publish.py` himself (dry-run + verified: 16 GLBs + thumbs ready). After it lands, Lane F adds `--depot` to the QA gate. +5. **Hero props: free-first on MODELBEAST — the local path is READY, no setup needed.** The + round-2 "HF-gated, setup needed" note is stale: `sf3d` (3.7 GB) and `TRELLIS.2-4B` (14 GB) + weights are already cached on this box with working venvs. Do not spend the ~$2.70 fal.ai + batch up front; it's the fallback for local rejects only. ## Process rules (unchanged, they matter) @@ -84,18 +89,27 @@ in `pipeline/_normalized/` — you don't need the depot publish. chunk build/dispose) — design only, no implementation; it's the v1.5 fix for big-town street emptiness. -## Lane E (Assets) — local depot mode + near-misses +## Lane E (Assets) — hero props on MODELBEAST + local depot mode -Publish stays gated (needs `GOD3_PW` + provenance recording — John's call). -1. **Unblock local validation**: make `core/loaders.js` (or a manifest/URL flag, e.g. +Publish is **authorized** but John runs it himself (`GOD3_PW`): record the per-asset +provenance list in AUDIT.md first, then hand him the two-liner. Your new headline task: +1. **Hero props, free, on-device.** The `meshgod_batch.json` gap list (glass case, fridge, + till, listening booth, …) now goes through MODELBEAST instead of fal.ai: + `gen_skins.py`-style concept images via `flux_local` (proven on the facades) → + `trellis_mac` image→GLB (`1024_cascade`, ~3–5 min/gen; use `sf3d` for seconds-fast drafts + to iterate the concept image before committing to a TRELLIS run) → `normalize.py` house + law → thumbnails → manifest. Weights are already cached (verified 2026-07-14); both + operator venvs exist under `~/Documents/MODELBEAST/server/operators/`. **Eyeball every + thumbnail**; anything unusable after 2 local attempts goes on the fal.ai fallback list + (still gated, ask John — budget ≤$2.70 total). + First check the DealGod cache / depot for reuse (cash-register + glass-case may exist). +2. **Unblock local validation**: make `core/loaders.js` (or a manifest/URL flag, e.g. `?localdepot=1`) resolve `depot:` to the locally staged GLBs so Lanes B/C/F can - validate before publish. Keep the placeholder-on-miss behaviour. -2. Support Lane C's visual validation — fix any origin/footprint mismatch they report + validate before/without the depot. Keep the placeholder-on-miss behaviour. +3. Support Lane C's visual validation — fix any origin/footprint mismatch they report (your normalize.py now handles hierarchies; re-run per asset). -3. Optional: manual Blender re-origin pass on the 3 near-misses (garage_shelves, radiogram, +4. Optional: manual Blender re-origin pass on the 3 near-misses (garage_shelves, radiogram, market_stall) if C wants more variety; otherwise leave to primitives. -4. Have the publish command + per-asset provenance list **staged and documented** so the - moment John says go it's a 5-minute job. ## Lane F (Integration) — lead lane this round @@ -116,8 +130,13 @@ Priority order, per your own §3 plan: ## Needs a human (John) -- **Push to origin** — main is now 10 commits ahead of origin/main (only the scaffold is pushed). -- **Depot publish go/no-go** (needs `GOD3_PW`; E will have it staged). -- **~$2.70 MeshGod hero-prop batch** go/no-go (pure polish; primitives cover everything). -- **A real pointer-lock playtest** — automation can't engage pointer lock; +- ~~Push to origin~~ — **done** (2026-07-14, Fable). +- **Run the depot publish** (authorized; agents don't hold the cred): + ```bash + cd /Users/m3ultra/Documents/procity + export GOD3_PW= + python3 pipeline/publish.py # idempotent; dry-run already verified 16 GLBs + thumbs + ``` +- **fal.ai spend**: only if MODELBEAST hero-prop rejects need it (≤$2.70, per-prop go). +- **A real pointer-lock playtest** (after the current Opus round, per John) — `cd web && python3 -m http.server 8130` → http://localhost:8130?seed=20261990.