renderer-startup-acceptance.json
docs/evidence/renderer-startup-acceptance.json
1{
2 "date": "2026-10-25",
3 "baselineCommit": "e210831",
4 "scope": "Batch independent GPU startup builds, preserve all-settled cleanup and graphics output. Partial loading improvement, not closure of restoration timing gate.",
5 "sourceSha256": {
6 "packages/render-webgpu/index.ts": "1d656b4571c1ccf71e92c45e0298c764531ebcae39d60be41b524aa5c551c5f4",
7 "tests/browser/renderer-initialization.spec.ts": "4dd49fd5b0c9eb2c875f1e406821e97a1f56119c9b834843999497c503db6a5c",
8 "tests/browser/editor-restoration.spec.ts": "4edcac71654f0a45300c6c038415443cb2ccf16d49ac40dfd21d999af790e121"
9 },
10 "measurement": {
11 "runtime": "Node 22.23.4; Playwright 1.56.1 / Chromium 141; SwiftShader Vulkan",
12 "scenario": "Published restoration editor reload with two independent live travelers; editor viewport 1440x1000; player viewports 1280x720 (newContext defaults).",
13 "samplesPerSource": 1,
14 "instrumentation": "Native adapter/device/module/pipeline/queue calls timed by a page init script. Observed readiness includes Playwright polling and is not exact first frame. Diagnostic copy permits 30s reload and 120s total solely to collect timings and finish functional assertions. Committed restoration test remains 5s reload and 60s total.",
15 "before": {
16 "observedReadyMs": 15470.900000035763,
17 "firstModuleMs": 5130.800000011921,
18 "lastPipelineMs": 13166.5,
19 "moduleToPipelineSpanMs": 8035.699999988079
20 },
21 "after": {
22 "observedReadyMs": 8777.800000011921,
23 "firstModuleMs": 3880.5,
24 "lastPipelineMs": 6672.699999988079,
25 "moduleToPipelineSpanMs": 2792.199999988079
26 },
27 "limitations": "One local paired observation; scheduling and adapter latency vary. No physical-GPU, WAN, FPS, or broad startup guarantee."
28 },
29 "verification": {
30 "targetedHeadless": {
31 "passed": 25,
32 "failed": 0,
33 "skipped": 0
34 },
35 "browser": [
36 {
37 "file": "day-cycle.spec.ts",
38 "title": "main shared-time daylight loops, restores, lights portals and recovers exactly",
39 "status": "passed",
40 "durationMs": 2491
41 },
42 {
43 "file": "day-cycle.spec.ts",
44 "title": "worker shared-time daylight loops, restores, lights portals and recovers exactly",
45 "status": "passed",
46 "durationMs": 2209
47 },
48 {
49 "file": "editor-restoration.spec.ts",
50 "title": "archived invitations stay shared while restoring an older world previews, saves and undoes a new draft",
51 "status": "failed",
52 "durationMs": 49780
53 },
54 {
55 "file": "renderer-initialization.spec.ts",
56 "title": "failed renderer startup drains sibling builds before releasing the device, then retries",
57 "status": "passed",
58 "durationMs": 3238
59 },
60 {
61 "file": "weather.spec.ts",
62 "title": "main shared weather animates, occludes, respects quality and recovers exactly",
63 "status": "passed",
64 "durationMs": 3731
65 },
66 {
67 "file": "weather.spec.ts",
68 "title": "worker shared weather animates, occludes, respects quality and recovers exactly",
69 "status": "passed",
70 "durationMs": 3621
71 }
72 ],
73 "unchangedImageSha256": {
74 "weather-main-scene.png": "6f9642bfce96411785826665fd3113300c7ef0188316442531b04c7ae50c0efd",
75 "weather-main-snow.png": "a0b01f70bc7a6e2570d391547e75fd53f15ed169dd11051167e20434f6af8e5b",
76 "weather-main-bare.png": "0cd0d77331d0f0171a774c0e0643c320751f438d864f0f3fcc55cfdd1347ce44",
77 "weather-worker-scene.png": "6f9642bfce96411785826665fd3113300c7ef0188316442531b04c7ae50c0efd",
78 "weather-worker-snow.png": "a0b01f70bc7a6e2570d391547e75fd53f15ed169dd11051167e20434f6af8e5b",
79 "weather-worker-bare.png": "0cd0d77331d0f0171a774c0e0643c320751f438d864f0f3fcc55cfdd1347ce44"
80 },
81 "typeAndBoundaryCheck": "passed, 181 package files",
82 "productionBuild": "passed",
83 "engine": "e5be568f6e048c29474ad6c0591c74664dd9159611b9615bf255011b820e2243"
84 },
85 "open": [
86 "Unchanged editor-restoration reload readiness still fails within 5000ms.",
87 "Shared loading performance, physical-device qualification and final character/environment/arrival art remain open."
88 ],
89 "progressApproximatePercent": 80
90}
91