trusted-host-acceptance.json
docs/evidence/trusted-host-acceptance.json
1{
2 "recordedAt": "2026-10-25T14:41:05.846179+00:00",
3 "baseCommit": "8891ff5ac220386fc60b1e9c6cd6d6a3ea416404",
4 "fullPlanApproximatePercent": 66,
5 "numberedMilestonesClosed": [],
6 "capability": "Opt-in static trusted multiplayer: server motor, browser prediction, authoritative interaction reach, durable movement, exact retries and staged travel.",
7 "sourceSha256": {
8 ".github/workflows/check.yml": "4e822e8b1696ddc8bfe6074388430a53b16c30278f5ab5cb6a616d531cba067c",
9 "apps/player/main.ts": "f90ff2fe41c111afdd203618404dda279081c91cbc296379497f744a1ceedabf",
10 "apps/player/simulation.worker.ts": "68d270ce9a6bd7c5a282a302ad80bc03fbbac9f4d169e3571fe840c9b453d2f6",
11 "compose.persistent.yaml": "affc8220923d0746b9d4ab163f9a02c1c134b22f01192a9221ca64f25729f1d1",
12 "docs/ENGINE_PROGRESS.md": "9a3663affe6ec38c921c8bb5ac2860a8ed78130d1605a9e9adaa8894368dd09d",
13 "docs/IMPLEMENTATION_STATUS.md": "0f656c49b829f6a346228a0943860bcb99ce00e0062b5411a085731aa38d0462",
14 "docs/PERSISTENT_ROOMS.md": "3ef3f295c3ef6844113952180eaef1822130bd51c72f1539e6d50d15366e539e",
15 "docs/TRUSTED_HOST.md": "d1b4595005863e390c96f997811f5bddd2018835a15626ce987e242494c7102f",
16 "games/darkwind/trusted-world.ts": "987c5d60d22ab989ef5ea3d4da2dcad48b20357bd4c13821bf65ce969f8396d6",
17 "package.json": "0a5321dacc37799272a7317a134d7d7d25a2daf503ae41d9368bd3295b30a2e4",
18 "packages/authoring/index.ts": "9992706f725afe3b53bcd9590c7fbd123cdb15b13db64f4a92329f031034abff",
19 "packages/authoring/observations.ts": "96a554cd773a08c947988f99db71ca8be30245106986c1a86c53c6f826a0b5d6",
20 "packages/authoring/undo.ts": "a9bba4f1f917faab8adef5d3df438df71fb951367718d3bf8162adf4160577e7",
21 "packages/compiler/index.ts": "c27ee0b278df8007cb290ba009332b99efa27cdf921fdd191648d451e2e6b3c8",
22 "packages/net/motion.ts": "f96f1e0a32ea509a8a961747a16753dc3c71e68166c22a78be5d9cc58989e1c4",
23 "packages/net/persistent-client.ts": "80fae3dca9fd67dfc753251c41c81eca200ac1b90a6cae61918c534805f1d5bf",
24 "packages/physics/index.ts": "39733c07b95132f35d90c471f208d8e00adc04cfab38d4aae03e8b7a8fc9a755",
25 "packages/schema/checkpoints.ts": "54f810e607e182c65408aa6487491586dde5bfd730aa0ca7304b9c2ddd02c0bc",
26 "packages/schema/index.ts": "0a983ca57744d0d29952b1b13f2b584e6a71dcdb34f950af3947d5cd687c01d0",
27 "packages/simulation/checkpoint.ts": "d8a249122713f7b44d7dadca3bbda30db3e91e249832945bc32f2453eb4cc39b",
28 "packages/simulation/index.ts": "d9dc32b1c6fa9d69e6a0900557f5fe40c57b964aba3e693e58539e10b19cdaf4",
29 "playwright.trusted.config.ts": "28ff33dde4ea0167043f8ccc359aceb823500d03af29cbb9660895d48ea519ba",
30 "services/control/ledger.ts": "cd3711d97f7c84b5cee0fafad82ab66ac734a16f0778c5eaf31d1c3eb085a834",
31 "services/control/upgrade-plan.ts": "8a9e2ef7da286450c459d01e9d4ae20c7d66f7fa14b069f308b7756ed7f77517",
32 "services/persistent/main.ts": "64046d9be4ae7d81fc32f94ea6041d16d9276a24dc1116e80af1a6dfc0aa2600",
33 "services/persistent/server.ts": "3eb3287773ce098e30a5f61027cd5cdbf09fddb828ddfa19635b9e8aded15d60",
34 "services/sim-host/motion.ts": "5ae3113fc0bc92d182b4cf2501e1f461c94d9b9aaadc23c3f119156807126bfb",
35 "tests/browser/persistent-helpers.ts": "e6fc4bea4ed955216979b1a156b7c5915e1d9212d9f2fbcb46700e81328de2f7",
36 "tests/browser/persistent.spec.ts": "970c1851851d2542a55080e2d746b1a399d68de2d2869a5e7a1adde611b3954c",
37 "tests/browser/trusted-latency.ts": "0373a1e0343761b5385a1f619ad4a5262c83c73dc8586f1e0c7102bc1207bdbd",
38 "tests/fixtures/seed-persistent-browser.ts": "78dc29862c257b1cdbeec0b969280ae9c863b990f8416e0361efa2b09b68fe5b",
39 "tests/persistent-room.test.ts": "22cbbfd4ce0168ed5cbb43a2c80869ae59fe3f0391f5901b3330dfe96ef34514",
40 "tests/trusted-motion.test.ts": "2bbe2eba73a539bd845199f22a917c87f687e2349c3fd57146294f4f074c49db",
41 "tests/trusted-room.test.ts": "5cf3e0458e3362cba10f6a570e7449b4774ea8785fad5e626fd992f44f1c4d96",
42 "tools/cli/test-control.mjs": "22e4fd2da4b42bae2d6978429121312385d4c8623242925cbde410f9a7b5b7a2",
43 "tools/cli/test-persistent.mjs": "013b9bc1061407a48d3e8a74413e2e113cfc81b8d73745c23ea9f35f1df05201",
44 "tools/cli/trusted.mjs": "e10232b9eccde2ef954c6dcae95fdf09e0e8cf8b7645aec9171a8dadd1c7cd5f"
45 },
46 "environment": {
47 "node": "22.23.4",
48 "chromium": "141.0.7390.37",
49 "graphics": "Headless Chromium, SwiftShader through Vulkan; physical GPU qualification remains open"
50 },
51 "verification": {
52 "typeAndBoundaries": "passed; 125 package source files",
53 "headless": {
54 "tests": 641,
55 "pass": 616,
56 "fail": 0,
57 "skipped": 25
58 },
59 "finalFocusedNative": {
60 "tests": 6,
61 "pass": 6,
62 "fail": 0,
63 "skipped": 0
64 },
65 "postgresAndRecovery": {
66 "tests": 27,
67 "pass": 27,
68 "fail": 0,
69 "skipped": 0
70 },
71 "productionTrustedBrowser": {
72 "startTime": "2026-10-25T14:39:11.141Z",
73 "duration": 109048.93699999999,
74 "expected": 1,
75 "skipped": 0,
76 "unexpected": 0,
77 "flaky": 0
78 },
79 "productionCooperativeBrowser": {
80 "startTime": "2026-10-25T14:30:46.721Z",
81 "duration": 100662.497,
82 "expected": 1,
83 "skipped": 0,
84 "unexpected": 0,
85 "flaky": 0
86 },
87 "composeConfiguration": "passed for trusted profile; Docker execution not locally qualified",
88 "latency": {
89 "rttMs": 150,
90 "firstLocalMs": 0,
91 "firstServerMs": 100,
92 "maximumCorrectionMeters": 0.0008735082938307634,
93 "pendingInputs": 5
94 },
95 "browserTransport": "75 ms injected at send and receive in both real simulation-worker WebSockets (150 ms added RTT)",
96 "journey": "Two actors, exclusive lantern, chest transfers, failed graphics preparation, garden and sanctuary travel, reload with only return credential, simulation-worker recovery.",
97 "artifacts": {
98 "trusted-browser-journey.json": "36ad4c92637da87d8fdbc4f9a00b4cbff994289e742ad4931ff0c8456b42e22e",
99 "trusted-motion.tap": "b92e1e7bf52b2480150ce0656a21938d3201942d6f16ed5ea968d4a695739fd1",
100 "trusted-control.tap": "655efaeda38be6359f8b81a56e81c94041f53dd1cfd11fd80c64eda3289f9c2f",
101 "trusted-garden.png": "bcac5b9e738321273e55033768f44f18e5ab928990f8ebdc44c91353c668e050",
102 "trusted-sanctuary.png": "25e030bc200d51918322f3b792b7210012198ea1c692f186a261a9559d224e77"
103 }
104 },
105 "testCorrections": [
106 "The cooperative overload fixture explicitly enters its held transaction before flooding; an immediate flood can legitimately disconnect before any transaction starts."
107 ],
108 "failuresFixed": [
109 "A slow inventory/checkpoint commit could hold the motor long enough to reject legitimate inputs; authoritative reach is now captured at the input boundary and ordinary SQL commits do not hold movement. A held-commit socket fixture reproduces the failure and verifies the fix.",
110 "Zero-duration Rapier query refresh caused divergent grounded movement; refresh now uses a normal static tick.",
111 "Neutral host frames must retain the acknowledged input sequence or stale-input filtering keeps the previous movement.",
112 "A new travel stream could be emitted before its receipt; successful transitions now publish the receipt without another asynchronous read.",
113 "Disconnect during a committed-state read could access retired native state; active ownership is rechecked and locked native motors are retained until release.",
114 "Chest UI refresh could move keyboard focus to Close during saving; neutral focus is retained and restored only while still owned by the panel. The keyboard fixture waits for an enabled target."
115 ],
116 "remaining": [
117 "Static collision only; authoritative platforms, patrols, props and behaviors remain unsupported.",
118 "Only self motor streams and durable records are individually addressed; shared item ownership/chest contents remain public. General private entities and secret fields remain open.",
119 "Competitive reward systems, account recovery, cross-host routing, congestion/long soaks and physical-device performance are not qualified.",
120 "Pose checkpoints are periodic; the four-second sampling interval is not a measured production recovery guarantee.",
121 "Docker-host and remote S3 qualification remain open. Last observed GitHub jobs were prevented from starting by account billing; this record claims local results only.",
122 "Full milestones 0\u201318 and the final user-reviewed character-art pass remain open."
123 ]
124}
125