diff --git a/coordination/claims/M00-QAR-ANIMATION-SKY-EVIDENCE-001.md b/coordination/claims/M00-QAR-ANIMATION-SKY-EVIDENCE-001.md index 5471ce3..decf600 100644 --- a/coordination/claims/M00-QAR-ANIMATION-SKY-EVIDENCE-001.md +++ b/coordination/claims/M00-QAR-ANIMATION-SKY-EVIDENCE-001.md @@ -1,6 +1,7 @@ # M00-QAR-ANIMATION-SKY-EVIDENCE-001 — Animation and sky evidence + ## Ownership diff --git a/coordination/claims/M00-QAR-CAMERA-FRAMING-REFINEMENT-001.md b/coordination/claims/M00-QAR-CAMERA-FRAMING-REFINEMENT-001.md index 356c340..6f034b0 100644 --- a/coordination/claims/M00-QAR-CAMERA-FRAMING-REFINEMENT-001.md +++ b/coordination/claims/M00-QAR-CAMERA-FRAMING-REFINEMENT-001.md @@ -1,6 +1,7 @@ # M00-QAR-CAMERA-FRAMING-REFINEMENT-001 — Goldshire pitch/FOV refinement + ## Ownership diff --git a/coordination/claims/M00-QAR-CAMERA-OCCLUDERS-001.md b/coordination/claims/M00-QAR-CAMERA-OCCLUDERS-001.md index b5a66f3..01b34f2 100644 --- a/coordination/claims/M00-QAR-CAMERA-OCCLUDERS-001.md +++ b/coordination/claims/M00-QAR-CAMERA-OCCLUDERS-001.md @@ -1,6 +1,7 @@ # M00-QAR-CAMERA-OCCLUDERS-001 — Camera occluder diagnostic + ## Ownership diff --git a/coordination/claims/M00-QAR-CAMERA-POSE-EVIDENCE-001.md b/coordination/claims/M00-QAR-CAMERA-POSE-EVIDENCE-001.md index e64f6fa..f44eeb7 100644 --- a/coordination/claims/M00-QAR-CAMERA-POSE-EVIDENCE-001.md +++ b/coordination/claims/M00-QAR-CAMERA-POSE-EVIDENCE-001.md @@ -1,6 +1,7 @@ # M00-QAR-CAMERA-POSE-EVIDENCE-001 — Goldshire camera pose evidence + ## Ownership diff --git a/coordination/claims/M00-QAR-CAMERA-POSE-SWEEP-001.md b/coordination/claims/M00-QAR-CAMERA-POSE-SWEEP-001.md index 63a28b3..eb64e82 100644 --- a/coordination/claims/M00-QAR-CAMERA-POSE-SWEEP-001.md +++ b/coordination/claims/M00-QAR-CAMERA-POSE-SWEEP-001.md @@ -1,6 +1,7 @@ # M00-QAR-CAMERA-POSE-SWEEP-001 — Empirical camera pose sweep + ## Ownership diff --git a/coordination/claims/M00-QAR-CAPTURE-SHUTDOWN-001.md b/coordination/claims/M00-QAR-CAPTURE-SHUTDOWN-001.md index 28921b0..dcbd1b1 100644 --- a/coordination/claims/M00-QAR-CAPTURE-SHUTDOWN-001.md +++ b/coordination/claims/M00-QAR-CAPTURE-SHUTDOWN-001.md @@ -1,6 +1,7 @@ # M00-QAR-CAPTURE-SHUTDOWN-001 — Capture shutdown drain + ## Ownership diff --git a/coordination/claims/M00-QAR-COORD-CALIBRATION-001.md b/coordination/claims/M00-QAR-COORD-CALIBRATION-001.md index 1722ca2..59180ae 100644 --- a/coordination/claims/M00-QAR-COORD-CALIBRATION-001.md +++ b/coordination/claims/M00-QAR-COORD-CALIBRATION-001.md @@ -1,6 +1,7 @@ # M00-QAR-COORD-CALIBRATION-001 — Renderer coordinate calibration + ## Ownership diff --git a/coordination/claims/M00-QAR-FINAL-PAIRED-EVIDENCE-001.md b/coordination/claims/M00-QAR-FINAL-PAIRED-EVIDENCE-001.md index 6a0d64a..546b14c 100644 --- a/coordination/claims/M00-QAR-FINAL-PAIRED-EVIDENCE-001.md +++ b/coordination/claims/M00-QAR-FINAL-PAIRED-EVIDENCE-001.md @@ -1,6 +1,7 @@ # M00-QAR-FINAL-PAIRED-EVIDENCE-001 — Final paired evidence audit + ## Ownership diff --git a/coordination/claims/M00-QAR-FOV-SWEEP-001.md b/coordination/claims/M00-QAR-FOV-SWEEP-001.md index c63bd35..9a5ccb1 100644 --- a/coordination/claims/M00-QAR-FOV-SWEEP-001.md +++ b/coordination/claims/M00-QAR-FOV-SWEEP-001.md @@ -1,6 +1,7 @@ # M00-QAR-FOV-SWEEP-001 — Empirical camera FOV sweep + ## Ownership diff --git a/coordination/claims/M00-QAR-GUI-RID-SHUTDOWN-001.md b/coordination/claims/M00-QAR-GUI-RID-SHUTDOWN-001.md index 62ffe62..4912a3f 100644 --- a/coordination/claims/M00-QAR-GUI-RID-SHUTDOWN-001.md +++ b/coordination/claims/M00-QAR-GUI-RID-SHUTDOWN-001.md @@ -1,6 +1,7 @@ # M00-QAR-GUI-RID-SHUTDOWN-001 — GUI capture RID shutdown + ## Ownership diff --git a/coordination/claims/M00-QAR-INTEGRATOR-CLOSEOUT-001.md b/coordination/claims/M00-QAR-INTEGRATOR-CLOSEOUT-001.md new file mode 100644 index 0000000..8fa8eb8 --- /dev/null +++ b/coordination/claims/M00-QAR-INTEGRATOR-CLOSEOUT-001.md @@ -0,0 +1,79 @@ +# M00-QAR-INTEGRATOR-CLOSEOUT-001 — M00 milestone closeout + + + + +## Ownership + +- Target: M00 +- Program: QAR +- Owner/Agent ID: sindo-main-codex +- Branch: `work/sindo-main-codex/m00-integrator-closeout` +- Lease expires UTC: 2026-07-15 +- Integrator: sindo-main-codex, assigned by the user on 2026-07-13 + +## Outcome + +Audit merged M00 work packages, refresh final Evidence, close the milestone and activate M01. + +## Non-goals + +- Change renderer behavior or compatibility claims. +- Start M01 implementation. +- Commit proprietary references or generated capture output. + +## Paths + +- Exclusive: M00/M01 target status and final M00 Evidence +- Shared/hotspots: `targets/README.md`, `targets/DEVELOPMENT_ROADMAP.md`, completed M00 claims +- Generated/ignored: `user://` post-merge reports + +## Contracts and data + +- Public API/events: unchanged +- Schema/format version: unchanged +- Migration/compatibility: none +- Consumers: milestone integrator and M01 work packages + +## Dependencies + +- Requires: merged M00 PRs #1 through #15 and final paired evidence +- Blocks: M01 activation +- External state: private reference images remain outside Git; their hashes and metrics are already recorded + +## Verification + +- Commands: post-merge render baseline dry-run, coordination gate, documentation gate +- Fixtures: seven-checkpoint non-proprietary manifest and recorded private-reference hashes/metrics +- Fidelity evidence: closeout preserves the explicit non-parity classification in `docs/M00_FINAL_PAIRED_EVIDENCE.md` +- Performance budget: no runtime change + +## Documentation deliverables + +- Inline public API docs: unchanged +- Module specification: unchanged +- Data-flow diagram: unchanged +- Sequence/state/dependency diagrams: unchanged +- Source map/status updates: target index, roadmap current state and M00 Evidence + +## Simplicity and naming + +- Important names introduced: none +- Simplest considered solution: status and Evidence-only integrator patch +- Rejected complexity/abstractions: new closeout tooling for a one-time milestone transition +- Unavoidable complexity and justification: none +- Measured optimization evidence: not applicable + +## Status + +- State: ready-for-review +- Done: verified all M00 PRs and merge commits, refreshed final Evidence, closed M00, activated M01 and passed transition gates +- Next: review and merge the closeout PR before starting an M01 implementation claim +- Blocked by: + +## Handoff + +- Commit: `ba81098` +- Results: exactly one ACTIVE target (M01); M00 DONE marker accepted; post-merge baseline, comparator self-test, coordination and documentation gates passed +- Remaining risks: documented renderer fidelity gaps and D3D12 fallback continue beyond M00 +- Documentation updated: target status/index, development-roadmap current state and final M00 Evidence diff --git a/coordination/claims/M00-QAR-LANDMARK-REGION-DIFF-001.md b/coordination/claims/M00-QAR-LANDMARK-REGION-DIFF-001.md index 91cafee..712430e 100644 --- a/coordination/claims/M00-QAR-LANDMARK-REGION-DIFF-001.md +++ b/coordination/claims/M00-QAR-LANDMARK-REGION-DIFF-001.md @@ -1,6 +1,7 @@ # M00-QAR-LANDMARK-REGION-DIFF-001 — Landmark-region visual diff + ## Ownership diff --git a/coordination/claims/M00-QAR-TERRAIN-HEIGHT-001.md b/coordination/claims/M00-QAR-TERRAIN-HEIGHT-001.md index 80e5574..a05bd9d 100644 --- a/coordination/claims/M00-QAR-TERRAIN-HEIGHT-001.md +++ b/coordination/claims/M00-QAR-TERRAIN-HEIGHT-001.md @@ -1,6 +1,7 @@ # M00-QAR-TERRAIN-HEIGHT-001 — Terrain height diagnostic + ## Ownership diff --git a/coordination/claims/M00-QAR-TILE-OWNERSHIP-001.md b/coordination/claims/M00-QAR-TILE-OWNERSHIP-001.md index 0ab9c3b..64474b7 100644 --- a/coordination/claims/M00-QAR-TILE-OWNERSHIP-001.md +++ b/coordination/claims/M00-QAR-TILE-OWNERSHIP-001.md @@ -1,6 +1,7 @@ # M00-QAR-TILE-OWNERSHIP-001 — Waterfall terrain tile ownership + ## Ownership diff --git a/coordination/claims/M00-QAR-VISUAL-DIFF-001.md b/coordination/claims/M00-QAR-VISUAL-DIFF-001.md index 0463bc4..d1ffc54 100644 --- a/coordination/claims/M00-QAR-VISUAL-DIFF-001.md +++ b/coordination/claims/M00-QAR-VISUAL-DIFF-001.md @@ -1,6 +1,7 @@ # M00-QAR-VISUAL-DIFF-001 — Renderer checkpoint visual diff + ## Ownership diff --git a/coordination/claims/M00-QAR-WMO-READINESS-001.md b/coordination/claims/M00-QAR-WMO-READINESS-001.md index 479237f..61b4dfd 100644 --- a/coordination/claims/M00-QAR-WMO-READINESS-001.md +++ b/coordination/claims/M00-QAR-WMO-READINESS-001.md @@ -1,6 +1,7 @@ # M00-QAR-WMO-READINESS-001 — Goldshire WMO readiness + ## Ownership diff --git a/targets/00-render-baseline.md b/targets/00-render-baseline.md index 0535918..6714bed 100644 --- a/targets/00-render-baseline.md +++ b/targets/00-render-baseline.md @@ -1,6 +1,7 @@ # M00 — Renderer Baseline - + + ## Outcome @@ -38,10 +39,10 @@ godot --headless --path . --script res://src/tools/capture_render_checkpoints.gd ## Evidence -- Date: 2026-07-10 -- Revision/worktree: `93bfe11` + worktree baseline changes. -- Commands: `.\tools\run_render_baseline.ps1 -DryRun -WaitSeconds 0.1 -MeasureSeconds 0.1 -Output user://render_baseline_runner_test`; `.\tools\run_render_baseline.ps1 -Output user://render_baseline_m00_2026-07-10 -CacheState existing`. -- Results: headless load, renderer material smoke, M2 unique-id dedupe and manifest contract passed. Full run produced 14 PNGs and 14 result records for 7 cold/warm checkpoints. Actual renderer was Godot 4.6.1, Vulkan Forward+, NVIDIA RTX 5070, 1280x900, High profile, with all seven cache families present. Cold p95 range was 31.585..86.537 ms with max hitch 258.456 ms; warm p95 range was 18.824..38.085 ms with max hitch 163.363 ms. The final streaming snapshots had an empty tile queue. Report: `user://render_baseline_m00_2026-07-10/report.json`. -- Fidelity comparison: fixed positions/time/profile and current visual gaps are recorded, but no approved paired screenshots from the original WoW 3.3.5a build 12340 were available. This baseline does not claim parity. -- Changed files: `RENDER.md`, `docs/RENDER_BASELINE.md`, `src/scenes/streaming/streaming_world_loader.gd`, `src/tools/capture_render_checkpoints.gd`, `src/tools/render_baseline_manifest.json`, `src/tools/verify_render_baseline_manifest.gd`, `tools/run_render_baseline.ps1`, `targets/00-render-baseline.md`. -- Remaining risks: original-client paired comparison is still required before DONE; D3D12 descriptor heap creation failed and the measured run fell back to Vulkan; shutdown reported leaked renderer RIDs/resources; current captures intentionally preserve visible terrain/placement/material/animation gaps, including the synthetic native animated M2 probe; perceptual image diff/tolerance is documented but not automated yet. +- Date: 2026-07-13 +- Revision/worktree: merged M00 implementation through `f19c0c4`; closeout worktree `work/sindo-main-codex/m00-integrator-closeout`. +- Commands: `.\tools\run_render_baseline.ps1 -Output user://render_baseline_m00_complete_2026-07-13 -CacheState existing -WaitSeconds 8 -MeasureSeconds 0.5 -ReferenceCheckpointDirectory .\sources\OpenWCReferenceCheckpoints -VisualComparisonReport user://render_baseline_m00_complete_2026-07-13/visual_comparison.json -VisualComparisonWidth 2560 -VisualComparisonHeight 1440`; `.\tools\run_render_baseline.ps1 -DryRun -WaitSeconds 0.1 -MeasureSeconds 0.1 -Output user://render_baseline_m00_post_merge`; `.\tools\verify_coordination.ps1`; `.\tools\verify_documentation.ps1`. +- Results: the final GUI run produced fourteen cold/warm captures for seven checkpoints and all seven required coverage categories, with `compared=14` and `missing=0`. The post-merge dry-run passed project load, material, M2 unique-id dedupe, runtime-cache shutdown, manifest and five-point coordinate calibration checks. Coordination and documentation gates passed. Renderer shutdown follow-up removed retained Node/resource/RID diagnostics in focused and seven-checkpoint GUI runs. +- Fidelity comparison: private original-client WoW 3.3.5a build 12340 references cover terrain, ADT boundary, dense M2, large WMO, liquid, animated M2 and sky transition. Every measured pair exceeds the strict visual tolerance and is recorded as a current gap rather than parity. Sky framing is approximately paired; animated M2 is asset-paired but placement-unpaired because the OpenWC Goldshire probe is synthetic. Full metrics and provenance are recorded in `docs/M00_FINAL_PAIRED_EVIDENCE.md`. +- Changed files: `RENDER.md`, `docs/RENDER_BASELINE.md`, `docs/M00_FINAL_PAIRED_EVIDENCE.md`, `docs/modules/world-renderer.md`, renderer baseline scripts/verifiers, manifest/capture tooling, streaming shutdown ownership and M00 coordination claims. +- Remaining risks: renderer parity is not claimed; documented terrain/material/placement/animation/lighting/liquid/culling gaps remain future renderer work. D3D12 descriptor heap creation can fall back to Vulkan. Godot can emit a timing-dependent anonymous zero-reference `RefCounted` teardown warning without retained Node/resource/RID ownership. diff --git a/targets/01-coordinates-and-seams.md b/targets/01-coordinates-and-seams.md index b8531c7..1ab3753 100644 --- a/targets/01-coordinates-and-seams.md +++ b/targets/01-coordinates-and-seams.md @@ -1,6 +1,6 @@ # M01 — Coordinates and Architecture Seams - + ## Outcome diff --git a/targets/DEVELOPMENT_ROADMAP.md b/targets/DEVELOPMENT_ROADMAP.md index 05d94bc..5d561d0 100644 --- a/targets/DEVELOPMENT_ROADMAP.md +++ b/targets/DEVELOPMENT_ROADMAP.md @@ -21,7 +21,7 @@ OpenWC должен предоставить четыре согласованн - MPQ/BLP/ADT/WDT/M2/WMO native parsing и renderer vertical slice уже существуют. - Runtime streaming, terrain quality, MultiMesh M2, WMO caches, liquids, sky и character experiments находятся в рабочем состоянии, но сосредоточены в крупных orchestration scripts. -- Renderer baseline M00 создан; до `DONE` не хватает paired comparison с оригинальным клиентом и закрытия известных diagnostic gaps. +- Renderer baseline M00 завершён: paired comparison с оригинальным клиентом записывает измеренные gaps без заявления parity, а обязательные diagnostic gaps закрыты или явно классифицированы. Текущая работа M01 вводит coordinate и architecture seams. - Gameplay domain, network protocol, production UI/Lua, audio orchestration и server adapters в основном предстоит реализовать. - Editor plugin пока решает extraction/preview задачи, но не является полноценной authoring platform. diff --git a/targets/README.md b/targets/README.md index 1f0a31d..c2b39f0 100644 --- a/targets/README.md +++ b/targets/README.md @@ -10,7 +10,7 @@ ## Current target -`M00` — [00-render-baseline.md](00-render-baseline.md) +`M01` — [01-coordinates-and-seams.md](01-coordinates-and-seams.md) Одновременно `ACTIVE` может быть только одна цель. Следующая цель становится `ACTIVE` после появления валидной `OPENWC_TARGET_DONE` метки у предыдущей. @@ -33,8 +33,8 @@ | ID | Цель | Зависит от | Статус | |---|---|---|---| -| M00 | [Renderer baseline](00-render-baseline.md) | — | ACTIVE | -| M01 | [Coordinates and architecture seams](01-coordinates-and-seams.md) | M00 | OPEN | +| M00 | [Renderer baseline](00-render-baseline.md) | — | DONE | +| M01 | [Coordinates and architecture seams](01-coordinates-and-seams.md) | M00 | ACTIVE | | M02 | [Player decomposition](02-player-decomposition.md) | M01 | OPEN | | M03 | [Renderer facade and extraction](03-renderer-facade.md) | M02 | OPEN | | M04 | [Godot Editor shell](04-editor-shell.md) | M03 | OPEN |