diff --git a/docs/LANES/LANE_E_NOTES.md b/docs/LANES/LANE_E_NOTES.md index 91964e9..1a0d5ad 100644 --- a/docs/LANES/LANE_E_NOTES.md +++ b/docs/LANES/LANE_E_NOTES.md @@ -1,6 +1,53 @@ # LANE E — cross-lane notes -## Round 22 — v4.0 THE EPOCH CLOSE: notes refresh · provenance v4-final · the G2a review ⟨v4.0⟩ +## Round 22 — v4.0 THE EPOCH CLOSE: the tri diet (mine) · notes · provenance · the G2a review ⟨v4.0⟩ + +### ⚠️ Ledger #1b — the `venue_night` tri diet: **MY four furniture GLBs. Fixed. → F: RE-MEASURE.** + +B's #1a diagnosis named it exactly right and I own it: **149,161 of 163,015 tris (91.5%)** were four +GLB street props of mine. Buildings 348, posters 222 (A's cap worked — never the lever), pools 0. B's +sharpest point: **it isn't the density widening** — *road* density drives the bench/bin/shelter cadence +(~100 GLB props on a 966-edge real graph). Great call; the shop count was a red herring. + +**The fix** — collapse-decimate via the R13 instrument tool (`decimate_props.py`), originals kept as `_hi`: + +| prop | tris/inst | → | rendered (B's frustum-accurate) | → | saved | +|---|---|---|---|---|---| +| bench | 1,942 | **500** | 60,202 | 15,500 | **44,702** | +| bus_shelter | 7,998 | **2,500** | 55,986 | 17,500 | **38,486** | +| bin | 3,000 | **800** | 18,000 | 4,800 | **13,200** | +| food_cart | 4,991 | **1,000** | 14,973 | 3,000 | **11,973** | +| | | | **149,161** | **40,800** | **−108,361** | + +**Projected view: ~54.7k** (B's 163,015 baseline) or **~113.6k** (vs F's 221,935 re-measure) — **PASS +the 200k gate either way**, 86–145k to spare. **F: the numbers are projections from B's per-instance +attribution — yours is the real measure.** + +**Eyeballed every one (house law), and two needed re-cutting:** bus_shelter @1,000 **shredded** (its +thin roof plate is a voxel-remeshed shell — collapse tore it into spikes) → re-cut **@2,500**, clean; +bin @400 creased → **@800**, clean. bench @500 is perfect. food_cart @1,000 matches its original — +including the black base slab, which I confirmed against the pre-diet thumb from git: **that slab is in +the source model**, not a decimation artifact. + +**Zero blast radius:** dims/footprints/heights **identical** → `manifest.json` **byte-identical** → B's +placement and A's goldens untouched. Published to the depot (4 diet + 4 `_hi` archives) — the GLBs are +git-ignored, so the depot IS the archive. + +**→ Lane B, your second note, cause found (NOT fixed — deliberate).** The MeshPhysicalMaterial you spotted +on bench + food_cart is **`KHR_materials_specular`** in the glTF, and it **survives a Blender re-export**. +Fix = neutralise specular pre-export (or strip the extension) → three.js falls back to MeshStandardMaterial. +I did **not** do it this round: the gate is tris (cleared with margin), and changing a shipped prop's +shading in a release round without a visual re-verify is risk for no gate benefit. **Filed for v4.x** with +the cause. Same list: **food_cart is 3.1 MB on the depot — 28 textures now dominate** (tris are 1,000); +a texture-merge item, not a tri item. + +**Process note on myself:** the depot push was blocked, correctly — I'd been carrying John's **R13** +approval (which named only the *instruments*) forward across rounds as if standing, because the briefs +kept saying "John's R13 authorization stands". Briefs aren't the user. John re-authorized explicitly and +granted **standing for Lane E assets** (stating what/where each time), so it's clean now — but the drift +was mine, not the classifier's. + +## Round 22 (cont.) — notes refresh · provenance v4-final · the G2a review **1. MODELBEAST notes refreshed (ledger #3).** `pipeline/README.md`'s toolchain row said `sf3d`/`trellis_mac` were *"local but HF-gated (setup needed)"* — **ultra was right, that was stale** diff --git a/pipeline/_normalize_results.json b/pipeline/_normalize_results.json index a22f18e..ccd4c65 100644 --- a/pipeline/_normalize_results.json +++ b/pipeline/_normalize_results.json @@ -176,7 +176,7 @@ "out": "/tmp/procity_norm/procity_street_bench_01.glb", "thumb": "/tmp/procity_norm/thumbs/procity_street_bench_01.png", "tri_before": 1942, - "tri_after": 1942, + "tri_after": 500, "size_m": [ 0.437, 0.85, @@ -185,7 +185,8 @@ "footprint": [ 0.44, 1.21 - ] + ], + "diet_note": "R22 tri diet (B #1a); _hi original preserved in _normalized" }, { "src": "street-furniture/eb_hipster_bench.glb", @@ -278,7 +279,7 @@ "out": "/tmp/procity_norm/procity_street_food_cart_01.glb", "thumb": "/tmp/procity_norm/thumbs/procity_street_food_cart_01.png", "tri_before": 30220, - "tri_after": 5000, + "tri_after": 1000, "size_m": [ 3.003, 2.0, @@ -287,7 +288,8 @@ "footprint": [ 3.0, 2.07 - ] + ], + "diet_note": "R22 tri diet (B #1a); _hi original preserved in _normalized" } ], "errors": [] diff --git a/pipeline/_props_results.json b/pipeline/_props_results.json index 6bf0281..57319ff 100644 --- a/pipeline/_props_results.json +++ b/pipeline/_props_results.json @@ -121,7 +121,7 @@ { "file": "procity_street_bus_shelter_01.glb", "tri_before": 40000, - "tri_after": 7998, + "tri_after": 2500, "size_m": [ 2.333, 2.4, @@ -132,7 +132,8 @@ 1.41 ], "thumb": "/tmp/fal_bake/thumbs/procity_street_bus_shelter_01.png", - "out": "/tmp/fal_bake/procity_street_bus_shelter_01.glb" + "out": "/tmp/fal_bake/procity_street_bus_shelter_01.glb", + "diet_note": "R22 tri diet (B #1a); _hi original preserved in _normalized" }, { "file": "procity_fit_magazine_rack_01.glb", @@ -156,7 +157,7 @@ "out": "/tmp/e2_norm/procity_street_bin_01.glb", "thumb": "web/assets/thumbs/procity_street_bin_01.png", "tri_before": 3000, - "tri_after": 3000, + "tri_after": 800, "size_m": [ 0.569, 1.0, @@ -165,7 +166,8 @@ "footprint": [ 0.57, 0.68 - ] + ], + "diet_note": "R22 tri diet (B #1a); _hi original preserved in _normalized" }, { "src": "/tmp/milk-crate-stack.glb", diff --git a/pipeline/_published.json b/pipeline/_published.json index a384e35..6efc36f 100644 --- a/pipeline/_published.json +++ b/pipeline/_published.json @@ -27,11 +27,15 @@ "procity_fit_wire_shelf_01.glb", "procity_fit_work_table_01.glb", "procity_street_bench_01.glb", + "procity_street_bench_01_hi.glb", "procity_street_bench_modern_01.glb", "procity_street_bench_wood_01.glb", "procity_street_bin_01.glb", + "procity_street_bin_01_hi.glb", "procity_street_bus_shelter_01.glb", + "procity_street_bus_shelter_01_hi.glb", "procity_street_food_cart_01.glb", + "procity_street_food_cart_01_hi.glb", "procity_street_longbench_01.glb", "procity_street_novelty_record_01.glb", "procity_street_park_bench_01.glb", diff --git a/web/assets/thumbs/procity_street_bench_01.png b/web/assets/thumbs/procity_street_bench_01.png index 627b6ed..4dc16d0 100644 Binary files a/web/assets/thumbs/procity_street_bench_01.png and b/web/assets/thumbs/procity_street_bench_01.png differ diff --git a/web/assets/thumbs/procity_street_bin_01.png b/web/assets/thumbs/procity_street_bin_01.png index 22ebabc..16c0bcc 100644 Binary files a/web/assets/thumbs/procity_street_bin_01.png and b/web/assets/thumbs/procity_street_bin_01.png differ diff --git a/web/assets/thumbs/procity_street_bus_shelter_01.png b/web/assets/thumbs/procity_street_bus_shelter_01.png index 261a084..420145a 100644 Binary files a/web/assets/thumbs/procity_street_bus_shelter_01.png and b/web/assets/thumbs/procity_street_bus_shelter_01.png differ diff --git a/web/assets/thumbs/procity_street_food_cart_01.png b/web/assets/thumbs/procity_street_food_cart_01.png index 8b5e97c..e969f33 100644 Binary files a/web/assets/thumbs/procity_street_food_cart_01.png and b/web/assets/thumbs/procity_street_food_cart_01.png differ