hakhel: the corpus read again on a cycle, counts engraved in L3 (bishe'arecha step 5)

Devarim 31:9–13, 26 — the scroll beside the ark as a witness, read before
all on a cycle. src/tools/hakhel.py reads the private specimen corpus and
the hand-labelled samples with the Korban Processor's readings at the
current commit and produces one record: fires per reading, forms standing
on two witnesses (the same rule as Bedikah.check_frames), precision and
recall on the hand labels, the corpus's SHA-256 — never a specimen.

POST /chatzer/hakhel (inner ring) engraves it in L3 `hakhel` (migration
20261013000001; refused above 256 KiB — counts, not specimens; the
Doorpost hash it was recorded under is kept). GET /peah/hakhel lists the
latest readings for anyone. KOHEN "The seventh day — Hakhel"; Tamid §1.1;
bishearecha §VIII marked built. The weekly cycle runs from the builder's
machine, where the corpus lives.

First dry reading at 0ade2c94: 3094 specimens, any reading 26 %, a form
stands 7 %, precision 46/59, recall 6/30. Doorpost 9f752a2f…. Elixir
599/0, L3 10/0.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
Scott KarpandClaude Fable 5.1 committed 2026-10-13 18:50:47 +00:00
1 parent 0ade2c949e
commit ffccedb63a
12 files changed
+552 -4

No files matched your search

+17
View File
@@ -584,6 +584,23 @@ Each upstream call spends one `api_calls_external` of the day's manna
the bedikah by hand still runs. Streaming is refused (422). A non-200
from the model passes through as it came. Tamid §1.1 has the contract.
### The seventh day — *Hakhel*
The specimen corpus is read again against the readings as they now
are, and the counts are engraved (never a specimen). From the machine
where the corpus lives:
```bash
cd ~/shorashim && PYTHONPATH=korban_processor/src python3 src/tools/hakhel.py # with the korban venv active \
--corpus <private>/specimens.jsonl --precision <private>/sample-precision-final.json \
--recall <private>/sample-recall.json --post http://<host> --key-file ~/.config/shorashim/api_keys
curl -s http://<host>/peah/hakhel | jq '.readings[0] | {date, readings_ref, counts: .counts.any_stand}'
```
A cron on that machine does this weekly; the kohen reads the latest at
`/peah/hakhel` and compares with the week before — a reading whose
counts move without a commit to the readings is the finding.
### Friday before sunset — *Erev Shabbat*
Write a **double portion** manna provision (`type: "double"`, doubled compute_units). The system will cease processing at Shabbat onset. No provision is written on Shabbat.