re: containment screen fails too -- the static assembler inflates a shared turret

envelope_screen measures per-axis protrusion past the sibling envelope, the
relationship the eye used. It still does not flag e106_bdy_03, and dumping the
static assembly shows why: e303_wep_01's world box is 1600x2100x4800 around a
~400x400x2000 hull, so nothing can protrude. The decode is innocent -- that
resource is 49x23x42 in every container -- so the static assembler is inflating
it 30-110x per axis, non-uniformly. The screen is only meaningful once placement
is trustworthy, and the assembler now has a worse defect than the decoder had.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-08-12 17:20:52 +00:00
parent 85ad540a7e
commit 27fd9f186f
2 changed files with 134 additions and 0 deletions

View File

@@ -1097,6 +1097,34 @@ that carry it) and `t901_e01_D` is 58×59×3013 (a mast). And `f101_bdy_01` flag
at 6× while being **capture-verified exact** in the truth table — a useful
reminder that a bulky hull is not a bug.
### The containment screen fails too — because the static placement is worse
`examples/envelope_screen.rs` is the metric the eye actually used: assemble a
ship, and for each part measure how far its world box protrudes past the box of
all the *other* parts, **per axis** (a bow legitimately extends the long axis, so
protrusion only means something against that axis' own envelope).
It does not flag `e106_bdy_03` either, before or after the coverage fix. Dumping
the static assembly shows why, and the reason is a bigger finding than the screen:
```
e106_bdy_03 X[ -300, 300] Y[ 0, 1600] Z[ 188, 1186]
e303_wep_01 X[-1179, 421] Y[ -996, 1104] Z[-2368, 2432] ← shared turret
e106_bdy_04 X[ -215, 215] Y[ -165, 234] Z[ -991, 389]
```
The **turret swallows the ship**: `e303_wep_01`'s world box is 1600×2100×4800
around a hull of ~400×400×2000, so nothing can protrude past the envelope. Its
*decode* is not at fault — the resource comes out 49×23×42 in `Stage_S01` through
`Stage_S06` alike, consistent everywhere — so this is a **static-assembler**
defect: the placement blows a 49-unit turret up by 30110× per axis (and
non-uniformly, so it is not a simple scale factor).
Two conclusions. The screen is only meaningful once placement is trustworthy, and
**the static assembler has a worse defect than the decoder did** — one that the
capture-baked path for `e106` hides, because the baked table places the ship
correctly and is what the viewer prefers.
### The anchor work has plateaued at 98.7 % — state and what is left
Four evidence-driven changes took the decoder from 5 480 to **6 212 of 6 294**