REPOSITORY SOURCE

glb-import-acceptance.json

docs/evidence/glb-import-acceptance.json

1{
2  "format": 1,
3  "recordedAt": "2026-10-24T22:41:11.595213+00:00",
4  "source": {
5    "revision": "4facc4770b78578f8d33a8303e9685a350da67b5",
6    "dirty": false
7  },
8  "headless": {
9    "command": "npm test",
10    "tests": 189,
11    "pass": 189,
12    "fail": 0,
13    "skipped": 0,
14    "log": "glb-import-headless.tap"
15  },
16  "browser": {
17    "command": "CI=1 PLAYWRIGHT_EXECUTABLE_PATH=/tmp/dw-browser-test/chrome-linux/headless_shell npm run test:browser",
18    "pass": 26,
19    "fail": 0,
20    "skipped": 0,
21    "flaky": 0,
22    "report": "glb-import-browser-tests.json",
23    "capabilities": "glb-import-capabilities.json"
24  },
25  "models": [
26    {
27      "name": "Lantern plinth",
28      "source": "games/engine-zoo/assets/lantern-plinth.glb",
29      "importer": "glb-static.1",
30      "sourceHash": "973319f50d8f86eee7542ce63da52b9ba91498f247bceb8d693ac2b3b52816a1",
31      "sha256": "bf4a9fd6e9f5fc0d6485ab731f4d27ecc29cd7f640780b339bff3f1bf30d69ec",
32      "settings": {
33        "scene": null,
34        "unitScale": 1
35      },
36      "bounds": {
37        "max": [
38          2.7,
39          1,
40          -0.30000000000000004
41        ],
42        "min": [
43          1.3,
44          0,
45          -2.125
46        ]
47      },
48      "census": {
49        "indexBytes": 216,
50        "indices": 54,
51        "primitives": 2,
52        "scenePrimitives": 3,
53        "sceneTriangles": 24,
54        "vertexBytes": 1728,
55        "vertices": 54
56      },
57      "artifactBytes": 4411
58    },
59    {
60      "name": "Khronos Box",
61      "source": "https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Assets/main/Models/Box/glTF-Binary/Box.glb",
62      "importer": "glb-static.1",
63      "sourceHash": "ed52f7192b8311d700ac0ce80644e3852cd01537e4d62241b9acba023da3d54e",
64      "sha256": "1afa7d2f80813f023bfc304440f83df49dd66fc8c86d2647add19a1764fb727e",
65      "settings": {
66        "scene": null,
67        "unitScale": 1
68      },
69      "bounds": {
70        "max": [
71          0.5,
72          0.5,
73          0.5
74        ],
75        "min": [
76          -0.5,
77          -0.5,
78          -0.5
79        ]
80      },
81      "census": {
82        "indexBytes": 144,
83        "indices": 36,
84        "primitives": 1,
85        "scenePrimitives": 1,
86        "sceneTriangles": 12,
87        "vertexBytes": 768,
88        "vertices": 24
89      },
90      "artifactBytes": 1958
91    }
92  ],
93  "coverage": [
94    "Exact GLB framing, embedded data and import budgets",
95    "Packed, interleaved and sparse accessor decoding",
96    "Float32 normals and normalized unsigned UVs",
97    "Malformed/nonfinite/out-of-range data and inconsistent bounds rejected",
98    "Explicit unsupported-feature diagnostics without external fetches",
99    "Flat normal expansion and canonical signed zero across JSON/process boundaries",
100    "TRS, hierarchy, reflection, independent bounds and scene-wide instancing limits",
101    "Input/output identity validation and actual isolated child execution",
102    "Atomic create-only CLI output and failed-output preservation",
103    "Packaged CLI and model worker outside repository without development dependencies",
104    "Independent Khronos Box imported through the same CLI",
105    "Existing complete multiplayer, gameplay and renderer suite including corrected diagnostic workflow waits"
106  ],
107  "preliminaryFindings": [
108    "The first importer run exposed generated signed zero differing after JSON roundtrip; output numbers are now canonicalized.",
109    "The initial normal-length test used tighter tolerance than float32 precision; it now checks float32-scale error."
110  ],
111  "limits": [
112    "This is the compiler stage; imported geometry is not installed in the runtime renderer yet.",
113    "Textures, skins, animations, morph targets and compressed extensions are explicitly unsupported in this profile.",
114    "AABB collision candidates are conservative metadata, not installed accurate colliders.",
115    "Asset job coordination, publication, LOD processing and runtime resource catalogs remain open.",
116    "No complete roadmap milestone is closed."
117  ],
118  "ci": {
119    "source": "4facc4770b78578f8d33a8303e9685a350da67b5",
120    "status": "queued",
121    "url": "https://github.com/jasona/darkwind-web/actions/runs/40139617903"
122  }
123}
124