animation-state-acceptance.json
docs/evidence/animation-state-acceptance.json
1{
2 "format": 1,
3 "recordedAt": "2026-10-25T00:53:27.295954+00:00",
4 "source": "e24d55453d9b423a1e96a2ae1bf5dbff2fd48ab9",
5 "simulationProfile": "darkwind.simulation.5",
6 "headless": {
7 "command": "npm test",
8 "tests": 281,
9 "pass": 281,
10 "fail": 0,
11 "skipped": 0,
12 "log": "animation-state-headless.tap",
13 "provenance": "Complete suite with final runtime, migration, ownership regression and versioned authoring/prefab/replay evidence."
14 },
15 "browser": {
16 "command": "npm run test:browser",
17 "stats": {
18 "startTime": "2026-10-25T00:47:01.083Z",
19 "duration": 331127.505,
20 "expected": 26,
21 "skipped": 0,
22 "unexpected": 0,
23 "flaky": 0
24 },
25 "report": "animation-state-browser.json",
26 "log": "animation-state-browser.log",
27 "capabilities": "animation-state-capabilities.json",
28 "build": {
29 "revision": "260f7e46cc5ec99b71d6ad0b6abc2765376557af",
30 "dirty": true,
31 "builtAt": "2026-10-25T00:47:01.571Z"
32 },
33 "environment": {
34 "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/141.0.7390.37 Safari/537.36",
35 "secureContext": true,
36 "hardwareConcurrency": 16,
37 "devicePixelRatio": 1
38 },
39 "configuration": "CI=1, Chromium 141 headless, software WebGPU, 960x640, one worker, isolated temporary production client and room storage",
40 "provenance": "Complete run with final runtime/probe code and updated checkpoint-dependent golden fixtures. The additional catalog input-ownership headless regression was added while this run executed. Afterward, only two overall repeated-run test budgets were changed as described in skeletal-ci.json; acceptance bodies and worker/renderer/replay deadlines are identical."
41 },
42 "skeletal": {
43 "fixture": "model-skeleton.2",
44 "ecsAnimation": true,
45 "ecsCheckpoint": true,
46 "hash": "a36c36c9116941d40059d6d4db3ce0875dccb4ea1c0569dd201bcdf5dcf759a5",
47 "browserCompilerMatch": true,
48 "referenceFrames": 12,
49 "maxReferenceError": 0,
50 "changedFrame": true,
51 "loopRestored": true,
52 "sharedGeometryPoses": true,
53 "cullingRestored": true,
54 "rejectedPreservedFrame": true,
55 "recoveredFrame": true,
56 "shadowControls": 2,
57 "shadowDifferencePixels": [
58 6890,
59 5097
60 ],
61 "sampledFrames": 12,
62 "bytes": 264564,
63 "buffers": 34,
64 "textures": 3,
65 "disposed": {
66 "buffers": 0,
67 "textures": 0,
68 "instances": 0
69 }
70 },
71 "state": {
72 "animatedEntities": 32,
73 "overflowRejected": true,
74 "pausedClock": true,
75 "forwardReverseLoopAndClamp": true,
76 "exactTickAboveNumberRange": true,
77 "nativeRestoredContinuationSteps": 90,
78 "incrementalAnimationWork": {
79 "transforms": 0,
80 "draws": 1
81 },
82 "failedPosePreservesProjection": true,
83 "restoredComponentRemovalRestPose": true,
84 "catalogOwnedBeforeAsyncValidation": true
85 },
86 "migration": {
87 "sourceFixture": "../../tests/fixtures/simulation-checkpoint-v4.json",
88 "capturedFrom": "260f7e46cc5ec99b71d6ad0b6abc2765376557af",
89 "legacyHash": "952a0d0f354157d39e439c1346f8fa6b6442f5125beb308ab5a39cc837791859",
90 "completePayloadPreserved": true,
91 "profileFourAcceptedWorldFormats": [
92 1,
93 2,
94 3
95 ],
96 "priorProfilesRetainExplicitMigration": true
97 },
98 "fixtureUpdates": {
99 "authoring": {
100 "fixture": "authored-world.2",
101 "digest": "3f95b637c8c49247c2291dab0bf95dcbfbadf66eb584ac425507823e4f341873"
102 },
103 "prefabs": {
104 "fixture": "prefab-world.2",
105 "digest": "761b46e20eb42616e964968c3aa8090e32ffb51fd72ae41ec49a44542cd6c5e6"
106 },
107 "replay": {
108 "fixture": "checkpoint.5",
109 "digest": "08c448ce1c8d8c8e19c957eb2cf1ffe1ccdb81e67bae23dfb7e434f70ecec32a",
110 "boundaries": 426,
111 "restores": 26
112 },
113 "retainedPreviousFixtures": true,
114 "nonCheckpointContentAndFinalGameplayCompared": true
115 },
116 "validation": {
117 "typesAndImports": "Passed; 61 package source files.",
118 "worldFingerprints": {
119 "darkwind": "e900a87c1854ad85a8bdc79953bd3e4d4b64f7b15a1451da8209609c2b504888",
120 "engine-zoo": "9facac25f35d9a16926052dbcc41fa12d5164ae891528e3a5ff62010c9f5a9cb"
121 },
122 "diffWhitespace": "Passed."
123 },
124 "initialFailures": "animation-state-initial-failures.json",
125 "priorCi": "skeletal-ci.json",
126 "limits": [
127 "Current projection samples accepted simulation states; renderer interpolation and blending are not implemented.",
128 "Full native checkpoints carry animation state; lightweight player saves and relay/shared actor packets do not yet carry it.",
129 "Original playable animated travelers, locomotion selection, root motion and attachments remain open.",
130 "Static imported colliders cannot receive AnimationState; visual animation requires a separate collision proxy.",
131 "The binding uses stable clip:index references. Unsupported old bindings reject explicit migration rather than being guessed.",
132 "Software-WebGPU evidence does not establish physical GPU or mobile performance.",
133 "Remote acceptance of animation-state source and revised repeated-run test budgets is pending. The prior player presentation/capture delay and earlier worker device-loss deadline remain unresolved.",
134 "No beta rebuild, main merge/deployment or full engine milestone completion."
135 ]
136}
137