README.md

August 4, 2026 Β· View on GitHub

ValiChord Logo

An Immune System for Trust: Distributed Integrity Infrastructure for Independent Verification

Integration Tests Status Language Tests Commit--Reveal UI

πŸ“– Primary Entry Point: Vision & Architecture

The core vision: Why ValiChord matters and how it solves the $200B verification gap.

🧬 The Mission

Across every scientific discipline β€” computational, experimental, clinical, hardware β€” 70% of researchers have failed to reproduce another scientist's work. This "Verification Gap" results in an estimated $200 billion in wasted R&D annually.

ValiChord is a distributed, agent-centric infrastructure designed to make scientific reproducibility verifiable, tamper-evident, and structurally resistant to corruption. The protocol is domain-agnostic: methodology and data go in, independent validators reproduce the work, and the result is a Harmony Record β€” a permanent, publicly queryable record that preserves the full texture of scientific agreement and disagreement. Computation is the first and most tractable instance. It is not the only one. The same protocol applies wherever independent verification must be structurally tamper-proof: AI capability evaluation, regulatory auditing, clinical trial attestation, structured intelligence assessment, and any high-stakes domain where the integrity of independent judgment cannot be left to procedural norms alone.


🌐 Live Web Demo β€” one click, no setup

valichord-demo.onrender.com/demo

The fastest way to see the protocol: the Your Hypothesis demo. Enter any factual claim, seal your own answer, and provide your Anthropic API key (sk-ant-…) β€” three AI validator agents research the claim blind and in parallel on the live Holochain network on Oracle Cloud, each sealing a cryptographic commitment before anyone reveals. When all three have committed, you trigger the simultaneous reveal yourself. A full run takes ~90 seconds of real network time, not a timer.

At the end of each run the page shows a curl command so you can fetch the HarmonyRecord directly from the Oracle DHT and confirm the result was not generated by this website. (Bring your own API key β€” the demo runs entirely on the visitor's key.)

⚠️ Version note (August 2026) β€” the demos and main are not yet the same build. This repository is now on Holochain 0.7.0; the Oracle Cloud deployment behind both demos on this page still runs 0.6.2, and its rebuild is the next deployment task. Holochain 0.7 and 0.6 agents form separate networks, so the demos exercise the same protocol but not the exact bytes on main. The rebuild is a fresh network rather than an in-place upgrade, so HarmonyRecord URLs published from the current Oracle deployment will not survive it.

🎬 Watch a video of the current demo running end-to-end β†’

Full technical guide β€” Flask architecture, request flow, Render deployment β†’


🐳 Decentralised Demo β€” 5 Isolated Conductors

The full protocol runs across genuinely isolated nodes with no shared state β€” permanently live on Oracle Cloud.

Five Docker containers β€” one researcher, three validators, one kitsune2 bootstrap server β€” each run their own Holochain conductor with their own keypair and their own SQLite database. The only communication channel is the DHT. The validators are completely unaware of each other's verdicts. The researcher is completely unaware of what validators will conclude. The commit-reveal protocol enforces this structurally, not by policy.

Option A β€” SSH into Oracle and run (simplest β€” no env vars needed):

ssh -i path/to/ssh-key.key ubuntu@152.67.153.149
# then on the server:
cd ValiChord && git pull && python3 demo/ai_validator.py --mode decentralised

Option B β€” Run against Oracle from your own machine:

export ANTHROPIC_API_KEY=sk-ant-...
export VALICHORD_RESEARCHER_URL=http://152.67.153.149:3001
export VALICHORD_VALIDATOR_1_URL=http://152.67.153.149:3002
export VALICHORD_VALIDATOR_2_URL=http://152.67.153.149:3003
export VALICHORD_VALIDATOR_3_URL=http://152.67.153.149:3004
python3 demo/ai_validator.py --mode decentralised

Option C β€” Run locally:

export ANTHROPIC_API_KEY=sk-ant-...
docker compose -f demo/docker-compose.yml up --build -d
python3 demo/ai_validator.py --mode decentralised

Full technical guide β€” architecture, commit-reveal table, Oracle setup β†’


πŸ–₯️ Browser UI β€” Svelte 5 + TypeScript

The full commit-reveal protocol now has a browser-based interface β€” no command line required.

valichord-ui/ connects directly to a running Holochain conductor via WebSocket and exposes three role-based dashboards:

RoleWhat you can do
ResearcherSubmit a validation request, lock result metrics before validators finish, reveal when the protocol opens
ValidatorPublish a profile, browse open studies, claim a study, submit a blind attestation, reveal when the phase opens
GovernanceBrowse permanent Harmony Records by discipline, view inferred reproducibility badges, force-finalize stuck rounds
# Terminal 1 β€” start conductor + install app + write auth token
cd valichord-ui && npm install && bash dev.sh

# Terminal 2 β€” start dev server (once Terminal 1 prints "Token written")
cd valichord-ui && npm run dev
# opens http://localhost:5173

Full UX walkthrough and setup guide β†’


[ Project Website ] Β β€’Β  [ Governance Framework ] Β β€’Β  [ 4-DNA Architecture ] Β β€’Β  [ ValiChord at Home ]


πŸ—οΈ 4-DNA Membrane Architecture

ValiChord is built as four distinct Holochain DNAs β€” four separate peer-to-peer networks β€” ensuring absolute data sovereignty and GDPR compliance by architecture, not policy.

DNAPurposeAccess Control
DNA 1 β€” Researcher RepositoryPrivate storage of raw code, data, protocols, and snapshots. At submission, lock_researcher_result seals result metrics with a cryptographic nonce β€” only the hash leaves.Private β€” single agent, never enters DHT
DNA 2 β€” Validator WorkspaceWhere the reproduction work happens. Private attestation sealed here during the commit phase.Private β€” single agent, never enters DHT
DNA 3 β€” AttestationShared DHT for validation requests, blind commitment anchors, and public attestations. Credentialed membrane.Credentialed β€” institutional membrane proof required
DNA 4 β€” Governance & HarmonyPublic results, Harmony Records, Reproducibility Badges, and validator reputation. HTTP Gateway target.Open read β€” no Holochain node required

πŸ” Trust & Identity Model

ValiChord separates identity assurance from consensus. Sybil resistance is not achieved through staking, proof-of-work, or token economics β€” it is achieved through membrane proofs: every validator must present a cryptographically signed joining certificate issued by a trusted credentialing authority before their attestations are accepted by the network.

This means:

  • The validator set is permissioned β€” open participation is deliberately excluded
  • Real-world identity is bound to on-chain agent keys at the membrane boundary
  • A validator cannot trivially multiply their influence by creating additional identities, as each identity requires a separate institutional credential
  • All commit-reveal commitments and attestations are therefore attributable to a verified real-world entity

ValiChord does not attempt to solve Sybil resistance in an open network. It delegates identity assurance to institutional credentialing β€” the appropriate mechanism for high-integrity scientific and regulatory validation contexts. Trust in the issuer is externalised: it derives from institutional legitimacy (journals, funders, accrediting bodies) rather than on-chain consensus. ValiChord intentionally bridges real-world authority into the protocol rather than attempting to replace it.

Credential Issuance & Governance

The credentialing authority is set via the authorized_joining_certificate_issuer DNA property at network instantiation.

Phase 0 (current): Certificate issuance is operated by ValiChord as a single trusted authority. This is a deliberate bootstrap choice β€” establishing a known, accountable issuer before governance infrastructure matures β€” rather than an architectural limitation.

Phase 1 roadmap: Credential issuance will be extended to support multiple issuers (journals, funders, professional bodies) and governance-controlled issuer rotation, allowing institutional participants to federate trust without depending on a single point of authority.

A compromised issuer cannot retroactively alter existing attestation records on the DHT β€” issued certificates are agent-key-bound and non-transferable. However, issuer compromise can affect the integrity of future attestations by allowing unauthorised validators to enter the network, which is why issuer rotation and governance controls are part of the Phase 1 roadmap.


βœ… Implementation Status

The four-DNA infrastructure is built and tested. This is not a whitepaper or a design document β€” it is working Rust/Holochain code with a passing integration test suite.

valichord/
β”œβ”€β”€ shared_types/           β€” cross-DNA types (pure rlib)
β”œβ”€β”€ dnas/
β”‚   β”œβ”€β”€ attestation/        β€” DNA 3: shared DHT, credentialed membrane
β”‚   β”œβ”€β”€ researcher_repository/ β€” DNA 1: private, single-agent
β”‚   β”œβ”€β”€ validator_workspace/   β€” DNA 2: private, single-agent  
β”‚   └── governance/         β€” DNA 4: public DHT, HTTP Gateway
β”œβ”€β”€ sweettest_integration/  β€” Rust sweettest suite (native conductor) β€” the integration suite
β”œβ”€β”€ wind-tunnel/            β€” Wind-Tunnel performance scenarios (throughput, DHT propagation, load)
└── happ.yaml               β€” all four DNA roles bundled

valichord-ui/               β€” Svelte 5 + TypeScript browser UI
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ App.svelte          β€” shell, port detection, signal handling
β”‚   β”œβ”€β”€ lib/holochain.ts    β€” AppWebsocket singleton + callZome wrapper
β”‚   β”œβ”€β”€ lib/types.ts        β€” TypeScript mirrors of all Rust types
β”‚   β”œβ”€β”€ lib/store.ts        β€” Svelte stores
β”‚   β”œβ”€β”€ lib/ResearcherView.svelte
β”‚   β”œβ”€β”€ lib/ValidatorView.svelte
β”‚   └── lib/GovernanceView.svelte
β”œβ”€β”€ tests/e2e/              β€” Playwright suite against a real conductor (runs in CI)
└── FRONTEND.md             β€” UX walkthrough and setup guide

150 automated tests across three suites (114 Rust sweettest, 30 Rust unit, 6 Playwright browser e2e) β€” all running in CI, none skipped. The system is also integration-ready: a REST API (POST /validate, GET /result/<job_id>) connects the analysis pipeline to the live Holochain network, and a working HTTP Gateway exposes Harmony Records as publicly verifiable links. The API supports API key authentication, webhook callbacks, and a full OpenAPI 3.0 spec with Swagger UI at GET /docs. Any tool that can make an HTTP request can integrate.

ValiChord has been demonstrated running as a real multi-node network. Integration tests launch up to 7 independent Holochain conductors β€” each with its own agent identity, source chain, and DHT participation β€” executing the full blind commit-reveal protocol and producing a Harmony Record on a shared live DHT. This is not a simulation: each conductor is an independent process with separate state, communicating over a real peer-to-peer network. The constraint is infrastructure RAM, not architecture.

What the tests prove, in brief:

  • The full blind commit-reveal protocol, end to end across all four DNAs β€” sealing, public commitment anchors, DHT-poll-driven phase transitions, symmetric dual reveal, and HarmonyRecord assembly including mixed/Divergent outcomes
  • On-chain enforcement is real, not aspirational β€” a verdict altered between sealing and reveal is rejected with a hash mismatch (security sweettests S7/S8); all public record types are immutable, with no delete functions exposed
  • The membrane works β€” real Ed25519 membrane-proof verification: issuer-signed proofs accepted, forged signatures rejected
  • Privacy holds across agents β€” private attestations and locked results are unreadable by peers and never enter the DHT
  • The study lifecycle survives real-world failure β€” claims with conflict-of-interest rejection at the integrity layer, capacity checks, dropout reclaim, reduced-quorum force-finalisation, and deliberate abstention as a first-class recorded act
  • Discovery and analytics indexes resolve correctly β€” by discipline, institution (conflict-of-interest), badge type, difficulty, and data hash
  • Adversarial inputs are guarded β€” duplicate commitments/attestations rejected, self-claim prevented with no dev bypass, TOCTOU-safe phase writes, deterministic link resolution
  • The browser UI drives the real protocol β€” Playwright exercises the Svelte forms against a live conductor with no mocks, on every push, in ~2 minutes
  • Performance is measured, not assumed β€” five Wind-Tunnel load scenarios; a live 3-conductor run measured median cross-agent DHT propagation at β‰ˆ 185 ms

πŸ“„ Full test inventory, per-suite run commands, and CI layout β†’ TESTING.md


πŸ” The Blind Commit-Reveal Protocol β€” Fully Symmetric (March 2026)

This is the core anti-gaming guarantee that makes ValiChord different from every other reproducibility system.

For the first time, a computational reproducibility system provides cryptographic proof of four things simultaneously:

  • Validators could not see each other's findings before committing their own
  • Validators could not see the researcher's claimed values before forming their own verdict β€” only the commitment hash is visible during the commit phase, preventing anchoring or bias
  • The researcher could not change their claimed results after seeing any validator's findings
  • The comparison of researcher-declared values against validator-reproduced values is cryptographically genuine β€” not self-reported or trust-based

Neither party can move the goalposts. The envelopes are sealed before anyone opens theirs.

The protocol is implemented across all four DNAs and is fully tested:

  1. Researcher seals result (at submission, months before validators begin) β€” lock_researcher_result in DNA 1 generates a 32-byte random nonce, computes commitment_hash = SHA-256(rmp_serde::to_vec_named(metrics) || nonce), stores the structured metrics and nonce as a private LockedResult entry that never leaves the researcher's device, and automatically publishes only the hash to DNA 3 as a ResearcherResultCommitment. Validators can verify this commitment exists before accepting a study β€” the researcher is bound to their result from day one. Critically, only the hash is published: validators cannot see the actual metric values until after they have committed their own verdicts, preventing anchoring bias.
  2. Validators commit β€” each validator seals their private assessment as a ValidatorPrivateAttestation in their own DNA 2 workspace. seal_private_attestation generates a random nonce and computes commitment_hash = SHA-256(msgpack(ValidationAttestation) || nonce). The entry β€” including the nonce β€” never leaves their machine. A validator who ran tooling may also set reproduction_bundle_hash, the content_hash of their own valichord_attestation bundle; because it is part of the hashed struct it is sealed into the commitment automatically, so their verdict is bound to a specific set of per-sample outputs rather than to the bare word "Reproduced". The field is optional and None is a legitimate permanent state β€” an unbound verdict, not a missing one. It binds which results the validator stands behind; it does not prove the bundle came from a real run, and it does not catch a validator who genuinely computes the wrong answer.
  3. Anchors published β€” DNA 2's post_commit automatically calls notify_commitment_sealed() in DNA 3, writing a public CommitmentAnchor to the shared DHT containing the commitment_hash. Everyone can verify the commitment happened and that it is cryptographically bound to a specific assessment β€” but the assessment content remains hidden.
  4. Phase opens β€” when all expected CommitmentAnchor entries are present, DNA 3 writes a PhaseMarker(RevealOpen) to the DHT. Validators discover this by polling, not by signal β€” ensuring no validator is disadvantaged by network latency.
  5. Dual reveal (both parties simultaneously) β€” the researcher calls reveal_researcher_result in DNA 3, which verifies SHA-256(rmp_serde::to_vec_named(metrics) || nonce) == result_commitment_hash on-chain and writes an immutable ResearcherReveal to the DHT. Each validator retrieves their sealed nonce from DNA 2 via get_private_attestation_for_task and calls submit_attestation in DNA 3, which verifies SHA-256(msgpack(attestation) || nonce) == CommitmentAnchor.commitment_hash on-chain. Neither party can reveal different values than they committed to, and neither could see the other's committed content before committing their own.
  6. Harmony β€” once all attestations are present, DNA 4 assembles a HarmonyRecord on the public DHT, assesses agreement, and optionally issues a ReproducibilityBadge. The researcher's verified ResearcherReveal metrics and each validator's produced_value fields are both on the public DHT β€” the comparison is genuine and independently verifiable by anyone. Badge tiers (Gold β‰₯ 7, Silver β‰₯ 5, Bronze β‰₯ 3 validators) reflect agreement level and participant count. The record also carries validators_requested beside the participant list, so a round that closed early reads "3 of 7" rather than silently "3" β€” the denominator is part of the permanent record, not dropped from it. Phase 0 note: validator experience is not yet tracked in production β€” see the Architecture doc for the Phase 0 badge caveat.

βš–οΈ Governance Philosophy: Designing Against Domestication

Most validation systems fail not because of bad technology but because of institutional capture β€” funders, publishers, or powerful research groups gradually bend the rules in their favour. ValiChord's governance framework is designed from the ground up to resist this.

The core principle is structural independence: no single institution, funder, or validator cohort can control outcomes. This is achieved through:

  • Blind commitment β€” validators cannot see each other's findings before revealing their own, preventing social conformity and last-mover advantage
  • Credentialed membranes β€” only institutionally verified validators can participate; anonymous or self-certified participation is architecturally impossible
  • Immutable public records β€” Harmony Records on the public DHT cannot be altered or deleted by anyone, including ValiChord's own operators
  • Distributed governance β€” no central server, no single point of control; the network is the authority
  • Transparent disagreement β€” where validators diverge, the disagreement is recorded in full, not averaged away

The governance framework explicitly addresses what happens when ValiChord itself comes under pressure β€” from funders seeking favourable results, from institutions protecting reputations, or from validators gaming the system for reputation scores. The answer in each case is the same: the architecture makes corruption structurally difficult rather than relying on policy or goodwill.

πŸ“„ Read the full Governance Framework β€” published as a Zenodo preprint: 10.5281/zenodo.18878108


πŸ”‘ Configurable Trust

ValiChord's trust model is set by the deployment, not by the protocol. The membrane proof system is a dial: operators configure the credential threshold appropriate to their context, and the protocol runs identically regardless of where that dial is set.

Some contexts demand high bars. Scientific reproducibility validation requires credentialed evaluators β€” you cannot allow unverified agents to attest whether a genomics workflow reproduces correctly, or whether an AI system's capability claim holds. The integrity of the record depends on the institutional standing of those who sign it.

Other contexts call for openness. Community fact-checking, citizen science, and decentralised forecasting may configure minimal credential requirements or none at all β€” broad participation is a feature, not a liability.

As ValiChord is adopted across domains, each deployment will calibrate this dial to its own trust requirements. The protocol β€” blind commit, DHT-anchored reveal, immutable Harmony Record β€” is the same in every case. Only the membrane configuration changes.


πŸ—ΊοΈ Landscape: Where ValiChord Fits

ValiChord is not a replacement for existing reproducibility tools β€” it is the coordination, governance, and certification layer that those tools operate within.

Project / ToolFocus AreaValidation ModelIncentivesGovernanceIntegrationTamper-Evidence
ValiChordDistributed validationMulti-party, Harmony Recordsβœ… YesTransparent, anti-captureJournals, Funders, Reposβœ… Yes
BinderReproducible environmentsSingle execution❌ NoN/ARepos❌ No
Code OceanExecutable capsulesSingle execution❌ NoProprietaryJournals❌ No
FLINCReproducibility packagingSingle execution❌ NoN/ARepos❌ No
PTUProcess tracingSingle execution❌ NoN/ARepos❌ No
ReproZipPackaging and portabilitySingle execution❌ NoN/ARepos❌ No
RenkuLabCollaborative scienceSingle/multi execution❌ NoN/ARepos❌ No
SciunitReproducibility packagingSingle execution❌ NoN/ARepos❌ No
Whole TaleData-driven scienceSingle/multi execution❌ NoN/ARepos❌ No

Landscape based on benchmarking by Zenodo:15167233 (2025), which evaluated these tools against 18 real computational experiments across multiple disciplines.

Every existing tool facilitates reproducibility β€” making it easier to run code, package environments, or share data. None of them verify that independent validators reached the same conclusion, preserve disagreement as a first-class output, compensate validators for their work, or resist institutional pressure to soften findings. That is the gap ValiChord fills.


πŸ› οΈ Researcher Ecosystem: ValiChord at Home

Before submitting for formal validation, researchers use ValiChord at Home to scan their deposit privately β€” 100+ automated checks for documentation gaps, hardcoded paths, missing dependencies, absent data dictionaries, and more. It generates proposed corrections (drafted READMEs, pinned requirements) for researcher review.

ValiChord at Home is a standalone tool in its own repository. It does not run the commit-reveal protocol β€” it is a pre-flight check that helps researchers make their deposits validatable.

πŸ‘‰ ValiChord at Home β†’


πŸ”¬ AI Evaluation Attestation β€” valichord_attestation

valichord_attestation/ is a Python library for producing cryptographically verifiable attestation bundles for AI evaluation runs. The same verification logic that ValiChord applies to scientific reproducibility β€” commit, hash, reveal β€” applies to AI capability benchmarks: a published accuracy score should be traceable to a specific run and independently verifiable without access to the full log.

Two properties make a bundle verifiable:

  1. Deterministic hash β€” bundles are encoded with RFC 8785 (JSON Canonicalization Scheme), so the same run always produces the same bytes and the same SHA-256 digest.
  2. Merkle root β€” a SHA-256 Merkle tree over per-sample outputs lets the log holder prove any individual sample to a verifier without disclosing the full log.
from valichord_attestation import build_bundle, hash_bundle, merkle_proof, verify_faithfulness

bundle = build_bundle(
    model_id="gpt-4o-2024-08-06",
    task_id="gsm8k",
    raw_metrics=[{"key": "accuracy", "value": 0.847, "stderr": 0.025}],
    samples=[{"index": i, "output": "...", "correct": True} for i in range(1319)],
    samples_total=1319,      # assert intended run size β€” detects silent sample omission
    repo_commit="abc123",
    harness_version="inspect_ai/0.3.19",
)
bundle_hash = hash_bundle(bundle)   # publish alongside the report
proof = merkle_proof(samples, index=42)   # selective disclosure
ok = verify_faithfulness(bundle.outputs_merkle_root, 42, samples[42], proof)

The format is harness-agnostic. An AdapterBase class and six built-in adapters cover the major evaluation harnesses:

  • InspectAILogAdapter β€” reads inspect_ai .eval/.json log files directly via the inspect_ai Python API (no pre-parsing step)
  • InspectEvalsAdapter β€” reads the evaluation_report: block from eval.yaml, with optional eval_yaml_metadata= enrichment (arxiv, human baseline, floating-asset warnings, requires_internet)
  • LmEvalAdapter β€” reads lm-evaluation-harness results_*.json (+ optional samples_*.json) β€” the de-facto industry standard for LLM benchmarking
  • AiluminateAdapter β€” reads MLCommons AILuminate (modelbench) safety-benchmark reports, committing model responses and grader verdicts together
  • PiSessionAdapter β€” reads pi coding-agent session JSONL files
  • WandbRunAdapter β€” reads Weights & Biases run metadata and summary metrics

InspectAILogAdapter, InspectEvalsAdapter and PiSessionAdapter are exported from the package root; the rest import from their modules, e.g. from valichord_attestation.adapters.lm_eval_adapter import LmEvalAdapter.

from valichord_attestation import InspectAILogAdapter

bundle = InspectAILogAdapter().to_bundle("logs/my_eval.eval")

A probabilistic challenge-response layer (Section 6 of the spec) adds verifier-controlled randomness on top of the Merkle structure. The verifier supplies a random nonce; challenged indices are derived from HMAC-SHA256(nonce, bundle_hash) + SHA-256 counter-mode, so the holder cannot predict which samples will be inspected. The response contains only hashes and proof paths β€” no raw sample content. With k=60 and a 5% fabrication rate, catch probability is ~95%.

from valichord_attestation import hash_bundle, Challenge, build_response, verify_response
import os

challenge = Challenge(bundle_hash=hash_bundle(bundle), verifier_nonce=os.urandom(32), k=60)
response = build_response(challenge, samples)          # holder's side
ok = verify_response(challenge, response, bundle)      # verifier's side

Status: 487 tests, 97% line coverage, format v1.2 (dual bundle_hash/content_hash, free-form meta provenance block). Integration with ValiChord's Holochain DHT (bundles as on-chain attestations) is v2 scope β€” v1.x is a standalone format library.

pip install -e "valichord_attestation[dev]"
pip install "valichord_attestation[inspect-ai]"   # adds inspect_ai dependency
pytest valichord_attestation/tests/

# GSM8K demo β€” Mistral-7B-Instruct-v0.3 on GSM8K-100 (no GPU required)
python valichord_attestation/examples/mistral_7b_gsm8k_demo/challenge_response_demo.py

# inspect_ai demo β€” GPT-4o-mini on popularity task (no GPU or download required)
python valichord_attestation/examples/inspect_ai_popularity_demo/challenge_response_demo.py

πŸ“„ Format spec β†’ Β β€’Β  πŸ“¦ GSM8K example β†’ Β β€’Β  πŸ“¦ inspect_ai example β†’


πŸ“š Document Library

Understanding ValiChord

DocumentDescription
The BasicsNon-technical introduction: what ValiChord does, how it works, and which fields it applies to
Vision & Architecture v13What ValiChord is and why it matters
Governance FrameworkHow the system resists corruption
Harmony RecordsWhat a Harmony Record is and why it matters
How a Validation Round WorksStep-by-step narrative from submission to Harmony Record
Validator GuideWhat it means to be a ValiChord validator
Why Holochain?Non-technical explanation of the architectural choice
Other Potential Use CasesWhere else the ValiChord pattern applies
ValiChord at HomeSelf-service deposit quality checker β€” 100+ automated checks, draft generation

Architecture

DocumentDescription
4-DNA Architecture β€” TechnicalFull technical architecture document for engineers
4-DNA Architecture β€” Plain EnglishNon-technical explanation of the four-membrane design
Eight-Layer InfrastructureThe full eight-layer conceptual architecture
Technical Reference v29Full architectural narrative and engineering reference
Architecture Scaffold v13 (Rust)Single-file representation of the four-DNA architecture

Frontend

DocumentDescription
Frontend UX GuideScreen-by-screen walkthrough for researchers, validators, and governance observers; setup instructions

Integrations

DocumentDescription
Deployment ChecklistAll DNA properties, dev/test bypass values, production requirements, and misconfiguration failure modes
Integration GuideREST API integration guide for any tool β€” curl, Python, TypeScript examples, webhooks
OpenAPI 3.0 SpecMachine-readable API spec; served live at GET /openapi.yaml
Attestation Format v1 SpecCanonical attestation bundle format for AI evaluation runs β€” schema, Merkle construction, encoding rules
Nondominium Integration VisionDesign for ValiChord Γ— Nondominium (Sensorica) open-value accounting
Nondominium Integration StatusStatus and open design decisions

Funding & Research

DocumentDescription
Open Design QuestionsOutstanding design decisions and open questions
Sponsors & IndependenceWho funds ValiChord, and the six things sponsorship explicitly cannot buy

πŸ”§ For Developers

The four-DNA Holochain infrastructure is built and integration-tested. The codebase is available for technical review.

ResourceLink
Codebase (Rust / Holochain)valichord/
AI eval attestation library (Python)valichord_attestation/
Browser UI (Svelte 5)valichord-ui/
Frontend UX guidevalichord-ui/FRONTEND.md
Testing guide β€” all four layers, run commands, coverage inventoryTESTING.md
Test suite + build instructionsTESTING.md
Wind-Tunnel performance scenariosvalichord/wind-tunnel/
Architecture Scaffold v12docs/4_ValiChord_RUST_Scaffold.rs
Technical Architecturedocs/7_ValiChord_4-DNA_architecture_technical.md
Technical Reference v29docs/3_ValiChord_Technical_Reference.md
Deployment Checklistdocs/DEPLOYMENT_CHECKLIST.md
Engineer Handoverdocs/13_Valichord_Engineer_Handover.md

Integration partners, domain validators (HPC, clinical, environmental), and frontend contributors are equally welcome β€” the protocol is language-agnostic and the REST API is the entry point for non-Rust contributors.

⚑ Quickstart β€” clone to passing tests

# 1. Prerequisites (Holochain 0.7.0 toolchain β€” or just run ./setup_holochain.sh)
rustup target add wasm32-unknown-unknown
cargo install holochain           --version 0.7.0 --locked
cargo install holochain_cli       --version 0.7.0 --locked   # provides the `hc` CLI
cargo install kitsune2_bootstrap_srv --version 0.5.0 --locked

# 2. Clone and build
git clone https://github.com/ValiChord/ValiChord.git
cd ValiChord/valichord
cargo build --target wasm32-unknown-unknown --release

# 3. Pack the four DNAs and bundle the hApp
hc dna pack dnas/attestation            -o workdir/attestation.dna
hc dna pack dnas/researcher_repository  -o workdir/researcher_repository.dna
hc dna pack dnas/validator_workspace    -o workdir/validator_workspace.dna
hc dna pack dnas/governance             -o workdir/governance.dna
hc app pack .                           -o workdir/valichord.happ

# 4. Run the integration tests (sweettest β€” in-process Rust conductors)
pkill -x holochain; pkill -x lair-keystore; sleep 2   # -x, never -f: -f matches this shell
./run-sweettest.sh attestation
./run-sweettest.sh governance
./run-sweettest.sh researcher_repository
./run-sweettest.sh validator_workspace
./run-sweettest.sh security
./run-sweettest.sh membrane_proof

For full build details, troubleshooting, and test architecture see the Developer Guide wiki.

Running the demo: See demo/DECENTRALISED_DEMO.md for full instructions.

Browser UI: A Svelte 5 + TypeScript UI (valichord-ui/) runs against a live Holochain 0.7.0 conductor, with a Playwright e2e suite (npm run test:e2e) exercising the real browser-to-conductor journey in CI. bash dev.sh starts the conductor and writes the auth token; npm run dev -- --host serves the UI. See valichord-ui/README.md for the quick start and valichord-ui/FRONTEND.md for the full UX walkthrough.


πŸ“Š Roadmap

PhaseFocusStatus
Phase 0Workload Discovery: Empirical study to quantify the true cost of validation β€” how long it takes, what makes it difficult, what it costs.Seeking funding / may be superseded by direct project engagement.
Phase 1Full MVP: UI layer, researcher and validator dashboards, live network deployment.Browser UI browser-tested on Holochain 0.7.0 (valichord-ui/). Live network deployment pending first real validation engagement.
Phase 2Integration at scale: Always-on hosting, journal and funder API deployments, persistent AI validator nodes.REST API open: API keys, webhooks, OpenAPI spec, Swagger UI. HTTP Gateway working. Nondominium integration in design.

Probabilistic challenge-response is shipped in valichord_attestation (format v1.2). Hardware-attested execution via TEE is the next step toward report faithfulness verifiable without log access.


ValiChord is built on Holochain β€” an end-to-end open-source agent-centric P2P application framework.

Holochain Logo

Author: Ceri John Β β€’Β  Contact: topeuph@gmail.com

Feedback & conversations: Arthur Brock (Holochain co-founder), Paul D'Aoust (Holochain Foundation), Joel Marcey (Rust Foundation)

ValiChord's code was written with significant AI-assistant help (Anthropic Claude) under human direction and review; the protocol design, architecture, and governance framework are the author's own intellectual work.

License: ValiChord is open source under the Apache License 2.0. You are free to use, modify, and distribute this software, including in commercial products, provided you retain the copyright notice and license text.