First wreck in the production world layer. A WreckActor (StaticBody3D) instantiates a two-LOD glTF visual, builds a trimesh collision from a separate lighter glTF, and carries the sonar metadata (metal, 0.9 reflectivity) so the bathymetry rays echo it. The sunlit shallows site places the MV Hebat Allah 62 m ahead of the submarine on the floor. The assets derive from a CC BY 4.0 photogrammetry scan by Holger Buss (Sketchfab). The raw 274 MB scan stays outside the repo; the committed GLBs come from a reproducible Blender pipeline under scripts/assets/: skirt cut, 44 m rescale, merge by distance (the scan is a triangle soup), fragment removal, 0.4 m voxel remesh, decimation to 58k/14.5k/2.9k triangles, smart UVs and a 2K albedo rebaked from a luminance-rebuilt texture (the scan's red channel is dead). docs/ASSET_LICENSES.md starts the licence registry required by the design plan and records the attribution owed in the credits. The site suite gains twelve assertions covering sonar metadata, collision, LOD handover and triangle budgets. Godot extracts the embedded albedo next to the glb on import; those PNGs are ignored like the cockpit ones. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Test organization
unit/: domaine pur, sans scène ni I/O.integration/: assemblage Godot minimal et signaux.contract/: ressources, contenu, sauvegardes et migrations.fixtures/: données de référence versionnées et anonymes.
Les runners historiques à la racine de tests/ couvrent les POC. Les suites de
production devront être ajoutées à scripts/quality_gate.sh; créer un fichier
de test qui n'est jamais exécuté n'est pas une validation.
Suites de production actuelles :
unit/run_dive_foundation_tests.gd: règles résolues, ticks, ressources, pression, collisions, alertes et états terminaux ;unit/run_vehicle_application_tests.gd: validation et séquençage des commandes de pilotage et de caméra ;unit/run_sonar_application_tests.gd: buffer compact scellé, validation des captures, contacts séparés et temporalité de révélation/récupération ;integration/run_vertical_slice_foundation.gd: composition, mouvement inertiel, caméra indépendante, cockpit 3D fixe, instruments physiques, couche d'alerte, sonar bathymétrique partagé, pause des ticks et remappage avec conflit.