bigdei_kodesh: disclose origin + not-horaah on every Torah-content response

Three Torah-grounded concerns at the user boundary:
- kichush (Vayikra 19:11) — origin not disclosed to recipients
- horaah (Devarim 17:8-11) — disclaimer present only at /chatzer/sanhedrin
- lo yachel devaro (Bamidbar 30:3) — external API terms unacknowledged

router.ex: disclosure/0 helper attached to every Torah-content response
(/peah, /courtyard, /chatzer/sanhedrin, teiku error). origin states the
system reasons computationally and may incorporate processed external-AI
output. not_horaah states the result is not a binding ruling. torah_basis
cites the verses.

shorashim_tamid.md: §7 EXTERNAL NEDARIM. Bamidbar 30:3 with translation,
Rambam cross-reference to mitzvot.pl (#93, #308, #542, #543),
Avraham–Avimelekh precedent for non-Israelite-party covenants, operator
responsibilities, Anthropic-specific posture, and separation between the
system's avodah_zarah halt and the operator's lo-yachel covenant.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Scott KarpandClaude Opus 4.7 committed 2026-04-24 19:25:44 -04:00
1 parent 0c4f764024
commit 5e00f75640
2 files changed
+76 -5

No files matched your search

@@ -153,7 +153,8 @@ defmodule VavPipeline.BigdeiKodesh.Router do
roots_consulted: Map.get(data, :roots_activated, []) |> format_roots(),
deliberation: "none",
cycle_phase: "voker"
}
},
disclosure: disclosure()
})
{:unresolved, data} ->
@@ -165,7 +166,8 @@ defmodule VavPipeline.BigdeiKodesh.Router do
deliberation: "single-judge",
cycle_phase: "voker"
},
note: "This question produced an unresolved result — teiku."
note: "This question produced an unresolved result — teiku.",
disclosure: disclosure()
})
{:waiting, reason} ->
@@ -236,7 +238,8 @@ defmodule VavPipeline.BigdeiKodesh.Router do
altar_portion: "recorded in L3",
kohen_portion: "diagnostics logged",
your_portion: "the result above"
}
},
disclosure: disclosure()
})
{:waiting, reason} ->
@@ -288,7 +291,8 @@ defmodule VavPipeline.BigdeiKodesh.Router do
outcome: decision.outcome,
processing_time_ms: decision.deliberation_time_ms
},
note: "This is the system's reasoning, not a binding ruling. A human beit din may reach a different conclusion."
note: "This is the system's reasoning, not a binding ruling. A human beit din may reach a different conclusion.",
disclosure: disclosure()
})
end
end
@@ -389,6 +393,22 @@ defmodule VavPipeline.BigdeiKodesh.Router do
|> send_resp(status, Jason.encode!(body))
end
# Disclosure attached to every Torah-content response.
# Vayikra 19:11 — לֹא תְכַחֲשׁוּ — affirmatively state what the output is.
# Devarim 17:8-11 — horaah is vested in human authorities, not in this system.
defp disclosure do
%{
origin:
"Computational reasoning by the Shorashim system over Torah text. " <>
"May include post-processed output from external AI models (Claude, Mistral) " <>
"consulted as korban sources; provenance is tagged internally.",
not_horaah:
"This is the system's reasoning, not horaah. " <>
"A human beit din may reach a different conclusion.",
torah_basis: ["Vayikra 19:11 (lo techachashu)", "Devarim 17:8-11 (horaah)"]
}
end
defp send_error(conn, status, code, guidance) do
send_json(conn, status, %{
error: %{
@@ -466,7 +486,8 @@ defmodule VavPipeline.BigdeiKodesh.Router do
send_json(conn, 200, %{
status: "teiku",
result: %{vital_content: format_answer(data)},
note: "TEIKU — this question could not be fully resolved"
note: "TEIKU — this question could not be fully resolved",
disclosure: disclosure()
})
end