REPOSITORY SOURCE

presentation-transfer-acceptance.json

docs/evidence/presentation-transfer-acceptance.json

1{
2  "sourceBase": "4d3c95c3e6f9d0798fbb75b5b2e7a162e75e98d2",
3  "sourceFilesSha256": {
4    "apps/player/main.ts": "b2656905fd22e4779e7fa77cff1fb13a470fe1516438760db2b0b52c84626b0a",
5    "apps/player/simulation.worker.ts": "8972bbfa8446c33b372a82546a7c25fec44e05d0d697aec1b12c9ac8489ec6af",
6    "apps/probe/protocol.ts": "99adfb2d5eb9d64873789566ebbabd24f90fd1236c5baa510540508daa758bb9",
7    "apps/probe/render.worker.ts": "14e7642efa96f2cd9b2fd17fb6b45ac642573ba29d1916366751e45c7cf80a5b",
8    "apps/probe/run.ts": "346ae18a53fe249e2fadf57bb6ad6eed229563d5a69cad5b1bd406877d227fc3",
9    "apps/probe/worker-client.ts": "d9237598a7c2fa7d2a2597aa0926cbd210b8081bec76487053bcb4aee4d0dec3",
10    "package.json": "ed6a967204a4e693245eefe1206b3b2eb2da0339d4bc85e3a650a02a7c45df03",
11    "packages/render/transfer.ts": "56cb5d3125f475e6990632deb9f7136f12833d8a20c38196fbc149e0dd1ab2be",
12    "packages/schema/index.ts": "f268da877de6647d316624a85034ccf4a29c8ab2748c64aff5eefe82b43f169a",
13    "packages/schema/presentation-transfer.ts": "1f1f5d4e4e22b46c212280c491e7fc010dab53b6b014f1bfdfebbcbd566aba88",
14    "tests/browser/player.spec.ts": "8e02bc5b169661d3648c1b7b951ae37eab4b04ace5fc7ee4f382c32cf77a17e8",
15    "tests/browser/probe.spec.ts": "96f2fd80c592c94f8ecd40c99b907e5aa5f3bc373683e49bd1304c68a1f4f09a",
16    "tests/render-transfer.test.ts": "b4c39c0c585667154f344dc6da077a42e31f8c24a0943f9a1e812faa9881b77a",
17    "tools/cli/benchmark-transfer.ts": "a2f619aedcb51e0bf7e39a5df5fd3974ef2d16014ffb57a646a8797b97cec98a"
18  },
19  "scope": "One fixed 4 MiB pooled presentation buffer in the live simulation/player hop and real render-worker probe. Scene payload remains validated UTF-8 JSON. Live WebGPU placement remains on the main thread.",
20  "headless": {
21    "passed": 329,
22    "failed": 0,
23    "skipped": 0,
24    "finalFixedBoundsFollowup": {
25      "passed": 5,
26      "failed": 0
27    }
28  },
29  "checks": {
30    "typecheck": true,
31    "sourceBoundaries": 73,
32    "whitespace": true
33  },
34  "browserRuns": [
35    {
36      "stage": "Probe integration before live-player wiring",
37      "command": "npm run test:browser -- tests/browser/probe.spec.ts",
38      "stats": {
39        "startTime": "2026-10-25T03:03:17.272Z",
40        "duration": 224792.25300000003,
41        "expected": 10,
42        "skipped": 0,
43        "unexpected": 0,
44        "flaky": 0
45      }
46    },
47    {
48      "stage": "Live player integration before final resizable-buffer rejection",
49      "command": "npm run test:browser -- tests/browser/player.spec.ts tests/browser/multiplayer.spec.ts",
50      "stats": {
51        "startTime": "2026-10-25T03:07:25.445Z",
52        "duration": 231138.16700000002,
53        "expected": 20,
54        "skipped": 0,
55        "unexpected": 0,
56        "flaky": 0
57      }
58    },
59    {
60      "stage": "Final fixed-buffer code, live ownership and two complete Observatory runs",
61      "command": "npm run test:browser -- tests/browser/player.spec.ts tests/browser/probe.spec.ts -g 'owned renderer works|canonical ECS frames'",
62      "stats": {
63        "startTime": "2026-10-25T03:12:12.443Z",
64        "duration": 66725.108,
65        "expected": 2,
66        "skipped": 0,
67        "unexpected": 0,
68        "flaky": 0
69      }
70    }
71  ],
72  "liveOwnership": [
73    {
74      "frames": 3,
75      "receivedBuffers": 1,
76      "returnedBuffers": 1,
77      "capacity": 4194304,
78      "invalidTransfers": 0,
79      "blocked": false
80    }
81  ],
82  "workerOwnership": {
83    "capacity": 4194304,
84    "allocations": 1,
85    "available": 1,
86    "inFlight": 0,
87    "sent": 4,
88    "returned": 4,
89    "closed": false,
90    "detached": 4
91  },
92  "benchmark": "presentation-transfer-benchmark.json",
93  "cpuTradeoff": "Full-baseline admission/round-trip p95 5.196 ms vs 3.295 ms structured clone; motion p95 0.0197 ms vs 0.0076 ms. Bounded ownership, not a frame-rate improvement claim.",
94  "remoteCi": {
95    "source": "4d3c95c",
96    "run": 40156503017,
97    "conclusion": "failure",
98    "passedJobs": [
99      "core",
100      "container",
101      "browser (player)",
102      "browser (probe)"
103    ],
104    "failedJobs": [
105      "browser (multiplayer)"
106    ],
107    "multiplayer": {
108      "passed": 3,
109      "failed": 3,
110      "failures": [
111        "walking through delivery stalls",
112        "walking with slow GPU completion",
113        "shared graphics recovery"
114      ]
115    },
116    "note": "Pre-transfer source. Earlier scheduling/screenshot investigation is retained separately; no remote reliability gate is closed."
117  },
118  "remaining": [
119    "live renderer-worker lifecycle and main-thread placement fallback",
120    "direct simulation/render channel",
121    "compact binary scene codec and profiling",
122    "remote multiplayer scheduling/recovery failures",
123    "reference hardware and full milestones 0\u201318"
124  ]
125}
126