v0.5.1 — inspect_ai demo + Wind-Tunnel scenarios
What's new since v0.5.0
inspect_ai Popularity Demo — second real-data example
valichord_attestation/examples/inspect_ai_popularity_demo/ is a new end-to-end walkthrough of the v1.1 protocol against an inspect_ai .eval log — a different eval harness format (ZIP-based binary, structured per-sample JSON, C/I scorer values) from the lm-evaluation-harness JSONL format used in the GSM8K demo.
Task: popularity — AI personality self-assessment
Model: openai/gpt-4o-mini
Scorer: match (C/I values)
Source: inspect_ai test suite (21 KB, no GPU required)
The parsing layer uses EveryEvalEver's InspectAIAdapter (pinned to commit dec1ae43), not inspect_ai.log.read_eval_log() directly. This is the concrete alignment artefact with the EvalEval Coalition's aggregate schema, referenced by Matt Fisher in PR #1610 and Scott Simmons's inspect_evals#910 proposal for executable evaluation reports.
# No download required — fixture mode (committed bundle.json):
python valichord_attestation/examples/inspect_ai_popularity_demo/challenge_response_demo.py
# Full reproduction with the real .eval log:
bash valichord_attestation/examples/inspect_ai_popularity_demo/download_eval.sh
python valichord_attestation/examples/inspect_ai_popularity_demo/build_bundle.py --eval-path ./popularity.eval
python valichord_attestation/examples/inspect_ai_popularity_demo/challenge_response_demo.py| File | Purpose |
|---|---|
download_eval.sh |
Downloads popularity.eval (21 KB) from inspect_ai's public test suite |
build_bundle.py |
EEE-based parsing path + --fixture mode (committed bundle.json) |
challenge_response_demo.py |
k=20 challenge-response with tamper detection |
bundle.json |
Committed bundle (50-sample simulated fixture, random.Random(42), 80% accuracy) |
Honest EEE trade-offs documented in README.md: transitive dependencies (duckdb, seaborn, huggingface-hub<1.0.0 conflict), file-system side-effect (temporary JSONL), and Merkle root change (56c91950… → 227b5f8d… because EEE emits sample_id as strings vs integers).
Wind-Tunnel performance scenarios
valichord/wind-tunnel/ adds three performance test scenarios for the Holochain protocol layer (separate Cargo workspace, requires a pre-built .happ):
| Scenario | Description |
|---|---|
single_researcher_single_validator |
Baseline: one commit, one reveal — cold-start timing |
three_validators_sequential |
Three validators commit and reveal sequentially — typical small-panel run |
concurrent_commit_burst |
Ten agents commit simultaneously — DHT write contention under load |
VALICHORD_HAPP_PATH=path/to/valichord.happ cargo test --release -p wind_tunnelIssues backlog
valichord_issues_backlog.md — 20 GitHub issue drafts across three sections: Protocol & architecture (8), Integration & extensions (8), and Honourable mentions (4). Ready to stage and open on GitHub.
Running the examples
pip install -e "valichord_attestation[dev]"
pytest valichord_attestation/tests/ # 142 tests, 100% line coverage
# GSM8K demo (Mistral-7B, no GPU required):
python valichord_attestation/examples/mistral_7b_gsm8k_demo/challenge_response_demo.py
# inspect_ai popularity demo (GPT-4o-mini, no GPU required):
python valichord_attestation/examples/inspect_ai_popularity_demo/challenge_response_demo.py142 tests, 100% line coverage. Holochain protocol unchanged from v0.5.0.