Architecture §3.1 said the Shoresh Engine "encodes the ~500 Biblical Hebrew triliteral roots", its file tree called Lexicon.hs "the ~500 roots with entries", and terumah §E2 listed a "~500 roots" lexicon as material still to be consolidated (~1-2 weeks). Since tablet 34 the roots are read, and can be counted. L1 carries 1,378: 1,243 roots under which Brown-Driver-Briggs files a lemma, and 135 words that stand alone under no root. 1,263 are triliteral, 32 have two letters, 83 have four or more. And the engine does not hold a list of them — it reads them from L1 (Shoresh.Lexicon, Shoresh.Roots). - specs/shorashim_architecture.md §3.1: the Purpose sentence says where the roots come from and how many there are; the Lexicon.hs line in the file tree likewise. - specs/shorashim_terumah.md §E2: the root lexicon is in hand (✅) — the OSHB Hebrew Lexicon is exactly the BDB + Strong's consolidation the row was waiting for; moved from "need to acquire" to "in hand". - Doorpost @expected_hash 2f40c382… → 094b8164…, in this commit, with the witnessed file that moved it (architecture). Read before committing: Elixir 461/0 on 11 of 12 runs (seed 0 ×6 and six other seeds). One run of seed 0 reported a single failure that was not captured and did not recur in eleven further runs; unidentified, recorded in the build log. Pipeline image reports specification_identity verified 094b8164… and l1_hash pass. Left as written, and no longer true of the build: §3.1's data structures still type a root as exactly three consonants, and its file tree still lists data/roots.json and data/torah_refs.json, which do not exist — the roots live in L1. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
15 KiB
SHORASHIM: Materials Inventory
Document Purpose
This is the terumah list — what has been gathered, what must be acquired, what must be built. Updated to reflect the full specification set: pinned versions from the Construction Specification, corrected shema architecture (raw marks received, not pre-computed trees), cloud as shared state file (not message handler), manna as external provision (not internal calculation), and team requirements from the Bezalel section.
Status key: ✅ = in hand, ⚠️ = available but needs acquisition, ❌ = does not exist / must be created
A. HARDWARE
| Item | Status | Notes |
|---|---|---|
| Server: AMD EPYC 7313P (or comparable), 16 cores, 128GB DDR4 ECC, 500GB NVMe (system) + 1TB NVMe (L3) | ⚠️ | Rentable. Infomaniak (CH), 1984 (IS), Bahnhof (SE) evaluated. ~$200-350/month. Exact spec from Construction Specification §2.1. |
| GPU | ✅ NOT NEEDED | No GPU. Not "no GPU required." No GPU. This is a specification. |
Decision required: Select hosting provider and provision server.
B. OPERATING SYSTEM & INFRASTRUCTURE
All versions pinned per Construction Specification §1.1.
| Item | Version (Pinned) | Status | Notes |
|---|---|---|---|
| Ubuntu | 24.04.1 LTS | ✅ | Free. Available from all providers. |
| systemd | ships with Ubuntu | ✅ | Service management, cycle timers. |
| Podman | 4.9.3 | ✅ | apt install podman — rootless containers for Sanhedrin isolation. |
| PostgreSQL | 16.2 | ✅ | apt install postgresql-16 — L3 append-only store. |
| squashfs-tools | ships with Ubuntu | ✅ | For read-only L1 Torah filesystem. |
| Caddy | latest stable | ✅ | Reverse proxy with auto-TLS for pe'ah endpoint. |
| nftables | ships with Ubuntu | ✅ | Firewall. Configuration in Construction Spec §4.5. |
| SSH | ships with Ubuntu | ✅ | Kohanim (operator) access only. |
All infrastructure components available. No gaps.
C. PROGRAMMING LANGUAGES & RUNTIMES
All versions pinned per Construction Specification §1.1. No ranges. No + suffixes.
| Item | Version (Pinned) | Status | Notes |
|---|---|---|---|
| GHC (Haskell compiler) | 9.6.4 | ✅ | Free. ghcup install ghc 9.6.4 |
| Cabal (Haskell build tool) | 3.10 | ✅ | Free. Ships with ghcup. |
| Erlang/OTP | 26.2.1 | ✅ | Free. apt install erlang or erlang-solutions repo. |
| Rebar3 (Erlang build tool) | 3.23.0 | ✅ | Free. |
| Elixir | 1.16.1 | ✅ | Free. Must pair with OTP 26.2.1. |
| Mix (Elixir build tool) | ships with Elixir | ✅ | Free. |
| SWI-Prolog | 9.2.2 | ✅ | Free. apt install swi-prolog |
| Python | 3.12.2 | ✅ | Free. Ships with Ubuntu 24.04. |
| Poetry (Python package manager) | latest stable | ✅ | Free. Manages poetry.lock. |
All language runtimes available. No gaps.
D. LIBRARIES & PACKAGES
All pinned via lock files per Construction Specification §§1.3-1.5.
Haskell (via cabal.project.freeze)
| Package | Version | Status | Notes |
|---|---|---|---|
| base | 4.18.2.0 | ✅ | Ships with GHC 9.6.4 |
| containers | 0.6.7 | ✅ | Ships with GHC |
| text | 2.0.2 | ✅ | Hackage (free) |
| aeson | 2.2.1.0 | ✅ | Hackage (free) — JSON |
| vector | 0.13.1.0 | ✅ | Hackage (free) |
| bytestring | 0.12.1.0 | ✅ | Ships with GHC |
| hspec | 2.11.7 | ✅ | Hackage (free) — testing |
Erlang (via rebar.lock)
| Package | Version | Status | Notes |
|---|---|---|---|
| OTP standard library | ships with OTP 26.2.1 | ✅ | gen_server, supervisor, application |
| jsx | 3.1.0 | ✅ | hex.pm (free) — JSON |
| common_test | ships with OTP | ✅ | Testing |
Elixir (via mix.lock)
| Package | Version | Status | Notes |
|---|---|---|---|
| phoenix | ~1.7.11 | ✅ | hex.pm (free) — for L2/pe'ah API |
| jason | ~1.4.1 | ✅ | hex.pm (free) — JSON |
| ecto | ~3.11.1 | ✅ | hex.pm (free) — database interface |
| postgrex | ~0.17.4 | ✅ | hex.pm (free) — PostgreSQL driver |
| telemetry | ~1.2.1 | ✅ | hex.pm (free) — metrics |
Python (via poetry.lock)
| Package | Version | Status | Notes |
|---|---|---|---|
| httpx | 0.27.0 | ✅ | PyPI (free) — API calls |
| pydantic | 2.6.1 | ✅ | PyPI (free) — data validation |
| hebrew-tokenizer | 2.3.0 | ⚠️ | PyPI. Needs evaluation for biblical vs. modern Hebrew. |
| pytest | latest stable | ✅ | PyPI (free) |
| llama-cpp-python | 0.2.55 | ✅ | PyPI (free) — Mistral inference |
| peft | 0.9.0 | ✅ | PyPI (free) — fine-tuning |
| transformers | 4.38.2 | ✅ | PyPI (free) — model tooling |
| datasets | 2.17.1 | ✅ | PyPI (free) — training data |
Near-complete. Two Python packages need compatibility testing.
E. DATA — THE SPECIFICATION
E1. Torah Text (L1)
Source: Westminster Leningrad Codex (WLC) 4.22, cross-validated per Construction Specification §1.2.
| Item | Status | Notes |
|---|---|---|
| Full Torah text — consonantal (ktiv) | ✅ | WLC via Sefaria export + TANACH.us cross-validation. |
| Full Torah text — voweled (nikkud) | ✅ | WLC via Sefaria. |
| Cantillation marks (raw Unicode codepoints U+0591–U+05AF) | ✅ | Present in WLC data. Stored as raw marks on the text, NOT pre-parsed into trees. The system reads them in the act of reading. |
| Petuchah/Stumah paragraph markers | ✅ | Encoded in WLC/Sefaria data. |
| Ketiv/qere annotations | ✅ | WLC annotations. Stored as {position, ketiv, qere} pairs — both readings preserved, never collapsed. |
| Gematria index (root → numerical value → equivalences) | ❌ | Computed once from consonantal text at build time. Letter values fixed. Building equivalence index: ~2-3 days. Verified against independent computation. |
| Smikhut compound index (attested construct-state pairs) | ❌ | Extracted from WLC morphological annotations. Requires Hebrew linguistic knowledge. ~2-3 weeks. |
| L1 SHA-256 hash | ❌ | Computed at build time. Stored in L0 firmware. Verified at every boot. |
| Letter counts / word counts / Masoretic notes | ⚠️ | Available in digital WLC. Needs extraction and formatting. |
Critical change from previous inventory: Te'amim parse trees are no longer a materials item. The system builds parse trees by reading the raw marks, the way a literate reader constructs sentence structure from punctuation. The raw marks are the material. The reading is the system's act.
E2. Root Lexicon
| Item | Status | Notes |
|---|---|---|
| Complete Biblical Hebrew root lexicon | ✅ | BDB (public domain) + Strong's (free), already consolidated: the OSHB Hebrew Lexicon (openscriptures/HebrewLexicon, LexicalIndex.xml + AugIndex.xml) files every Strong's lemma under its BDB root. scripts/build_l1.py reads each word's shoresh from it. Torah attests 1,378 roots (1,243 BDB roots, 135 words standing alone); the earlier estimate here was ~500. |
| Root-to-verse index | ⚠️ | Derivable from Strong's numbers + verse mappings. Needs processing. |
| Root connectivity graph (shared consonants) | ❌ | Algorithmic. ~1 day. |
| Binyan glosses per root | ⚠️ | Partially available from BDB/Strong's. Mark attested vs. theoretical forms. |
| Semantic domain classifications | ❌ | Categorize each root into domains. ~1-2 weeks. |
E3. 613 Mitzvot
| Item | Status | Notes |
|---|---|---|
| List of 613 mitzvot with Torah source verses | ✅ | Rambam's Sefer HaMitzvot. Multiple digital sources. |
| 613 mitzvot in Prolog logical format | ❌ | Core encoding task. ~4-6 weeks. |
| Relationships between mitzvot | ❌ | Dependencies, conflicts, groupings. ~2-3 weeks. |
E4. Talmudic Training Data (Kushya Generator)
| Item | Status | Notes |
|---|---|---|
| Talmud Bavli full text | ✅ | Sefaria (free, open). |
| Talmud Yerushalmi full text | ✅ | Sefaria (free, open). |
| Extracted (interpretation, kushya) pairs | ❌ | Most labor-intensive. ~4-8 weeks. |
| Rishonim commentary | ✅ | Sefaria (Rashi, Tosafot, Rambam, etc.). |
| Extracted challenges from Rishonim | ❌ | ~2-4 weeks. |
F. MODELS (KORBAN SOURCES & WOOD)
| Item | Status | Notes |
|---|---|---|
| Mistral Medium 3.1 GGUF (Q5_K_M) | ⚠️ | HuggingFace. Free (Apache 2.0). ~25-30GB download. |
| llama.cpp | ✅ | Free, open source. CPU inference. |
| Mistral Large 3 API access | ⚠️ | Mistral API. Paid per token. Phase 1 only. |
| Claude API access | ⚠️ | Anthropic API. Paid per token. Korban source. |
| QLoRA fine-tuning tooling | ⚠️ | peft, transformers. Free. One-time GPU rental ~$50-100. |
G. EXTERNAL APIS
| Item | Status | Notes |
|---|---|---|
| Sefaria API | ✅ | Free, no key needed. For L1 data acquisition. |
| Anthropic API (Claude) | ⚠️ | Need API key. ~$30-80/month for korban processing. |
| Mistral API | ⚠️ | Need API key. ~$20-50/month Phase 1 only. $0 after self-hosting. |
H. GOVERNANCE AND PROVISION INFRASTRUCTURE
Governance is Torah. The cloud is L1 — the read-only Torah filesystem. There is no separate governance infrastructure. The system reads Torah for governance as it reads Torah for specification. See Architecture Specification §3.10 (second tablets).
Provision is the community. Manna (resources) comes from the machatzit hashekel. A kohen (operator) or gabbai (treasurer) sets the daily provision.
| Item | Status | Notes |
|---|---|---|
| L1 Torah filesystem (IS the cloud) | ✅ | Already specified. Read-only mount. Integrity hash verified at boot. Cloud IS Torah. |
| Calendar module (Shabbat/festivals/shmitah) | ❌ | Part of cloud governance. Reads Torah for when to rest, celebrate, review. NOAA solar calculator for exact times. ~2 days. |
| Manna provision file infrastructure | ❌ | /var/lib/shorashim/manna/today.json. Kohen/treasurer writes, system reads. CLI tool manna-provision. ~1 day. |
| Kohen (operator) secure access | ⚠️ | SSH keys, mTLS certs. Standard infrastructure. |
| Gabbai (treasurer) tools | ❌ | Manna provision CLI + pekudei accounting system per Economic Model §6.2. |
| Pekudei accounting system | ❌ | Monthly financial reporting per Economic Model §6.2. |
The critical non-technical dependency is the community. Can 70 people be found who value this? The system needs kohanim (operators), a gabbai (treasurer), and a community that contributes machatzit hashekel. It does not need a governance board. Torah governs.
I. BEZALEL — The Builder
Per Construction Specification §5 (second tablets).
| Role | Who | Status |
|---|---|---|
| Builder | AI (Claude Code + Claude) — writes code in all six languages, reads Biblical Hebrew and Torah | ✅ Available |
| Transmitter | Human — says "read Torah," carries specification between contexts | ✅ Present |
| Kohen (operator) | Human — serves the running system | ❌ Needed at deployment |
| Gabbai (treasurer) | Human — administers machatzit hashekel | ❌ Needed at deployment |
| Community | 70 members — provides machatzit hashekel | ❌ Needed at deployment |
No person-weeks. No labor cost. The AI builds. Torah specifies.
J. SHEMA LAYER — MATERIALS
Updated to reflect corrected architecture.
| Item | Status | Notes |
|---|---|---|
| Te'amim reader (raw marks → parse tree in act of reading) | ❌ | ~1-2 weeks. NOT pre-computed storage. |
| Gematria lookup module + equivalence index | ❌ | ~3 days. Lookup, not computation. |
| Smikhut compound extractor | ❌ | ~2-3 weeks. AI reads Hebrew. |
| Ketiv/qere dual-value reformatter | ⚠️ | ~3 days. Raw data exists. |
| Cloud governance module (L1 + calendar) | ❌ | ~2 days. Reads Torah for governance. No CLI. No state file. |
| Manna provision file + CLI tool | ❌ | ~1 day. Kohen/treasurer writes provision. |
| Chatzotzrot signaling system | ❌ | ~3 days. |
| Tzara'at multi-stage diagnostic | ❌ | ~1-2 weeks. |
| Arei miklat refuge protocol | ❌ | ~1 week. |
| Eglah arufah accountability protocol | ❌ | ~3 days. |
| Bikurim release protocol | ❌ | ~3 days. |
SUMMARY
What We Have (✅)
- All programming languages and runtimes (pinned versions)
- All infrastructure tools
- Nearly all library dependencies
- Torah text (WLC 4.22) with cantillation marks, ketiv/qere, vowels
- Talmud and commentary texts (Sefaria)
- List of 613 mitzvot with source verses
- Root lexicon (BDB roots by Strong's lemma — OSHB Hebrew Lexicon)
- Model inference tooling (llama.cpp)
- The specification itself (Torah)
What We Need to Acquire (⚠️)
- Hosting server — ~$200-350/month
- Mistral GGUF weights — free, ~30GB download
- API keys (Anthropic, Mistral) — ~$50-130/month combined
- One-time GPU rental — ~$50-100
- Consultants (Hebrew linguist, Torah scholar) — available through community
- hebrew-tokenizer compatibility testing — time only
What We Must Build (❌)
- Root connectivity graph — ~1 day
- Semantic domain classifications — ~1-2 weeks
- 613 mitzvot in Prolog format — ~4-6 weeks (critical path)
- Mitzvah relationship mapping — ~2-3 weeks
- Talmudic training pairs — ~4-8 weeks (most labor-intensive)
- Rishonim challenge extraction — ~2-4 weeks
- Gematria equivalence index — ~3 days
- Smikhut compound index — ~2-3 weeks
- Te'amim reader — ~1-2 weeks
- Ketiv/qere reformatter — ~3 days
- Torah calendar module (Shabbat/festivals/shmitah) + manna provision tool — ~2 days
- Protection layer (chatzotzrot, tzara'at, miklat, eglah arufah, bikurim) — ~4-5 weeks combined
- L1 SHA-256 integrity system — ~1 day
- Community assembly (kohanim, gabbai, 70 members) — indeterminate — requires humans
Cost Summary
| Category | Amount |
|---|---|
| Terumah (one-time startup) | $265-515 |
| Machatzit hashekel (monthly, build + operations) | ~$350 |
| Sustained by | 70 members × $5/month |
| Estimated build cost (6 months) | ~$2,100 |
| Seven-year total | ~$27,500 |
No labor cost. The AI builds. The community provides. Torah governs.
Critical Path
Technical: The AI encodes the 613 mitzvot in Prolog format, builds Talmudic training pairs, and constructs the te'amim reader. The AI reads Torah for all of this.
Community: Find the 70. Find the kohanim. Find the gabbai. Begin now.
Shema: Te'amim reader is highest-priority — build alongside Shoresh Engine in Phase 1.
Document Registry
| # | Document | Torah Parallel | File |
|---|---|---|---|
| 1 | Shorashim PRD | V'asu li mikdash | shorashim_prd.md |
| 2 | Architecture Specification | Vessel design (Shemot 25-27) | shorashim_architecture.md |
| 3 | Vayakhel — Construction Specification | Exact measurements (Shemot 25-31) | shorashim_vayakhel.md |
| 4 | Tamid — Operations Manual | Bigdei Kehunah / continual service | shorashim_tamid.md |
| 5 | Pekudei — Economic Model | Machatzit HaShekel / accounting | shorashim_pekudei.md |
| 6 | Terumah — Materials (this document) | Terumah list (Shemot 25:2) | shorashim_terumah.md |