bidirectional-ocp-encapsulation-bounded

Status: OUT

Bidirectional OCP coverage for recursive structures — Composite enabling new element types (standard axis) and Visitor enabling new operations (inverted axis) — achieves full extensibility only while Visitor's encapsulation cost is acceptable; in encapsulation-sensitive structures where elements cannot expose sufficient internal state, only the standard OCP axis (new types) remains available.

Justifications

Visitor's encapsulation cost gates the inverted OCP axis — bidirectional extensibility degrades to unidirectional when encapsulation constraints dominate

Depends on (SL): ocp-bidirectional-extensibility, composite-visitor-dual-ocp-coverage

Unless: gof-visitor-breaks-encapsulation

JSON