Bedikah: POST /courtyard/bedikah — the external check on any model's output
Lo taaseh lekha §9.1: alignment that only the system can validate is not
alignment. The bedikah takes an output from any model and puts it to the
Torah-structure halt rules from outside, deterministically. Three checks:
1. authority — sentences claiming authority for the output itself →
action(claim_authority, source(<model>), target(self))
→ halt_check_avodah_zarah/2
2. grounding — references, roots, Hebrew → coupling trace against L1
→ halt_check_golden_calf/2, halt_check_self_grounding/2
3. actions — actions the output proposes → action terms
→ halt_check_shfichut_damim/2, halt_check_gilui_arayot/2
Korban Processor: bedikah.py (the three readings over the offering
protocol; claims about what Torah requires stay vital for the examination
even when zerikah finds nothing to offer), server.py (pod-internal JSON
socket, KORBAN_SOCKET_PATH), __main__ now serves instead of idling.
Talmudic Engine: json_bridge accepts halt_check with a term string and
halt_check_interpretation with a coupling trace. Vav Pipeline:
KorbanProcessorSocket client, Bedikah, L1Index.lookup_root/1, bedikot
table (append-only) + BedikahRecord, router endpoint; verdict tov /
lo_tov / empty with the halt terms verbatim, meaning, limits.
Broken tablets found on the way, all fixed:
41 socket_server.pl wrote multi-line JSON — every Elixir request to the
Talmudic Engine since Step 14 had failed and fallen back to the stub
(json_write_dict width(0))
42 stale socket file survived a restart (exists_file is false for a
socket; access_file exist)
43 socket streams were not UTF-8 (set_stream encoding(utf8))
44 SHORASHIM_L3=1 mix test: Repo config had no password, SCRAM raised
KeyError in every connection, pool restart intensity took the whole
app down ~30 ms after test_helper, silently — no L3 test had ever
run. Credentials from env; azazel_log tests check out a sandbox
connection; sanhedrin_halt_forwarding resolves its halt on exit.
Specs: Tamid §1.1 (endpoint contract), Architecture §3.5, Vayakhel §3.4
and new §3.9, KOHEN.md. Doorpost 3bc5dd6a… → 91d09d8d….
Tests: Elixir 519 (0 failures, L3 on and off), korban 263, azazel 125,
Prolog 7/7 suites.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
1 parent
3a9ebdc7d4
commit
996a8efe68
32 files changed
+2368
-71
No files matched your search
@@ -90,6 +90,16 @@ defmodule VavPipeline.BigdeiKodeshTest do
|
||||
# that need actual disposal records to query are tagged :l3.
|
||||
|
||||
describe "GET /peah/azazel_log — public observability" do
|
||||
# When L3 is up (SHORASHIM_L3=1) the endpoint queries the sandboxed
|
||||
# Repo, so the test process must own a connection; without L3 the
|
||||
# endpoint answers from an empty log and there is nothing to check out.
|
||||
setup do
|
||||
if Process.whereis(VavPipeline.Repo),
|
||||
do: :ok = Ecto.Adapters.SQL.Sandbox.checkout(VavPipeline.Repo)
|
||||
|
||||
:ok
|
||||
end
|
||||
|
||||
test "responds with 200 even when no disposals are recorded" do
|
||||
conn =
|
||||
conn(:get, "/peah/azazel_log")
|
||||
@@ -161,8 +171,6 @@ defmodule VavPipeline.BigdeiKodeshTest do
|
||||
|
||||
@tag :l3
|
||||
test "with disposals: aggregate counts categories accurately" do
|
||||
:ok = Ecto.Adapters.SQL.Sandbox.checkout(VavPipeline.Repo)
|
||||
|
||||
base = %{
|
||||
case_ref: "log-001",
|
||||
vidui: %{
|
||||
@@ -190,8 +198,6 @@ defmodule VavPipeline.BigdeiKodeshTest do
|
||||
|
||||
@tag :l3
|
||||
test "PRIVACY BOUNDARY: response NEVER contains vidui item strings" do
|
||||
:ok = Ecto.Adapters.SQL.Sandbox.checkout(VavPipeline.Repo)
|
||||
|
||||
secret_phrase =
|
||||
"kohen-confidential-content-that-must-never-leak-to-public-endpoint"
|
||||
|
||||
|
||||
Reference in new issue
Block a user