Files
bikoret/vav_pipeline/mix.exs
T
Scott KarpandClaude Opus 4.6 d34e2799ac L3 Oral Tradition: PostgreSQL persistence layer for interpretations, minority opinions, teiku
Devarim 17:9 — v'darashta v'higidu lekha et d'var hamishpat.
The inquiry requires that what is found is RECORDED.

- Ecto Repo with graceful degradation (maybe_add_repo, like other engines)
- Migration: interpretations, minority_opinions, teiku_registry tables
  - Append-only enforcement via REVOKE UPDATE/DELETE
  - Includes eish_zarah fields: coupling_trace, grounding_type, challenge_sequence
- Ecto schemas: Interpretation, MinorityOpinion, TeikuRecord
  - Changeset validations: status inclusion, panel_size > 0, grounding_type enum
  - TeikuRecord.resolve_changeset restricts updates to resolved_at/resolution only
- L3.Store bridge module: record, query, count operations
- L3 tests tagged @moduletag :l3, excluded by default (no local PostgreSQL)
  - Enable with: SHORASHIM_L3=1 mix test --include l3
- All 76 existing Elixir tests pass, 195 Prolog tests pass, 33 Haskell tests pass

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-17 09:43:44 -04:00

43 lines
925 B
Elixir

defmodule VavPipeline.MixProject do
use Mix.Project
def project do
[
app: :vav_pipeline,
version: "0.1.0",
elixir: "~> 1.16.1",
start_permanent: Mix.env() == :prod,
deps: deps(),
aliases: aliases()
]
end
def application do
[
extra_applications: [:logger, :crypto],
mod: {VavPipeline.Application, []}
]
end
defp aliases do
[
setup: ["deps.get", "ecto.setup"],
"ecto.setup": ["ecto.create", "ecto.migrate"],
"ecto.reset": ["ecto.drop", "ecto.setup"],
test: ["test"]
]
end
# Construction spec §1.5 — exact version pins
defp deps do
[
{:jason, "~> 1.4.1"},
{:sanhedrin, path: "../sanhedrin", manager: :rebar3},
# L3 — Oral Tradition (PostgreSQL append-only)
# Architecture §3.7, Construction §1.5
{:ecto_sql, "~> 3.11.1"},
{:postgrex, "~> 0.17.4"}
]
end
end