prefab-library-acceptance.json
docs/evidence/prefab-library-acceptance.json
1{
2 "date": "2026-10-25",
3 "baseCommit": "2adf702fc0feae81090de76119f3832bb7e7acf6",
4 "fullPlanApproximatePercent": 49,
5 "headless": {
6 "command": "node --import tsx --test --test-concurrency=4 tests/*.test.ts",
7 "passed": 489,
8 "failed": 0
9 },
10 "browser": {
11 "passed": 6,
12 "failed": 0,
13 "report": "prefab-library-browser.json",
14 "capture": "editor-prefab-library.png",
15 "shared": [
16 "two travelers",
17 "worker and main render paths",
18 "placement",
19 "source update retaining overrides",
20 "undo source revision",
21 "undo placement"
22 ]
23 },
24 "checks": [
25 "TypeScript",
26 "96 source-file package boundaries",
27 "isolated production client build",
28 "isolated production relay build"
29 ],
30 "issuesFoundAndFixed": [
31 "Incoming model alias could collide with a second source asset; reserve all incoming names.",
32 "Empty-library browser test inherited models from prior journeys; prepare and restore the test fixture.",
33 "Live revision responses omitted source metadata and failed checksums; serve complete immutable snapshots, including after restart."
34 ],
35 "verificationLimits": [
36 "An unrestricted final suite run had one SIGKILL in presentation-channel.test.ts; a four-worker full run passed all 489 tests. No assertion was relaxed.",
37 "The sandbox-only targeted runner reported a file-level pass without individual cases; acceptance uses the escalated native runs."
38 ],
39 "remaining": [
40 "Source membership/kind migration needs explicit bindings; browser rejects it.",
41 "No browser detach action; moving members outside an instance rejects.",
42 "Whole-instance conflict boundary for concurrent linked member edits.",
43 "No full roadmap milestone closure or final character-art pass."
44 ],
45 "localPreview": {
46 "url": "http://localhost:5181/editor.html",
47 "revision": "0",
48 "sha256": "f076388ad340c7b1e1aa84e72368aa6a9d3a3f6546187a2fed1d0fba66c36977",
49 "savedDraftUnchanged": true
50 },
51 "sourceSha256": {
52 "apps/editor/main.ts": "765db155e4f385c2435326e3eb3e987d01fbf6c68e8ed0c9645a6118e581e26b",
53 "apps/editor/style.css": "19e19b2debddcc86922549b0c251d6fa7459684249111cde1e4844f89bc6a832",
54 "apps/editor/prefabs.ts": "fb6797e84f688e2de109398c6d2240c90317e2bdf8539f59a21d1f98b84e27a8",
55 "packages/authoring/index.ts": "e403959a4e13dfd386fd0c1ab6fa1e81dd3f75312899412c7bba5bbd73a5407a",
56 "packages/authoring/merge.ts": "271d4e921508ff86a51dc42829dd6922544503e91c17a7bc22651429194de6d8",
57 "packages/authoring/undo.ts": "6de12bc24a68b6d6612aa8e62de7f277300248291e74d009cf888b66088c8e01",
58 "packages/authoring/prefab-links.ts": "e990fd8da2ce2653461a8cff8f5f3474a6644e4d23368ecc9693983c2b82f774",
59 "packages/authoring/prefab-placement.ts": "8659d9c6246d6bb1e863db83c99ca80c79281269e70ea1896953c79eead165fb",
60 "packages/world/prefabs.ts": "4c3591b0902dfbff4bb0dbb9337c7fe907f179e4e168ef4c174d6baeb158bf3f",
61 "services/relay/server.ts": "5ad1d2004ebd41dbc41af3a7ea2ef98da9fe18729a63534cd0ed7bdec6b27824",
62 "tests/prefab-links.test.ts": "9b8384c9bee9475a4ffd4508e9dfb7d67361e91c707fea9e3b3b2d42b1f7b67b",
63 "tests/browser/editor-prefab-library.spec.ts": "d44b63cc2ac758fcbe652efa4cb96ef245d10f7135bc2be805ca4b4fd4ebb00b",
64 "tests/browser/editor-models.spec.ts": "da52cbb006c83c2977be1458325187f50c792a0e9bf8ca49fdf855dbaecedb19"
65 }
66}
67