REPOSITORY SOURCE

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