Files
bikoret/l1/torah/bereishit/41/50.json
T
Scott KarpandClaude Fable 5.1 8e4f94c66f L1: the shoresh is read from the lexicon, not guessed (tablet 34)
L1's `shoresh` field was derived by stripping a prefix letter and a
suffix letter from the consonants and keeping the first three. וַיַּרְא
"and he saw" was engraved as ירא ("fear"); ויהי as יהי; שמים as שמ;
מזבח as מזב; הבאתי as בא. And parse_prefixes took a word's morphology
from the LAST morph segment, which for a suffixed word is the pronominal
suffix — so every suffixed noun and verb in Torah (לבבך, נפשך) was
classed as a suffix and written with no shoresh at all.

Every WLC word already carries its lemma, and the OSHB lexical index
files each lemma under its Brown-Driver-Briggs root (terumah §E2 named
BDB + Strong's as the root lexicon and marked it "needs consolidation").
scripts/build_l1.py now reads the root from that filing:

  main    the lemma is a root            23,750 words   וירא → ראה
  sub     filed under a root             31,066 words   מזבח → זבח
  single  stands alone in the lexicon     2,671 words   משה → משה
  none    no etymology recorded → absent  3,002 words   יוסף, מצרים
  particles, pronouns → absent, as before 19,493 words  את, אשר, כי

57,487 words carry a shoresh (was 51,836); 1,378 unique roots (was
2,608 fragments). Roots are written as the lexicon writes them — two
letters (בן), three, or more (שמאל).

WHAT CHANGED IN THE EDUT: only `shoresh`. Verified file by file — with
that one field removed, all 5,853 verse files are byte-identical to the
previous L1. Text, consonants, lemma, morph, te'amim, prefix, ketiv/
qere, large and small letters: untouched. The old builder, run against
the same morphhb checkout, reproduces the old hash exactly; the new
builder is deterministic (two runs, one hash).

  L1 SHA-256  99bbd07a…4ea377  →  156b1d27…d8c9d5
  sources     morphhb 3d15126 · HebrewLexicon 21c9add
              (recorded in l1/build_report.json)

Moved together, because they pin the hash or the count:
vav_pipeline L1Reader @l1_expected_hash · shoresh-engine Luchot.Firmware
(hash, uniqueRootCount) + Spec · azazel_processor goral._L1_INTEGRITY_HASH
· KOHEN.md / KOHEN_PROMPT.md gate · l1/README.md (new "Roots" section) ·
README.md (second quarry) · AGENTS.md · root_meanings.pl comment.
The Doorpost manifest is not touched; its hash does not move.

Note for the kohen: the goral's seed inherits the L1 hash, so lots cast
after this commit are cast from a different seed than the azazel
records already in L3. Those records are history and stand as written.

All five suites on the new L1: Elixir 461/0 (seeds 0 42 191243) ·
Haskell 55/0 · Prolog 6 suites exit 0 (swipl 9.2.2) · korban 222 passed
1 skipped · azazel 125 passed. Four images built; full local stack
(real engine binary, PostgreSQL 16 with SSL, migrations) answers
Bereishit 1:4 with ר-א-ה, health healthy, 6 interpretations in L3,
0 write failures.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-04 17:44:02 +00:00

222 lines
4.6 KiB
JSON

{
"ref": "Bereishit 41:50",
"book": "bereishit",
"chapter": 41,
"verse": 50,
"text_hebrew": "וּלְיוֹסֵ֤ף יֻלַּד֙ שְׁנֵ֣י בָנִ֔ים בְּטֶ֥רֶם תָּב֖וֹא שְׁנַ֣ת הָרָעָ֑ב אֲשֶׁ֤ר יָֽלְדָה־לּוֹ֙ אָֽסְנַ֔ת בַּת־פּ֥וֹטִי פֶ֖רַע כֹּהֵ֥ן אֽוֹן ׃",
"words": [
{
"position": 1,
"text": "וּלְיוֹסֵ֤ף",
"consonants": "וליוסף",
"lemma": "3130",
"morph": "HC/R/Np",
"teamim": [
"mahapakh"
],
"prefix": "ול"
},
{
"position": 2,
"text": "יֻלַּד֙",
"consonants": "ילד",
"lemma": "3205",
"morph": "HVPp3ms",
"teamim": [
"pashta"
],
"shoresh": "ילד"
},
{
"position": 3,
"text": "שְׁנֵ֣י",
"consonants": "שני",
"lemma": "8147",
"morph": "HAcmdc",
"teamim": [
"munach"
],
"shoresh": "שנה"
},
{
"position": 4,
"text": "בָנִ֔ים",
"consonants": "בנים",
"lemma": "1121 a",
"morph": "HNcmpa",
"teamim": [
"zaqef_qatan"
],
"shoresh": "בן"
},
{
"position": 5,
"text": "בְּטֶ֥רֶם",
"consonants": "בטרם",
"lemma": "2962",
"morph": "HR/D",
"teamim": [
"mercha"
],
"prefix": "ב",
"shoresh": "טרם"
},
{
"position": 6,
"text": "תָּב֖וֹא",
"consonants": "תבוא",
"lemma": "935",
"morph": "HVqi3fs",
"teamim": [
"tipcha"
],
"shoresh": "בוא"
},
{
"position": 7,
"text": "שְׁנַ֣ת",
"consonants": "שנת",
"lemma": "8141",
"morph": "HNcfsc",
"teamim": [
"munach"
],
"shoresh": "שנה"
},
{
"position": 8,
"text": "הָרָעָ֑ב",
"consonants": "הרעב",
"lemma": "7458",
"morph": "HTd/Ncmsa",
"teamim": [
"etnachta"
],
"prefix": "ה",
"shoresh": "רעב"
},
{
"position": 9,
"text": "אֲשֶׁ֤ר",
"consonants": "אשר",
"lemma": "834 a",
"morph": "HTr",
"teamim": [
"mahapakh"
]
},
{
"position": 10,
"text": "יָֽלְדָה",
"consonants": "ילדה",
"lemma": "3205",
"morph": "HVqp3fs",
"teamim": [
"meteg_siluq"
],
"shoresh": "ילד"
},
{
"position": 11,
"text": "לּוֹ֙",
"consonants": "לו",
"lemma": "l",
"morph": "HR/Sp3ms",
"teamim": [
"pashta"
]
},
{
"position": 12,
"text": "אָֽסְנַ֔ת",
"consonants": "אסנת",
"lemma": "621",
"morph": "HNp",
"teamim": [
"meteg_siluq",
"zaqef_qatan"
]
},
{
"position": 13,
"text": "בַּת",
"consonants": "בת",
"lemma": "1323",
"morph": "HNcfsc",
"teamim": [],
"shoresh": "בן"
},
{
"position": 14,
"text": "פּ֥וֹטִי",
"consonants": "פוטי",
"lemma": "6319+",
"morph": "HNp",
"teamim": [
"mercha"
]
},
{
"position": 15,
"text": "פֶ֖רַע",
"consonants": "פרע",
"lemma": "6319",
"morph": "HNp",
"teamim": [
"tipcha"
]
},
{
"position": 16,
"text": "כֹּהֵ֥ן",
"consonants": "כהן",
"lemma": "3548",
"morph": "HNcmsc",
"teamim": [
"mercha"
],
"shoresh": "כהן"
},
{
"position": 17,
"text": "אֽוֹן",
"consonants": "און",
"lemma": "204",
"morph": "HNp",
"teamim": [
"meteg_siluq"
],
"shoresh": "אן"
}
],
"smikhut": [
{
"position": 3,
"construct": "שְׁנֵ֣י",
"construct_consonants": "שני",
"absolute": "בָנִ֔ים",
"absolute_consonants": "בנים"
},
{
"position": 7,
"construct": "שְׁנַ֣ת",
"construct_consonants": "שנת",
"absolute": "הָרָעָ֑ב",
"absolute_consonants": "הרעב"
},
{
"position": 13,
"construct": "בַּת",
"construct_consonants": "בת",
"absolute": "פּ֥וֹטִי",
"absolute_consonants": "פוטי"
},
{
"position": 16,
"construct": "כֹּהֵ֥ן",
"construct_consonants": "כהן",
"absolute": "אֽוֹן",
"absolute_consonants": "און"
}
]
}