test(M00): add empirical checkpoint FOV sweep
Work-Package: M00-QAR-FOV-SWEEP-001 Agent: sindo-main-codex Tests: comparator filter self-test, FOV capture dry-run, bounded real sweep, repository gates Fidelity: projection sweep remains inconclusive without reproducible reference yaw and pitch
This commit is contained in:
@@ -0,0 +1,78 @@
|
||||
# M00-QAR-FOV-SWEEP-001 — Empirical camera FOV sweep
|
||||
|
||||
<!-- OPENWC_CLAIM:M00-QAR-FOV-SWEEP-001:sindo-main-codex:2026-07-14 -->
|
||||
|
||||
## Ownership
|
||||
|
||||
- Target: M00
|
||||
- Program: QAR
|
||||
- Owner/Agent ID: sindo-main-codex
|
||||
- Branch: `work/sindo-main-codex/m00-fov-sweep`
|
||||
- Lease expires UTC: 2026-07-14
|
||||
- Integrator: milestone integrator
|
||||
|
||||
## Outcome
|
||||
|
||||
Support a bounded empirical FOV sweep when build 12340 does not expose a readable camera FOV CVar.
|
||||
|
||||
## Non-goals
|
||||
|
||||
- Claiming exact WoW FOV from a single manually aimed screenshot.
|
||||
- Changing runtime player camera defaults.
|
||||
- Automating yaw/pitch registration or image warping.
|
||||
|
||||
## Paths
|
||||
|
||||
- Exclusive: FOV/filter CLI additions in checkpoint tools
|
||||
- Shared/hotspots: renderer baseline documentation
|
||||
- Generated/ignored: local sweep PNGs and JSON reports
|
||||
|
||||
## Contracts and data
|
||||
|
||||
- Public API/events: additive `--camera-fov` and comparator `--only` CLI options
|
||||
- Schema/format version: unchanged
|
||||
- Migration/compatibility: existing commands retain defaults
|
||||
- Consumers: M00 fidelity workflow
|
||||
|
||||
## Dependencies
|
||||
|
||||
- Requires: build 12340 reference JPG and paired-image comparator
|
||||
- Blocks: empirical projection ranking
|
||||
- External state: original screenshots remain outside Git
|
||||
|
||||
## Verification
|
||||
|
||||
- Commands: synthetic comparator test, capture dry-run with override, bounded real sweep
|
||||
- Fixtures: `elwynn_adt_boundary` reference
|
||||
- Fidelity evidence: ranked perceptual metrics with manual-direction limitation
|
||||
- Performance budget: offline diagnostic
|
||||
|
||||
## Documentation deliverables
|
||||
|
||||
- Inline public API docs: CLI headers
|
||||
- Module specification: verification/source map if needed
|
||||
- Data-flow diagram: FOV sweep flow
|
||||
- Sequence/state/dependency diagrams: not applicable
|
||||
- Source map/status updates: baseline findings
|
||||
|
||||
## Simplicity and naming
|
||||
|
||||
- Important names introduced: `camera_fov_override`, `only_filter`
|
||||
- Simplest considered solution: reuse capture and comparator
|
||||
- Rejected complexity/abstractions: computer vision registration framework
|
||||
- Unavoidable complexity and justification: multiple captures are required because client FOV is inaccessible
|
||||
- Measured optimization evidence: not applicable
|
||||
|
||||
## Status
|
||||
|
||||
- State: ready
|
||||
- Done: client FOV access audit, capture override, comparator filter/regression, dedicated-camera ownership fix and bounded sweep
|
||||
- Next: integrator review; obtain reproducible yaw/pitch/zoom metadata before changing normative FOV
|
||||
- Blocked by:
|
||||
|
||||
## Handoff
|
||||
|
||||
- Commit: branch HEAD
|
||||
- Results: corrected ranking 26=0.079588, 38=0.079633, 50=0.084353, 62=0.088360, 86=0.097993; plateau is inconclusive
|
||||
- Remaining risks: build 12340 FOV is inaccessible through tested APIs; manual direction/framing dominates metrics
|
||||
- Documentation updated: `docs/RENDER_BASELINE.md`, `docs/modules/world-renderer.md`
|
||||
Reference in New Issue
Block a user