The three ways the height report flagged as guessed-height buildings are not
buildings: two are building=roof at layer=1 (elevated canopies) and one is an
amenity=shelter (public_transport). The report's '2 levels x 3.2 m' default
invented the 6.4 m figure. block_height_report.py now classifies them explicitly;
the block now reports 0 guessed heights, all 15 volumes having a real height tag,
a levels derivation, or a non-building classification.
Also records the measured hero proportions (colonnade 6.90 m = 47.6% of the
14.50 m envelope) for the open proportion task, which needs photo review.
Geo/tools/ is now every geographic script, with Geo/README.md documenting each
one; the Blender-side builders moved beside their outputs in Art/blender/*/ and
import their helpers from Geo/tools/osm_common.py.
That module gains to_unreal_local() and to_blender_local(): the only place in the
repository that multiplies metres by 100, so a second silent scale cannot be
introduced. block_height_report.py adds height provenance for the block — 3 of
15 buildings have no height data and render at a placeholder 6.4 m.
asset_metadata.py writes and audits <asset>.geo.json sidecars; four now exist
(hero-facade, terrain, street, blockout) and the audit recomputes each centre from
the origin, failing anything that disagrees.