Skip to content

Releases: heidihelena/vahtian

vahtian 0.2.0

Choose a tag to compare

@heidihelena heidihelena released this 30 Jul 08:35
cbd2777

Python package release (packages/vahtian-py).

Since 0.1.1:

  • Local stdio MCP server for the reproducibility core (freeze_corpus, verify_corpus, resolve_record_id, audit_append, audit_verify). Opt-in extra: pip install "vahtian[mcp]" (#261).
  • Deterministic claim-source comparator, the CiteVahti core (#175), mirrored to vahtian-r with a golden parity gate (#176).
  • Comparator v2: per-field epistemic states, so a single missing value no longer collapses distinct reasons (#177).
  • MCP Registry collateral: server.json and the mcp-name marker in the PyPI README (#317).

PyPI publish runs via Trusted Publishing on this tag. Corpora and ledgers stay on the user's machine; the package checks reproducibility and records who did what, it does not judge evidence.

vahtian v0.1.1 — citation metadata release

Choose a tag to compare

@heidihelena heidihelena released this 13 Jul 13:06
e221e9d

Metadata-only release: adds .zenodo.json so the GitHub–Zenodo integration archives the repository and mints its concept DOI (creator: Heidi Helena Andersén, ORCID 0000-0001-5923-5865). No functional changes to the vahtian-py package since v0.1.0.

Also published to PyPI as vahtian 0.1.1.

vahtian v.0.1.0

Choose a tag to compare

@heidihelena heidihelena released this 27 Jun 08:00
cc35c68

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-identical content_hash for 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
attestationsno API tokens.
vahti (Finnish) = sentinel / guard. The watch over what gets cited.
Full context: https://vahtian.com/ · https://vahtian.com/agents/ (for LLMs & agents)