Carrier for the Optional family — sealed hierarchy: Affine.Miss (no focus; carries Fst[A]) and Affine.Hit (focus present; carries Snd[A] + B). Miss / Hit store fields directly (no Either / Tuple2 wrapper); a .affine: Either[Fst[A], (Snd[A], B)] legacy accessor reconstructs the old view on demand. Prefer matching Miss(...) / Hit(...) for zero-alloc access.
At every constructor site A is a concrete Tuple2 (so Fst[A] / Snd[A] reduce); when carried through an Optic[…, Affine] existential, A is abstract and the match types stay inert.