test(M00): diagnose checkpoint camera occluders
Work-Package: M00-QAR-CAMERA-OCCLUDERS-001 Agent: sindo-main-codex Tests: five-point camera occluder probe, coordination and documentation gates Fidelity: no camera containment found; manual target and FOV mismatch recorded
This commit is contained in:
@@ -0,0 +1,78 @@
|
||||
# M00-QAR-CAMERA-OCCLUDERS-001 — Camera occluder diagnostic
|
||||
|
||||
<!-- OPENWC_CLAIM:M00-QAR-CAMERA-OCCLUDERS-001:sindo-main-codex:2026-07-13 -->
|
||||
|
||||
## Ownership
|
||||
|
||||
- Target: M00
|
||||
- Program: QAR
|
||||
- Owner/Agent ID: sindo-main-codex
|
||||
- Branch: `work/sindo-main-codex/m00-camera-occluders`
|
||||
- Lease expires UTC: 2026-07-13
|
||||
- Integrator: milestone integrator
|
||||
|
||||
## Outcome
|
||||
|
||||
Report scene-tree M2/WMO geometry that contains calibrated cameras or intersects each camera-to-target segment.
|
||||
|
||||
## Non-goals
|
||||
|
||||
- Changing placements, cameras, FOV, culling, or renderer behavior.
|
||||
- Claiming full coverage of RenderingServer RID-only instances.
|
||||
- Implementing a production visibility or collision service.
|
||||
|
||||
## Paths
|
||||
|
||||
- Exclusive: `src/tools/probe_render_camera_occluders.gd`
|
||||
- Shared/hotspots: renderer baseline documentation
|
||||
- Generated/ignored: local JSON probe reports
|
||||
|
||||
## Contracts and data
|
||||
|
||||
- Public API/events: headless diagnostic CLI only
|
||||
- Schema/format version: report schema 1
|
||||
- Migration/compatibility: none
|
||||
- Consumers: M00 fidelity workflow
|
||||
|
||||
## Dependencies
|
||||
|
||||
- Requires: calibrated five-point manifest and streaming scene
|
||||
- Blocks: placement versus camera-composition classification
|
||||
- External state: local extracted/cache data
|
||||
|
||||
## Verification
|
||||
|
||||
- Commands: camera occluder probe, coordination and documentation gates
|
||||
- Fixtures: five calibrated camera/target segments
|
||||
- Fidelity evidence: scene-tree bounds at paired build 12340 viewpoints
|
||||
- Performance budget: offline diagnostic
|
||||
|
||||
## Documentation deliverables
|
||||
|
||||
- Inline public API docs: probe header and output fields
|
||||
- Module specification: verification/source map
|
||||
- Data-flow diagram: occluder probe flow
|
||||
- Sequence/state/dependency diagrams: synchronous diagnostic; not applicable
|
||||
- Source map/status updates: baseline findings
|
||||
|
||||
## Simplicity and naming
|
||||
|
||||
- Important names introduced: `camera_containing_geometry`, `segment_intersecting_geometry`
|
||||
- Simplest considered solution: transformed published AABBs
|
||||
- Rejected complexity/abstractions: GPU visibility readback or new BVH
|
||||
- Unavoidable complexity and justification: RID-only geometry cannot be named by this probe
|
||||
- Measured optimization evidence: not applicable
|
||||
|
||||
## Status
|
||||
|
||||
- State: ready
|
||||
- Done: five-point scene-tree AABB probe, containment/intersection classification and documentation
|
||||
- Next: integrator review; calibrate reproducible reference camera direction/FOV separately
|
||||
- Blocked by:
|
||||
|
||||
## Handoff
|
||||
|
||||
- Commit: branch HEAD
|
||||
- Results: zero containing geometry at all five cameras; expected WMO/liquid target intersections; ADT/dense segments unobstructed
|
||||
- Remaining risks: RID-only instances are excluded; manual reference direction and FOV were not recorded exactly
|
||||
- Documentation updated: `docs/RENDER_BASELINE.md`, `docs/modules/world-renderer.md`
|
||||
Reference in New Issue
Block a user