Open source · Apache-2.0
Code
A locally runnable Rust prototype. Claims, evidence, objections, replications and simulations are signed events in an append-only ledger, and every node projects the same ontology from them.
Run it
You need a recent stable Rust toolchain.
git clone https://github.com/natanatan/Emergent-Epistemic-Ledger.git
cd Emergent-Epistemic-Ledger
cargo test # the full test suite, including a three-node test
cargo run --bin eel -- identity create # a local identity on the development network
cargo run --bin eel -- claim create examples/claim.yaml
cargo run --bin eel -- ontology graph
cargo run --bin eel-node -- start # REST API on http://127.0.0.1:7878examples/walkthrough.sh runs every success criterion of the specification through the CLI: two researchers, a claim, an objection, a revision, competing branches, domain-limited validation, a research request, a simulation replayed by two validators, independent replications, and a canonicalization that needs two validators.
What is where
| Crate | Contents |
|---|---|
eel-core | Typed ids, canonical serialization, every protocol object and event |
eel-crypto | Ed25519 identities, event signing and verification, local keystore |
eel-ontology | The state projector: every validation rule and the projected ontology |
eel-ledger | Append-only event log, Merkle trees, blocks, historical and branch reconstruction |
eel-validation | Genesis validators, domain authority, admission and reputation, canonicalization rules |
eel-simulation | Deterministic relational-graph simulator and replay verification |
eel-xchange | Research-request structures and outcome-independent credit (no currency) |
eel-storage | SQLite persistence, append-only at the database level |
eel-api | REST API and the eel-node binary |
eel-cli | The eel command-line client |
Documentation
- Protocol: events, signatures and how the ontology is projected
- Decisions: every place the specification left open, and the choice made
- Threat model
- Roadmap
- Contributing
Prototype only. The development network's validator keys are public. Do not use EEL for anything that needs security.