v2.2 — Full architectural refactor under Simple_encoder. Separate actor / critic encoders as real nn.Module instances. SnapshotEncoder simplified to Linear → GELU MLP → LayerNorm. TransformerEncoder × 2 cross-symbol mixer replaces LatentReadoutAdapter. Scalar twin-Q replaces distributional ensemble. Twin global Q on SymbolAttentionPool. Phase 14b global-Q detach in actor objective. State-dict guard rejects legacy v2.1 keys. ~5000+ lines of architectural change versus v2.1.
v2.1 — Adapter rank-collapse fix, bias accumulation control, ResidualSkipHead actor.
v2 — Initial release.