Skip to content

EPIC: Strata terrain hardening - #483

Draft
jonit-dev wants to merge 236 commits into
developfrom
epic/strata-terrain-hardening
Draft

jonit-dev wants to merge 236 commits into
developfrom
epic/strata-terrain-hardening

Conversation

@jonit-dev

@jonit-dev jonit-dev commented Oct 10, 2026 •

Copy link
Copy Markdown
Contributor

Strata terrain hardening across the 12 original PRDs. 5/12 PRDs complete (587, 588, 589, 590, 592); 51/62 phase boxes, 112/132 combined phase and acceptance boxes, repository bucket prd:75%. Every remaining criterion stays in scope; runtime performance and visual acceptance remain open.

Character repair, 2026-10-14: the generated forest previously moved north while its mannequin faced south. The template now interpolates the heading quaternion and derives visual ground support from the physical body outside the stock arena. The actual hardware walk changes facingZ: +1 (RED) to -1 (GREEN), moving 15.766 m with zero runtime/console/network errors. Attachment and clearance pass the latest walk; one earlier updated walk still failed, so continuous contact stability remains open. Stock starter coyote jump, buffered jump and respawn each pass; 51 focused template/verifier tests and 68 scaffold tests pass. The deliberate starter source change is reflected in its scaffold hash.

A fresh read-only judge returns IMPROVEMENT / IMPROVEMENT, overall IMPROVEMENT for character correction, on two headed NVIDIA/Turing 1920×1080 pairs with exactly identical tick, player position and complete camera metadata. Feet/shins remain visible; the judge cautions that BEFORE also shows a lower foot, so the stills do not prove contact throughout a stride. The owner-requested Opus 5.5 high audit completed; its separate bounded tree-repair task timed out without a patch. Ground/tree art is unchanged and remains rejected. Forest 60 fps is not proven: the latest Intel live walk still fails p95 (81.7 ms / 16.7 ms), and compilation was mixed into the samples. Native proof and fresh full CI remain open; this PR stays draft.

Character run BEFORE AFTER
1 BEFORE character 1 AFTER character 1
2 BEFORE character 2 AFTER character 2

The branch integrates develop through 5f7143895 (merge fef436694). All six conflicts are resolved; regenerated canonical Three patches preserve morph pipeline sharing and bounded compressed uploads. Stale private-camera references from the automatic merge are corrected. Independent merge review: APPROVE.

Verified locally:

  • 261 focused tests pass, 4 skipped; core typecheck, frozen install and scoped Biome pass. Independent bounded-upload tests: 3/3 pass. Coastal material/shadow tests: 35/35 pass.
  • Immutable starter release v0.1.0: public download matches 31,598,616 bytes, SHA256 3062b90cd7f84e6ff14f6a96de64ad406eeba30c55c95cc045b6219edf71f5b0. A clean extracted package downloaded all 18 entries without checkout assets or a URL override. Fresh-cache forest kit scaffold/build/typecheck/playtest PASS, 819 frames on NVIDIA/Turing. Independent release audit: 50 tests pass, package 616,539 bytes with no kit assets; APPROVE. PRD-589 is archived complete.
  • Full terrain web scenario: 60/63 assertions pass; diagnostics and console/network/runtime policies pass. Three budgets FAIL: after-first-frame task 2,273ms / 250ms, ready 52,877.5ms / 15,000ms, worst-view GPU 47.92ms / 12ms. These gates remain open; full CI qualification remains failed.
  • Documentation links pass. Additional tree and ground-vegetation arms are tracked in existing PRD-580 and remain in progress; they do not change the original 12-PRD tally.

Current qualification: CI run 38505692929 is FAILED. All four unit shards, typecheck, lint, browser/native tests, integration receipts, build and nonvisual template lanes pass. Independent failures are the terrain archive fixture, golden-path local dependency propagation, Strata runtime, and the new native shadow diagnostic's image policy. Local repairs make the terrain package pass 317 tests and strict publint; both real golden scaffolds install/build, and starter also survives its independent second install. The complete starter journey reaches gameplay (23 scenarios pass) but its frame-time gate fails on the laptop; hash-identical develop starter runs reproduce that failure. The later full platformer golden journey passes on Intel hardware, exit 0: scaffold, repeat install, MCP discovery, startup, all gameplay scenarios, web build and artifact checks. Its earlier thermal refusal is superseded by that completed retry.

The new first-frame shadow case reuses the established virtual-shadow scene and now shares its 8% image tolerance (formerly an unrelated 1% default). Base and candidate CI metrics are identical. All 78 focused conformance tests pass; a fresh standard V8 desktop run completes the first-frame submission/lifetime assertions with zero GPU validation errors and passes image comparison in 13 seconds. The CI Android emulator artifact separately proves WorldCells streaming, compressed texture preparation and first-frame shadows pass on candidate 8f74c3314; it uses SwiftShader and proves no hardware performance. Existing NEUTRAL shadow/velocity/LUT verdicts do not meet the current owner rule requiring IMPROVEMENT, so that acceptance box is reopened. The forest walk verifier now uses the existing live-clock mode on browser and desktop; its setup tests pass 3/3, while actual 60 FPS acceptance remains open. The latest generated forest is freshly scaffolded, baked and built, then copied byte-identically to the free laptop GPU. Its live-clock browser scenario fails at 125.8 ms p95 and near-zero net movement; the same game in fixed-step mode moves 1.4 m but still fails at 118.9 ms p95. The generated load snippet lacks physical terrain collision, and its integration is under repair. All ten captured frame-budget windows still report compiling, so neither run proves steady-state FPS. This repair batch is published as a draft while fresh CI waits for the shared board slot held by PR488. No skipped check is counted as a pass.

Earlier full local qualification: 798 unit files and 10,636 tests pass (3 files / 20 tests skipped); full package tests, typecheck and lint pass. Cooked terrain native layouts pass 115 focused assets tests plus typecheck/build/publint. The retained grid8 game builds and renders four nonblank desktop views; its diagnostic frame/lake timing gates remain failed, and its shared-GPU fixed-step run proves neither steady-state FPS nor visual acceptance.

Coastal stone contact: a four-line game-material change uses front-face shadow casting for both procedural and imported coastal stones. Two exact-pose headed NVIDIA before/after pairs were independently judged IMPROVEMENT / IMPROVEMENT, overall IMPROVEMENT: the thin pale contour disappears while stone texture and contact shadow remain. The captured procedural path is proven; imported assets were not visually exercised.

Run BEFORE AFTER
1 BEFORE run 1 AFTER run 1
2 BEFORE run 2 AFTER run 2

Remaining work includes layered forest material and consumer visuals; generated forest browser/native walk budgets; actual CI Strata/editor/consumer qualification; ground performance bands and five-world visual judgment; complete upload runtime proof; remaining native/platform proof; and preview/machinefall walks. Individual PRD checkboxes remain authoritative in the batch.

Accepted procedural ground vegetation

Narrow curved grass blades, meadow/fescue/sedge variation, fern growth variation and joined wind seams are integrated. Independent review of two calibrated NVIDIA/Turing BEFORE/AFTER repeats grades meadow-close and foreground IMPROVEMENT in both pairs and overall; triangle counts, texture bytes and draw structure stay unchanged. Parent integration: 55 focused tests, example TypeScript and scoped Biome pass. Remaining stiff V-shaped tufts mean this is an improvement, not full photorealism acceptance. Optional local-asset 404s still fail capture diagnostics; cooked-kit/native/full-runtime acceptance remains open.

Pair 1: BEFORE meadow-close, AFTER meadow-close, BEFORE meadow-foreground, AFTER meadow-foreground.
Pair 2: BEFORE meadow-close, AFTER meadow-close, BEFORE meadow-foreground, AFTER meadow-foreground.

Tree candidates remain isolated after three fresh visual regressions; the latest oblique-card candidate improves meadow but regresses forest and overview in both pairs. PRD591 has actual callback browser/current-desktop proof (300 host frames, zero pixel mismatch), preview migration and measured bands. Both recovered five-world AFTER runs complete all15 poses with calibrated scale1/MSAA4 and settled queues; independent60-image review rejects alpine snow separation. A separate alpine coverage experiment also regresses and is reverted. No five-world visual acceptance is claimed.

Selected temporal conformance now compares the same26 moving history frames and held pose in browser/current Dawn desktop: pixel mismatch0, deltaE0, no GPU errors through300 host frames. This proves the selected case, not the complete native/platform or pre-381 visual matrix.

Machinefall's matching core/playtest candidate build succeeds, but its unchanged walk initially passes19/20 assertions with789 destroyed morph-texture validation errors. Actual lifetime tracing identifies stale RenderObjects builder/bindings after geometry replacement. The canonical adapter fix passes36 focused tests, core typecheck/build/publint and fresh review; an independent22-test rerun passes. The new core is installed and built; two unchanged consumer runs now pass20/20 assertions across4383 frames each with no diagnostics. The direct replacement case also passes browser/current desktop with zero pixel mismatch, deltaE0 and no GPU errors through300 host frames. Final-frame two-pair visual review is NEUTRAL (preserved appearance), so no visual improvement is claimed. No disposal delay or error suppression is used.

On the new renderer candidate, two positive compressed-bark forest runs each pass10/10 assertions, with preparation count1 at all three poses and zero diagnostics. Fresh12-image review is NEUTRAL, retaining visible bark/vegetation quality. The earlier device-loss attempt remains failed; these repeats do not establish causality, GPU cost or actual-bark native acceptance. Partial GPU attribution identifies a15.46ms mean shared scene-camera pass over119 complete frames, but the required120-frame join fails and original47.92ms worst-view sample remains unattributed. Full CI and the three required runtime budgets remain open; original tally stays5/12.

Renderer cache comparison

Final matching poses retain appearance (NEUTRAL in both pairs); BEFORE2 is the observation-only lifetime probe. Both BEFORE diagnostics fail; both unchanged AFTER walks pass20/20.

Pair BEFORE AFTER
1 BEFORE 1 AFTER 1
2 BEFORE 2 — probe AFTER 2

Compressed bark comparison

All six comparisons are NEUTRAL: visible quality is retained; no visual improvement or measured GPU-cost claim.

Pose BEFORE1 AFTER1 BEFORE2 AFTER2
player BEFORE1 AFTER1 BEFORE2 AFTER2
meadow-close BEFORE1 AFTER1 BEFORE2 AFTER2
overview BEFORE1 AFTER1 BEFORE2 AFTER2

Scoped pre-381 appearance preservation

Exact pre-381-parent/current comparisons for the virtual-shadow scene, velocity/temporal-AA scene, and AtmosphereLuts implementation ran under the same current runtime; these are scoped three-file comparisons, not a full pre-381 parent build. Two runs per arm and effect received a fresh read-only visual verdict of NEUTRAL for all six pairs: sphere shading, thin-line/object appearance, and sky gradient/sun halo are preserved. The four atmosphere captures passed actual NVIDIA WebGPU validation with three compute dispatches, two fences, and no GPU validation errors. Still frames do not establish temporal stability during motion.

Effect BEFORE 1 AFTER 1 BEFORE 2 AFTER 2
virtual-shadow BEFORE 1 AFTER 1 BEFORE 2 AFTER 2
velocity-temporal-aa BEFORE 1 AFTER 1 BEFORE 2 AFTER 2
atmosphere BEFORE 1 AFTER 1 BEFORE 2 AFTER 2

@jonit-dev jonit-dev added the prd:0% PRD execution has no completed phases yet label Oct 10, 2026
@jonit-dev
jonit-dev marked this pull request as draft October 14, 2026 05:49
@jonit-dev

Copy link
Copy Markdown
Contributor Author

PRD614 course correction: alpine source-only ground-table and placement edits now have two-run visual proof. The parent epic remains draft; forest acceptance and package qualification are blocked.

  • Default alpine: NEUTRAL for all eight original pose/run comparisons.
  • Tint: IMPROVEMENT for all eight comparisons.
  • Composition: overall IMPROVEMENT; a fresh follow-up far judge confirms removal in both extra matched far poses.
  • All 16 package-file SHA256 values match across default, edited, tint and extra far runs. Existing 40 ms render-p95 gate passes for alpine.
  • Forest remains open: overview capture times out after120s; isolated ground/edge p95 140.6/132.8ms exceeds40ms. The new166,764-byte ID sidecar puts forest63,139bytes over unchanged25MiBcap. No thresholds relaxed.

Images are immutable original-resolution captures below BEFORE/AFTER labels. Each table links all judged pairs.

Default preservation — NEUTRAL

Pose BEFORE1 AFTER1 BEFORE2 AFTER2
ground BEFORE1 AFTER1 BEFORE2 AFTER2
edge BEFORE1 AFTER1 BEFORE2 AFTER2
boulders BEFORE1 AFTER1 BEFORE2 AFTER2
overview BEFORE1 AFTER1 BEFORE2 AFTER2

Ground tint — IMPROVEMENT

Pose BEFORE1 AFTER1 BEFORE2 AFTER2
ground BEFORE1 AFTER1 BEFORE2 AFTER2
edge BEFORE1 AFTER1 BEFORE2 AFTER2
boulders BEFORE1 AFTER1 BEFORE2 AFTER2
overview BEFORE1 AFTER1 BEFORE2 AFTER2

Composition — overall IMPROVEMENT

Pose BEFORE1 AFTER1 BEFORE2 AFTER2
ground BEFORE1 AFTER1 BEFORE2 AFTER2
edge BEFORE1 AFTER1 BEFORE2 AFTER2
boulders BEFORE1 AFTER1 BEFORE2 AFTER2
overview BEFORE1 AFTER1 BEFORE2 AFTER2

Far removal — IMPROVEMENT in both runs

Run BEFORE AFTER
1 BEFORE far 1 AFTER far 1
2 BEFORE far 2 AFTER far 2

Full source checkpoint and final verification summary follow separately. No merge or complete-PRD claim.

@jonit-dev

Copy link
Copy Markdown
Contributor Author

PRD614 checkpoint pushed: eec91af (39 owned files). Remote conflicts remain resolved: GitHub MERGEABLE, draft. Preserved parent work is excluded from the commit. Normal capability/API precommit and agents/docs/lint/drift prepush hooks pass. Remote checks are all SKIPPED; CI is not green.

All nine implementation phase boxes verified; AC-1 complete, AC-2 and AC-3 open. HIGH readiness audit: CHANGES NEEDED. Composition ground frames are NEUTRAL, so the overall IMPROVEMENT/far-removal verdict does not close the missing clearing proof. A bounded extra matched clearing view is in progress. Forest capture/performance and package cap blockers remain unchanged.

Final root typecheck, lint and docs pass (1,486 lint warnings). Selected web/native conformance passes 3/3 each, zero native mismatch; full matrix unrun. Native units 1,593 passed/62 skipped; broad portable partitions and focused repairs are described in the existing PRD. Full starter-kit suite remains 17 pass/2 forest failures; no full-board green claim. Two precommit code reviews ran; the committed-worker review precondition remains an explicit workflow exception, not fulfilled retroactively.

Default frame/GPU p95 ms, run1 / run2: ground7.5/.78 /1.6/.54; edge1.9/.76 /1.1/.74; boulders1.5/.88 /1.1/.73; overview1.7/.67 /.9/.69. Edited: ground8.6/2.50 /8.3/1.20; edge1.3/.62 /1.3/.77; boulders3.9/2.76 /1.0/.82; overview6.1/.69 /1.0/.76. Extra far: default1.1/1.32 /1.4/1.42; edited1.4/1.45 /1.2/1.48. Existing40ms render gate retained.

All16 source package hashes below match both runs of default/edited/tint and extra far arms. The verifier independently checks published package files before/after reload.

{
  "heightmap.u16": "bd84cb6c52a1142303dfb0f304190a981f29d77d118d3880e3eb246549838ae1",
  "models/boulder-mid.glb": "9ed5d8f31e3a419360ca709f8c1cf3be7e80d06d17aad08420f1e1bf696b127c",
  "models/boulder-near.glb": "e338c10eea62b5a0c5cee40b0f9bf7bd360c4f344390ca12f365b2f6a6c71827",
  "placement-ids.json": "ae4ba844fbf5cea1ce5ae5d70f40dfd765abfc4abf96d995a256750cb926b9e6",
  "placements.bin": "5c47dd59619843bc056fbc8391ca7bccdef86c9950cd192c53a6928676865c26",
  "sky.hdr": "5477b7dbb2aea4a6947cb36b96339c119f90bf36a03b039af3254b5e6a22896d",
  "splat.rgba": "fde8bf22c6841847f58ab523682f29e77a774a364cdd0e34c0025b6ad06c6f42",
  "terrain-table.json": "655a022ece2817122af9f8aaea4337c71b3a89cb9f3492a6e0a9cee4d1e2dd11",
  "textures/dirt_diff.jpg": "4a2f7803841f4fe1d420905c7be33365b6c9e552e01c2fa2b15d2351aae52f14",
  "textures/dirt_nrm.jpg": "3867aaf17338e5005f7b836c08c8c24c6c6d96e74ff761611780e28a3a7ad58c",
  "textures/rock_diff.jpg": "c5207e702130a7ddead529f37c2358bca401a5495df81cf4d47a10ef77723822",
  "textures/rock_nrm.jpg": "ba4d2e702a206b29338573215fbdb210ba1b574386f4544e48f230cd45c5284f",
  "textures/snow_diff.jpg": "4207ab2612eb5bad7debd5afac2bbe4962d5c23df714af05c14529d646f676d3",
  "textures/snow_nrm.jpg": "25395eefbd5db608841e3c14cb63ff1d4f1999688b5695d8f721b34c73162917",
  "water.json": "f7fed3e252695f05157b94da2c826d110354c4e8ac90154ee458196bca162c3b",
  "world.json": "48a504fb9764b279fb83646e723542e65efdf0fe5b0429113a3932029afc3b6d"
}

Parent checkout retained for active epic work; no merge or archive.

@jonit-dev

Copy link
Copy Markdown
Contributor Author

PRD614 clearing follow-up closes the specific AC-3 visual gap: a fresh read-only judge rates IMPROVEMENT in both runs. Both original tan boulders are clearly visible BEFORE and absent AFTER; terrain, lighting and framing remain intact. Original four poses and earlier far pose are unchanged; KIT_COMPOSITION_FAR=1 appends the extra matched clearing view. Earlier unframed ground images remain NEUTRAL; this evidence directly frames the missing effect.

Four actual headed NVIDIA Turing runs pass all original assertions and 40ms render-p95 gate; all16 package SHA256 values match earlier controls. Clearing frame/GPU p95 ms, run1/run2: default1.6/1.46 /1.1/1.51; edited1.0/1.40 /1.0/1.42. Parent focused tests46/46; scoped Biome0errors/5warnings.

Run BEFORE AFTER
1 BEFORE clearing 1 AFTER clearing 1
2 BEFORE clearing 2 AFTER clearing 2

Reproduce: KIT=alpine KIT_ARM=compare KIT_COMPOSITION_FAR=1 KEEP_KIT_GAME=1 pnpm --filter strata-terrain-preview test:kit. AC-1 and AC-3 now have complete scoped proof. Forest AC-2, the63,139-byte package overrun, retained parent GLB mismatch and full qualification remain open. Parent epic stays draft; no merge/archive. Concurrent screenshot additions were preserved in a normal merge commit, no force-push.

@jonit-dev

jonit-dev commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor Author

PRD614 repairs pushed in 303c2fd. Remote conflicts remain resolved: MERGEABLE, draft. All 33 remote checks are SKIPPED, so CI is not green.

  • Package cap fixed: fresh controlled forest output is 26,086,643 / 26,214,400 bytes, leaving 127,757 bytes. Lossless JPEG Huffman optimization saves 190,896 bytes across six streamed models. Independent checks of all 30 images confirm identical decoded pixels, dimensions, quantization tables, metadata, non-image buffers, materials, accessors and semantic JSON. Source assets and combined GLB/height/placements/IDs/splat/manifest hashes remain unchanged.
  • Portable dependency: the assets package pins this MIT JsPeg commit through an integrity-pinned public tarball. It adds no native binary, toolchain or install script. Existing NodeIO writing is reused. Unsupported valid images retain their bytes; malformed images fail with asset context. The codec is young and a new dependency; provenance remains a review consideration.
  • Verification: laptop Node 20.19.6 frozen install and 34 cooker tests pass. Desktop 164 focused tests, root typecheck, lint and docs pass (1,487 lint warnings; 3,133 links). Build, strict publint and packed dependency checks pass. Starter kits remain 17 pass / two forest golden failures: working-tree splat and retained combined-GLB hashes. Their pins remain unchanged.
  • Forest AC-2 remains open: canvas capture now uses the existing 120-second timeout instead of Playwright's 30-second default, with red/green regression and 87 runner tests passing. The bounded GPU rerun stopped earlier at the 15-second bridge sample timeout; diagnostics were not evaluated. No further identical GPU retry.

Progress: 9/9 phase boxes; AC-1 and AC-3 complete, AC-2 open. Parent WIP is preserved and excluded from this commit. No complete-board, complete-PRD, archive or merge claim.

@jonit-dev

Copy link
Copy Markdown
Contributor Author

Fresh default alpine qualification after the lossless streamed-JPEG optimizer is complete: two headed NVIDIA/Turing runs, all original assertions and the 40 ms render ceiling pass; all 16 terrain-file hashes match the preceding default output.

24 additional images and both judge reports are published at screenshot commit 09803d7332a7bbb753f3de4c5fcd64319c7aa591, preserving previous evidence. A fresh judge inspected all 16 frames as eight full-resolution pairs: all NEUTRAL. The initial individual-image judge reported blank edge/overview frames; actual PNG inspection and the fresh paired judgment contradict that report. Both reports remain available; the presentation cause is unknown.

Forest AC-2 stays open. One unchanged overview diagnostic with a fixed 60-second bridge host timeout produced the canonical 1920×1080 NVIDIA image and CPU profile. All 17 nonperformance assertions passed. CLI exit 1: only 1,021 of 1,024 phase samples were present, so the numeric render result was null; this is neither a performance pass nor a measured 40 ms ceiling violation. The original assertions, renderer recipe and ceiling remain unchanged. Sampled CPU self time concentrates in getCurrentTexture (37.93%) and queue submission (18.65%); this does not establish GPU execution cost or the root cause. A separate 30-second shipped trace had 73.2% main-thread idle and a 499 ms longest task, without establishing steady-state FPS.

The visual collector validated three existing forest run-one images (ground, edge, overview), preserving their failed performance gates. Lake collection stopped before runtime at the capture lock after 120 seconds (CLI 75); run two and forest AFTER remain missing. All owned diagnostic processes are stopped. No threshold, source pin or acceptance criterion changed. Parent remains draft; no full-board or completion claim.

Documentation validation: link check passed; six focused suites passed 256 tests. PRD checkpoint 5e1ac3bc5 records these results.

@jonit-dev

Copy link
Copy Markdown
Contributor Author

Forest BEFORE collection is now complete: eight original pose/run images, headed NVIDIA/Turing at 1920×1080, every nonperformance assertion passing. The original failed render gates remain recorded. Fresh AFTER ground run one validates (CLI 1, performance failure) and edge run one passes (CLI 0). AFTER overview and lake record WebGPU device loss and separate 120-second screenshot failures; the incomplete set was rejected by the judge waiter, so no forest visual verdict or AC-2 completion is claimed.

A bounded second-adapter probe used SHA-validated exact static builds on the laptop's real Intel gen-12lp, headed Xwayland, the normal WebGPU recipe and unchanged original assertions/40 ms ceiling. It also stalled at canvas screenshot stability, with no saved device-loss/mapping errors and no valid image. Both owned preview servers and all diagnostic jobs are stopped. No timeout, renderer flag, source pin or acceptance criterion was relaxed.

New package qualification: the laptop package build passes; affected-package units pass 6,230, skip 13, fail 4. Two failures concern Git tracking in the empty offload checkout and pass locally in the complete 34-test MCP suite. Two forest golden failures remain: the splat mismatch follows retained parent recipe edits; a controlled committed-HEAD cook matches the splat pin. The combined GLB pin predates an earlier terrain-map encoding normalization; retained parent JPEG-preservation work has a separate hash. Pins stay unchanged. A full pnpm test wrapper attempt on the offload checkout stopped before tests because there was no Git HEAD; it is not a full-board result.

Inspected packed tile, batch, GPU resource and Three.js code is unchanged between BEFORE and AFTER; inspected loader/starter differences match PRD-614. Source maps are absent, limiting exact source-content provenance. CPU browser probes do not support either a clipped-page screenshot repair or a foregrounding repair; no speculative source fix was applied. Chromium decodes all 26 published JPEG pairs with identical dimensions/RGBA; the other four published KTX2 pairs are byte-identical. These are decoder checks, not a GPU visual verdict.

PRD checkpoint e5fd63cb1 records these results. Documentation links pass; six focused documentation suites pass 256 tests. AC-2 remains open, parent remains draft, no full-board or merge claim. Next investigation: actual game canvas bounds, visibility and frame activity through the existing trace harness.

@jonit-dev

Copy link
Copy Markdown
Contributor Author

PRD-614 remains in progress: 3/3 phases, 2/3 acceptance criteria. This checkpoint changes documentation only.

An owned-window forest pilot produced a correctly framed image with 1:1 pixel calibration. Source inspection confirms Loop.advance() intentionally freezes simulation between manual steps while browser rendering continues. The original pilot stays unqualified: its label covered source pixels and post-capture geometry was missing.

The corrected full comparison qualified 1/16 frames, then stopped on BEFORE edge run one at the 590-second host deadline. Its PNG exists but final checks did not complete; no forest visual judge ran. The capture Node process consumed CPU, while offline image inspection/blank checks took 360/313 ms. Root cause remains unverified. All owned capture/server process groups are stopped; no identical retry or timeout increase followed.

Checks: 256 tests across six document suites passed; 3,133 documentation links passed; PRD progress remains prd:75%. Original render failures and prior package golden failures remain recorded. No AC-2 pass, full CI pass, merge, or archive is claimed.

@jonit-dev

Copy link
Copy Markdown
Contributor Author

Forest AC-2 now has a complete 16-frame comparison, but its fresh visual verdict is REGRESSION: seven pose/run pairs are NEUTRAL; lake run two shows a broad flat terrain shelf in AFTER that is absent in BEFORE. The raw images confirm it. AC-2 remains unchecked; no merge or archive.

All 40 images and capture provenance · Verbatim fresh judgment · Failed lake pair, BEFORE left.

Lake run two: BEFORE left, AFTER right; fresh verdict REGRESSION

All 16 headed NVIDIA captures pass original resource and canonical nonblank checks, fixed-camera/clock, RAF, post-capture geometry, no-error, frozen-file and owned-cleanup checks. Original 1920×1080 pixels are retained, labels outside the frame; normal automatic drawing-buffer sizes are recorded.

The previous observer stall was an ignored collector bug: it compared brightness with a nonblank threshold. The shipped regionMetrics measurement now applies the unchanged 0.9 criterion; saved edge nonblank ratio is 0.99265. No production code or rendering-quality override changed. Original CLI/performance failures remain failed.

Read-only attribution finds that readiness counters cover the ground spawn, not the distant skyline; reports lack per-tile LOD/morph/residency data. The cause of the visible terrain regression is not yet established. No frame was discarded or relabeled.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

critical prd:75% PRD phases in, acceptance open

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant