Construction §1.2 specified an L1 that was never built: WLC 4.22 from a Sefaria export cross-validated against TANACH.us, a gematria lookup table, a squashfs image mounted read-only, a verse format with fields named `hebrew`, `consonantal`, `cantillation`. Each property was checked against the sources on disk and the 5,853 verse files before it was rewritten. - Edition: WLC 4.20, as the Open Scriptures Hebrew Bible carries it (every Torah file's header says "Updated to WLC version 4.20"). - Sources: openscriptures/morphhb @ 3d15126 for the text, lemma and morphology; openscriptures/HebrewLexicon @ 21c9add for the roots. Licences stated. ONE source for the text — the two-source cross-validation the section prescribed has not been done, and the section now says so. - Builder, extent (5 / 187 / 5,853 / 79,982), the real verse and word format, ketiv/qere (67 pairs, 64 verses), smikhut (9,203 pairs, 4,106 verses), shoresh (57,487 words, 1,378 roots, by lemma). - Gematria: not stored; computed when read. - Petuchah/setumah: in the source (233 + 394 milestones across the five books), NOT carried into L1 — the builder does not read them. Stated. - Verification procedure: the six steps that are actually performed — pinned checkouts, build_l1.py and its counts, the hash, the three places the hash is bound, root-owned read-only in the images, the witness and verify_l1.py. specs/shorashim_terumah.md §E1 matched the old section; corrected (source, ketiv/qere format, smikhut built, gematria not an index, paragraph markers ⚠️). l1/README.md no longer says squashfs. Doorpost @expected_hash 3f6d47a0… → 21f1a4d5…, in this commit, with the witnessed file that moved it (vayakhel). Read before committing: Elixir 484/0 (seeds 0, 42); verify_l1.py OK (l1/README.md is outside the hashed tree); pipeline image reports specification_identity verified 21f1a4d5…, l1_hash pass. Left as written: tamid's runbook steps that mount L1 from a squashfs image; architecture §3.7 and §4's build steps (squashfs, Sefaria); pekudei's cost line naming Sefaria. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
16 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 | 22.04 in the pipeline and engine images (ubuntu:jammy-20240125); 24.04 LTS on the cluster node (managed) |
✅ | Free. The korban and talmudic images are Debian 12, from their language base images. |
| systemd | ships with Ubuntu | ✅ | Service management, cycle timers. |
| Kubernetes / containerd | 1.35 / 2.2 (managed, Exoscale SKS) | ✅ | Runs the four images as one pod. Images are built with Docker Buildx. Podman is not used: Sanhedrin panels are processes in the pipeline's BEAM, not containers. |
| PostgreSQL | 17 (managed, Exoscale DBaaS; 17.11 on 2026-10-04) | ✅ | L3 append-only store. Patched by the provider. |
| 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.22.0 | ✅ | Free. The version mix local.rebar installs for Elixir 1.16.1. |
| 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. From the python:3.12.2-slim base image. |
| Poetry (Python package manager) | 2.5.1 | ✅ | Free. Generates poetry.lock (lock-version 2.1); not installed in any image. |
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.3.0 | ✅ | Hackage (free) — JSON |
| vector | 0.13.2.0 | ✅ | Hackage (free) |
| bytestring | 0.12.2.0 | ✅ | Hackage (free) — GHC 9.6.4 ships 0.11.5.3; the freeze pins this one |
| filepath | 1.4.301.0 | ✅ | Hackage (free) — GHC 9.6.4 ships 1.4.200.1; the freeze pins this one |
| directory | 1.3.10.1 | ✅ | Hackage (free) — GHC 9.6.4 ships 1.3.8.1; the freeze pins this one |
| hspec | 2.11.16 | ✅ | 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 |
|---|---|---|---|
| jason | ~> 1.4.1 (locked 1.4.5) | ✅ | hex.pm (free) — JSON |
| ecto_sql | ~> 3.11.1 (locked 3.11.3; ecto 3.11.2) | ✅ | hex.pm (free) — database interface |
| postgrex | ~> 0.22.3 (locked 0.22.4) | ✅ | hex.pm (free) — PostgreSQL driver |
| bandit | ~> 1.2 (locked 1.12.5) | ✅ | hex.pm (free) — HTTP server for the pe'ah / kodesh API |
| plug | ~> 1.15 (locked 1.20.3) | ✅ | hex.pm (free) — HTTP routing |
| telemetry | locked 1.4.2 | ✅ | hex.pm (free) — transitive (Ecto, Bandit); not depended on directly |
| sanhedrin | path dependency | ✅ | ../sanhedrin, built by rebar3 into the same BEAM |
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 | >=8.0,<9.0 (locked 8.4.2) | ✅ | PyPI (free) — dev group only; not in any image |
| 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.20, as carried by the Open Scriptures Hebrew Bible (openscriptures/morphhb), per Construction Specification §1.2. One source; not cross-validated against a second edition.
| Item | Status | Notes |
|---|---|---|
| Full Torah text — consonantal (ktiv) | ✅ | WLC via OSHB morphhb. |
| Full Torah text — voweled (nikkud) | ✅ | WLC via OSHB morphhb. |
| 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 | ⚠️ | Present in the WLC source (OSIS x-pe / x-samekh milestones). NOT carried into L1: scripts/build_l1.py does not read them. |
| Ketiv/qere annotations | ✅ | WLC annotations: 67 pairs in 64 verses. Stored per verse as {word_position, ketiv, ketiv_consonants, qere, qere_consonants} — both readings preserved, never collapsed. |
| Gematria (root → numerical value) | ✅ | Not stored in L1: computed from the consonants when read. Letter values fixed. No equivalence index is built. |
| Smikhut compound index (attested construct-state pairs) | ✅ | Built: 9,203 pairs in 4,106 verses, extracted by scripts/build_l1.py from the morphology where a word is marked construct. |
| 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.20, OSHB morphhb) with cantillation marks, ketiv/qere, vowels, lemma and morphology
- 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 |