vahtian v.0.1.0
vahtian v0.1.0
First release — the reproducible, provenance-first core, in both Python and R.
vahtian freezes a record set into a content-hashed, provenance-stamped,
date-locked corpus; verifies it (tamper-evident); and keeps a hash-chained
audit trail. Human-first. AI-second. Auditable.
Highlights
- Cross-language parity, proven in CI. The Python and R packages produce a
byte-identicalcontent_hashfor the same records — a golden-hash test
asserts the same literal in both test suites, so a corpus frozen in one
language verifies in the other. - Zero dependencies (Python), one (R). Stdlib-only Python; R needs only
digest. - Local-first, no accounts, no telemetry. Apache-2.0.
What's in it
freeze(records, search_date)→ deduped (PMID > DOI > title-hash),
provenance-merged, date-locked, content-hashed corpus. Reproducible
independent of source order.verify(corpus)→ recomputes the hash; any tampering fails it.- A hash-chained audit ledger (
Ledger/ledger_*): retro-edits,
reordering, or deletions break the chain.
Install
Python (PyPI):
pip install vahtian
R (from R-universe — distribution coming):
install.packages("vahtian", repos = "https://heidihelena.r-universe.dev")
Notes
Published to PyPI via GitHub Actions Trusted Publishing (OIDC) with PEP 740
attestations — no API tokens.
vahti (Finnish) = sentinel / guard. The watch over what gets cited.
Full context: https://vahtian.com/ · https://vahtian.com/agents/ (for LLMs & agents)