Fable (integrator): round-3 update — publish authorized, hero props go local

John authorized origin push (done) + depot publish (he runs it; GOD3_PW stays out of
agent hands). Hero props switch from the gated $2.70 fal.ai batch to the free
MODELBEAST path: sf3d + TRELLIS.2 weights verified already cached on-device (the
round-2 'HF-gated, setup needed' note was stale) — flux_local concepts -> trellis_mac
GLBs -> normalize.py, fal.ai only as per-reject fallback.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
m3ultra 2026-07-14 14:41:50 +10:00
parent 90bd06c328
commit ae6017ca11

View File

@ -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`, ~35 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:<file>` 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=<the depot password>
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.