ba81098797
Work-Package: M00-QAR-INTEGRATOR-CLOSEOUT-001 Agent: sindo-main-codex Tests: post-merge render baseline dry-run; comparator self-test; coordination and documentation gates Fidelity: records seven build-12340 reference categories and measured gaps without claiming parity
80 lines
3.0 KiB
Markdown
80 lines
3.0 KiB
Markdown
# M00-QAR-CAMERA-FRAMING-REFINEMENT-001 — Goldshire pitch/FOV refinement
|
|
|
|
<!-- OPENWC_CLAIM:M00-QAR-CAMERA-FRAMING-REFINEMENT-001:sindo-main-codex:2026-07-14 -->
|
|
<!-- OPENWC_INTEGRATION:ACCEPTED:M00-QAR-CAMERA-FRAMING-REFINEMENT-001:3172f41 -->
|
|
|
|
## Ownership
|
|
|
|
- Target: M00
|
|
- Program: QAR
|
|
- Owner/Agent ID: sindo-main-codex
|
|
- Branch: `work/sindo-main-codex/m00-camera-framing-refinement`
|
|
- Lease expires UTC: 2026-07-14
|
|
- Integrator: milestone integrator
|
|
|
|
## Outcome
|
|
|
|
Jointly refine Goldshire checkpoint pitch and FOV against a WMO-ready build 12340 reference.
|
|
|
|
## Non-goals
|
|
|
|
- Changing runtime player camera defaults.
|
|
- Changing manifest values without an interior optimum and human approval.
|
|
- Optimizing yaw beyond the ready-scene coarse result.
|
|
|
|
## Paths
|
|
|
|
- Exclusive: joint FOV option in camera-pose sweep and framing evidence
|
|
- Shared/hotspots: camera-pose operational documentation and renderer module findings
|
|
- Generated/ignored: candidate PNGs and ranking JSON under `user://`
|
|
|
|
## Contracts and data
|
|
|
|
- Public API/events: additive `-CameraFovValues`; scalar `-CameraFov` remains compatible
|
|
- Schema/format version: ranking schema remains version 1 with existing per-candidate FOV field
|
|
- Migration/compatibility: scalar sweeps retain existing candidate paths
|
|
- Consumers: M00 fidelity workflow
|
|
|
|
## Dependencies
|
|
|
|
- Requires: WMO-ready 8-second capture contract
|
|
- Blocks: Goldshire manifest framing decision
|
|
- External state: private build 12340 reference remains outside Git
|
|
|
|
## Verification
|
|
|
|
- Commands: joint-grid plan regression, real ready-scene sweep, comparator self-test, repository gates
|
|
- Fixtures: private Goldshire Inn reference
|
|
- Fidelity evidence: joint pitch/FOV ranking and human inspection
|
|
- Performance budget: offline diagnostic
|
|
|
|
## Documentation deliverables
|
|
|
|
- Inline public API docs: PowerShell parameter
|
|
- Module specification: framing finding
|
|
- Data-flow diagram: FOV joins pose grid
|
|
- Sequence/state/dependency diagrams: unchanged
|
|
- Source map/status updates: operational guide
|
|
|
|
## Simplicity and naming
|
|
|
|
- Important names introduced: `CameraFovValues`, `effectiveCameraFovValues`
|
|
- Simplest considered solution: one additional loop around the existing grid
|
|
- Rejected complexity/abstractions: generic optimizer
|
|
- Unavoidable complexity and justification: projection and pitch jointly affect framing
|
|
- Measured optimization evidence: bounded 1x5x3 grid
|
|
|
|
## Status
|
|
|
|
- State: ready-for-review
|
|
- Done: additive joint FOV grid, compatibility-preserving paths, plan regression, ready-scene 15-candidate ranking and human inspection
|
|
- Next: add approved landmark/region scoring before any manifest camera calibration
|
|
- Blocked by:
|
|
|
|
## Handoff
|
|
|
|
- Commit: this work-package commit
|
|
- Results: numeric best FOV 62/yaw 10/pitch -25 at mean 0.078843 and ratio 0.667721 was visually rejected as grass-dominated; FOV 38/yaw 10/pitch -10 better matched building scale at mean 0.084220
|
|
- Remaining risks: full-frame metric does not preserve landmark framing; no manifest values were changed
|
|
- Documentation updated: `docs/CAMERA_POSE_SWEEP.md`, `docs/modules/world-renderer.md`
|