REPOSITORY SOURCE

terrain-recipe-acceptance.json

docs/evidence/terrain-recipe-acceptance.json

1{
2  "date": "2026-10-25",
3  "baseCommit": "a83676a3b95155e49e12b5804ddd952bb235b53f",
4  "scope": "Seeded, versioned hills/ridge/basin recipes, editable baked output, source format 3, bounded caches, CLI and editor generation, durable undo, shared Apply and publication. Full milestones 0\u201318 remain open.",
5  "environment": {
6    "node": "22.23.4",
7    "browser": "Playwright 1.56.1 / Chromium 141 / SwiftShader Vulkan WebGPU",
8    "isolation": "Fresh acceptance servers; interactive editor and beta preserved."
9  },
10  "checks": {
11    "focused": {
12      "passed": 28,
13      "failed": 0,
14      "report": "terrain-recipe-focused.tap"
15    },
16    "headless": {
17      "tests": 926,
18      "passed": 866,
19      "skipped": 60,
20      "failed": 0,
21      "concurrency": 4,
22      "report": "terrain-recipe-headless.tap"
23    },
24    "build": {
25      "passed": true,
26      "packageFiles": 169,
27      "engine": "cab270b88ddbd0e441b4875caba5cfe08c4f1cc062e698130278be1582b3e9f3",
28      "files": 28,
29      "bytes": 51252590,
30      "report": "terrain-recipe-build.log"
31    },
32    "portable": {
33      "passed": true,
34      "outsideCheckout": true,
35      "report": "terrain-recipe-portable.json"
36    },
37    "browser": {
38      "finalPassed": 6,
39      "finalFailed": 0,
40      "initialPassed": 4,
41      "initialFailed": 2,
42      "report": "terrain-recipe-browser.json"
43    }
44  },
45  "observations": [
46    "Three pinned source golden hashes match Node, browser main thread and Worker; different seeds/styles produce different output. Recipe admission owns inputs, validates receipts, bounds cache size and fences clear against pending work.",
47    "Generation preserves source chunks and patch identity; the editor retains imported recipe center/clearing on regeneration. Cancel, local undo, save/reopen, exact regeneration and later sculpt/paint pass. Saved undo/redo survives AuthoringStore restart.",
48    "Native generated ridge shows 13044 changed sculpt pixels and 9962 changed paint pixels. Undo and device recovery are pixel exact. Maximum 23 buffers and 5 textures; owned buffers/textures/compiler chunks reach zero after disposal.",
49    "Two actual travelers retain room identities, peer membership and stable arrival height through generated terrain Apply; immutable publication can be entered for gameplay.",
50    "Initial local save exceeded its five-second assertion; HTTP save took about 4.67 seconds. Initial shared journey exceeded the total budget during published player readiness. Retained two completed source compilations removes repeated inverse-validation work. Benchmark alternating sources: about 104\u2013105 ms before, 4\u20135 ms after warmup. Original validation and deadlines remain.",
51    "Desktop/narrow controls, editor projection, shared view and native ridge rendering visually inspected. These are useful landscape foundations; the final environmental art treatment remains required."
52  ],
53  "limits": [
54    "Final shared journey passes but at a reported 60060 ms including runner overhead; earlier failure and effectively absent timing margin remain open. No sustained performance qualification.",
55    "Previously reproduced published-world restoration reload contention remains open and was not retested here.",
56    "Per-sample collaborative submission, streamed chunks, terrain LOD transitions, voxels, rivers, foliage, water/weather/day-night systems, hardware and long-session acceptance remain open.",
57    "Character models and final environment/arrival art remain deferred but required. No numbered milestone is closed.",
58    "No Docker/Coolify deployment or production qualification performed."
59  ],
60  "sourceFiles": {
61    "apps/editor/style.css": "ed34619b77c3d5185a4de4192110e668017c82b18f1a411b0f2b679bbdb21c9f",
62    "apps/editor/terrain.ts": "49a6b7f00379ae782346f87369455b13183366898827bc9bea1ec1c0c999c2ce",
63    "package.json": "3e2e65019294e937645e801f766e79c19753964863b436e95bd3d785febd8df2",
64    "packages/authoring/terrain.ts": "3174f04cf5f324c4a75cee82b2ee0967910d6f3f95124402d4778f368bcb1e69",
65    "packages/terrain/index.ts": "08a52eb8ca2ae2026159bc898c6a05cc97e8d954fd94e5aa224531c2da19f83c",
66    "tests/authoring-terrain.test.ts": "b0f0defd253c5ce1ea72c93b3f31a3bd71da44e391bc539e7c02cdc0cff16844",
67    "tests/browser/terrain.spec.ts": "62e1c8aed39997992c8c677c2afb626ff9c1b2feeb707088adf169d4f92c4f8d",
68    "tests/fixtures/terrain-browser-entry.ts": "efd397c5df8d151d30713e3e998b17f25e02bb75795008004f8601afd2589b70",
69    "tests/fixtures/terrain-browser.worker.ts": "57d39266d7555927baeb5b98601f0c3f4bfc67d30bc86f9dc23acc0f5712293e",
70    "tests/fixtures/terrain-native.ts": "370dcafaf6c3cde3664360b6365e4f83de329ad68a3b716b9a32fbbf4a74636b",
71    "tools/cli/terrain.ts": "5a3aa62845ab555c536badff942a0f066e6da6838e786de56fb9b3ee3795bf2f",
72    "packages/terrain/generation.ts": "b56af162bb415e4e912e32618f0ebcc1e0aa9e32bce39ca964de9dafb9babf81",
73    "packages/terrain/recipe.ts": "674a2c860cebf33c8738fd9b470576388f6eae6c084ab2d51e9aa4ff438325c0",
74    "tests/browser/editor-terrain-recipes.spec.ts": "c7dbe97d6d74e1127e19e0e52542dc60db08a83bd50c7bd17c55af5547dcef57",
75    "tests/terrain-recipes.test.ts": "e8d24673028e7d70c71192de27c2e972e4b3024532cb278b9df24703d645249b"
76  }
77}
78