Hermetic Fixture Rule¶
Overspace validation fixtures are renderer-validation scenes, not presentation demos.
Canon¶
"A scene promoted to an overspace validation fixture should be hermetically enclosed and should produce 100% classified pixel outcomes under GrinFilmCamera transport, within the configured transport budget."
This is a validation-harness rule for enclosed overspace scenes. It is not a claim about universal physics truth.
Interpretation¶
Do not frame the rule as "every pixel must hit solid geometry."
Frame it as:
- every pixel must return a classified transport result
For a sealed overspace room, the target is:
classified_coverage_ratio = 1.0escaped_no_hit = 0budget_exhausted = 0unclassified = 0
Classified Pixel Outcomes¶
geom_hit: the ray resolved against ordinary scene geometryportal_hit: the ray resolved against explicit portal-frame or portal-surface geometrythroat_event: aggregate bucket for throat-facing outcomes; in Phase B.0 this is the sum of the throat subcategories belowthroat_entry: the ray crossed a boundary-layer throat shell and continued, but the final resolved hit was not a post-remap transform hitthroat_exit: the ray accumulated repeated throat remaps (BoundaryRemapCount >= 2), indicating a deeper linked-shell exit-style traversal paththroat_shell_transform: the final resolved hit occurred after aBoundaryLayerVolumeSceneTransformremapthroat_inner_absorb: the ray terminated inside the throat-facing absorbing inner-radius region without a normal geometry hitbackground_hit: only valid when the fixture intentionally allows a background classescaped_no_hit: the ray returned no classified result before leaving the transport solve; should be near zero in hermetic fixturesbudget_exhausted: the renderer stopped on transport budget rather than on a classified scene result; should be near zero in hermetic fixtures
Phase B.0 Note¶
The current throat taxonomy is intentionally narrow-seam and additive:
- it refines the old
throat_eventbucket - it does not replace the current Phase A portal transport
- it remains aligned to the existing
BoundaryLayerVolumeseam
throat_shell_bias is not emitted yet because per-pixel DirectionBias attribution is not currently surfaced through the active renderer classification path. That can be added later without changing the Hermetic Fixture Rule itself.
Validation Reading Guide¶
For hermetic overspace fixture outputs:
coverage.jsonis the machine-readable truth sourcecoverage.txtis the quick human scansummary.jsonshould mirror the same counts plus run metadata
If classified coverage drops below 100%, treat that as a renderer or harness gap to expose, not something to hide.