Commit graph

16 commits

Author SHA1 Message Date
Shay
645eebd076 Migrate Greek lexicon to structured morphology; remove _uses_legacy_root_tags guard
- Strip root: tags from all 7 grc_logos_micro_v1 lexicon entries
- Refresh grc_logos_micro_v1 manifest checksum
- Remove _uses_legacy_root_tags() and _apply_morphology_tags() from compiler
- _entry_to_coordinate() now has a single morphology path: structured when
  morphology_id resolves, tag fallback only for packs with no morphology data
- load_pack() registry loading made unconditional for packs with morphology.jsonl
2026-05-13 15:20:15 -07:00
Shay
5c952a9f9d Migrate Hebrew lexicon to structured morphology 2026-05-13 15:15:15 -07:00
Shay
3168e73ace Wire morphology operator composition 2026-05-13 15:02:52 -07:00
Shay
8d09c2a8c1 Add morphology registry for language packs 2026-05-13 14:50:36 -07:00
Shay
a4b4d22987 Add alignment graph, cross-language edges, and HolonomyAlignmentCase tests
alignment/graph.py
  Lightweight in-memory alignment graph. Loads AlignmentEdge records from
  a pack's alignment.jsonl. Exposes edges_from(), aligned_pairs(), and
  load_alignment(). No external deps — pure schema + stdlib.

language_packs/data/he_logos_micro_v1/alignment.jsonl
language_packs/data/grc_logos_micro_v1/alignment.jsonl
  Seven bidirectional cross-language edges per pack encoding the semantic
  resonances already implicit in the lexicon semantic_domains:
  דבר↔λόγος, ראשית↔ἀρχή, אור↔φῶς, חיים↔ζωή, אמת↔ἀλήθεια, רוח↔πνεῦμα, ברא↔κτίζω

tests/test_alignment_graph.py
  Four tests:
  - load returns AlignmentEdge instances with correct structure
  - דבר↔λόγος edge weight >= 0.9
  - aligned_pairs() filters by relation prefix
  - HolonomyAlignmentCase formal proof: positive triple closer than
    negative triple, wrapping the geometry already proven in
    test_holonomy_resonance.py into the schema's crown proof type
2026-05-13 14:43:17 -07:00
Shay
3affd29a82 Remove stale grc_logos_v1 pack files 2026-05-13 14:40:10 -07:00
Shay
594ca5503e Remove stale grc_logos_v1 pack files 2026-05-13 14:40:03 -07:00
Shay
c8c0f489ef Remove stale he_logos_v1 pack files 2026-05-13 14:39:46 -07:00
Shay
b28e8e064e Remove stale he_logos_v1 pack files 2026-05-13 14:39:37 -07:00
Shay
08794408d3 Remove stale he_logos_v1 and grc_logos_v1 packs (broken checksums, superseded by *_micro_* packs) 2026-05-13 14:39:21 -07:00
Shay
966b35efa3 Remove stale he_logos_v1 and grc_logos_v1 packs
These were the pre-rename originals superseded by he_logos_micro_v1 and
grc_logos_micro_v1. Their manifests have checksum mismatches (visible via
`python -m language_packs list`) because the lexicon content was updated
without re-checksumming before the rename.

No tests reference these pack IDs. No code loads them. Leaving broken
packs in data/ creates false noise in `list` output and risks a future
agent loading the wrong pack by prefix match.
2026-05-13 14:38:58 -07:00
Shay
e6bf8ade5e Fix he/grc micro pack manifest checksums to match actual on-disk bytes
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...
2026-05-13 14:15:55 -07:00
Shay
c7e23c7a97 Fix triple-alignment test: unique first domains per Logos word; rename packs to micro
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.
2026-05-13 14:13:11 -07:00
Shay
1f5e0eb1a5 Fix en_minimal_v1 manifest checksum; fix probe/repl.py import path
- 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
2026-05-13 14:08:58 -07:00
Shay
93578f685b Enrich en_minimal_v1 domains; add he_logos_v1 and grc_logos_v1 micro-packs
- en_minimal_v1: all 60 entries enriched from 1-2 flat domain labels to
  3-5 layered domain strings encoding semantic proximity. Key shared
  strings: logos.core (all 9 Logos words), divine.revelation (light,
  truth, word, spirit, life), knowledge.ground (truth, know, reason,
  mean, answer), logos.genesis (beginning, create, begin, form),
  communication.articulation (word, say, speak, ask, answer, mean),
  logic.polarity (yes, no, not, cannot), agency.subject (pronouns).

- he_logos_v1: 7-entry Hebrew Logos micro-pack. Domain strings
  intentionally cross-aligned with English counterparts so nearest()
  across packs resolves to the same geometric neighborhood. Morphology
  tags carry root triliteral (root:דבר, triliteral:D-B-R, etc).

- grc_logos_v1: 7-entry Koine Greek Logos micro-pack. Same cross-
  alignment strategy. Morphology tags carry declension class, case,
  aspect, and root (root:λεγ, alpha_privative, etc).

Manifests created with SHA-256 checksums, D0 determinism class,
gate_engaged: true, oov_policy: fail_closed.
2026-05-13 14:06:11 -07:00
Shay
71e99c5c51 Build first cognitive response path 2026-05-13 13:40:06 -07:00