core/algebra
Shay 99c0e31bbe fix(INV-02): replace normalize_to_versor with unitize_versor at construction sites
algebra/rotor.py and persona/motor.py were calling normalize_to_versor()
which is the gate-only injection primitive. Both are construction-time
sites (building rotors and motors from raw arrays), so the correct call
is unitize_versor().

Also tightens TestINV02 to scan for normalize_to_versor violations only —
unitize_versor has its own legitimate call sites and is not under the
same single-site restriction. Adds a new TestINV02b that verifies
unitize_versor is NOT called inside propagation, generation, or vault
recall paths.

Fixes: INV-02 architectural invariant test failure.
2026-05-13 13:14:59 -07:00
..
__init__.py arch: close coordinate back-door in vocab layer 2026-05-12 20:52:14 -07:00
backend.py
cga.py Fix CGA null embedding convention 2026-05-13 12:51:49 -07:00
cl41.py Fix Python Cl41 blade product table 2026-05-13 12:51:26 -07:00
holonomy.py Stabilize holonomy accumulation 2026-05-13 12:54:53 -07:00
rotor.py fix(INV-02): replace normalize_to_versor with unitize_versor at construction sites 2026-05-13 13:14:59 -07:00
versor.py Fix versor condition residual 2026-05-13 12:49:53 -07:00