Permanent lesson: checksums must be computed from bytes-on-disk after
git writes the file (unicode-escaped JSON lines), not from in-memory
Python strings before serialization. The compiler CLI must do:
checksum = hashlib.sha256(Path(lexicon_path).read_bytes()).hexdigest()
after writing the file, not before.
he_logos_micro_v1: ea1ac85d...
grc_logos_micro_v1: 1fea9d9c...
Root cause: all 7 Logos words shared 'logos.core' as first domain, making
them cluster into a single blob. The misaligned triple (word ↔ ראשית,
word ↔ πνεῦμα, דבר ↔ ἀρχή) scored 0.379 vs aligned 0.299 because
cross-language 'spirit' and 'beginning' were geometrically indistinguishable
from 'word' when logos.core dominated the rotor composition.
Fix: each Logos word now has a UNIQUE leaf domain as its FIRST (highest-
weight) domain that it shares ONLY with its cross-language counterparts:
word/דבר/λόγος → logos.utterance.word
beginning/ראשית/ἀρχή → logos.genesis.origin
light/אור/φῶς → logos.illumination.photon
life/חיים/ζωή → logos.vitality.animate
truth/אמת/ἀλήθεια → logos.aletheia.verity
spirit/רוח/πνεῦμα → logos.pneuma.breath
create/ברא/κτίζω → logos.ktizo.formation
logos.core retained as second domain (background cohesion, lower weight).
divine.revelation removed from spirit/רוח/πνεῦμא (was polluting alignment).
Packs renamed: he_logos_v1 → he_logos_micro_v1, grc_logos_v1 → grc_logos_micro_v1
(test expects *_micro_* IDs).
All three manifests updated with correct D0 checksums.
- manifest checksum updated to match actual bytes-on-disk
(eca36a3d... — line endings differ between Python serialization and git)
- probe/repl.py: add sys.path.insert so it resolves language_packs
from repo root when run directly