- Rust 94.3%
- Python 5.2%
- Just 0.3%
- Nix 0.2%
|
Some checks failed
Federation foundations / foundations (push) Has been cancelled
Share a bounded connection cache across transport clones and serialize dialing per peer. Reconnect after peer closure, and release cancelled request handlers without closing other RPC streams or replaying requests. Stream reference Nix and Cargo output to the console and build log. Add a Just resume command and print recovery instructions after interruption or failure. Cover connection reuse, reconnection, offline-peer isolation, cancellation, and live build output with regression tests. Document both workflows. |
||
|---|---|---|
| .github/workflows | ||
| crates | ||
| docs | ||
| misc/federation | ||
| .gitignore | ||
| .typos.toml | ||
| AGENTS.md | ||
| Cargo.lock | ||
| Cargo.toml | ||
| clippy.toml | ||
| CODE_STYLE.md | ||
| DEVELOPMENT.md | ||
| flake.lock | ||
| flake.nix | ||
| justfile | ||
| LICENSE-APACHE | ||
| LICENSE-MIT | ||
| LICENSE.md | ||
| README.md | ||
| rust-toolchain.toml | ||
| rustfmt.toml | ||
Aontas
Warning
Highly experimental. Do not use with real funds. Aontas is intended for development and Bitcoin regtest testing only.
An independent Rust guardian that interoperates with unmodified Fedimint guardians. The initial profile is a fresh four-guardian Bitcoin regtest federation with Mint v2, Wallet v2, SQLite storage, and Iroh networking. TCP/mTLS and WebSocket remain available for the legacy transport profile.
Regtest and tmux demo
From this repository, open Terminal 1:
nix develop path:.#federation
just federation-reference
# Replace the path with the artifacts.json printed by the reference build.
just federation-start /data/rust/tmp/<reference-build>/artifacts.json
Reuse an existing verified reference manifest to skip the reference build. Wait for Federation ready and copy the printed state directory. Keep Terminal 1 open.
Open Terminal 2 at this repository root:
nix develop path:.#federation
just federation-dashboard <state-directory>
The dashboard provides four guardian logs, Alice and Bob wallets, and Bitcoin mining controls. Follow the complete walkthrough for deposits, transfers, withdrawals, shutdown, and resuming existing balances.
Workspace
| Crate | Responsibility |
|---|---|
aontas-federation-core |
Protocol types, codecs and cryptography |
aontas-federation-consensus |
Independent agreement state transitions |
aontas-federation |
Guardian lifecycle, payment execution and interchangeable transports |
aontas-federation-sqlite |
Dedicated guardian storage and schema |
aontas-guardiand |
Configuration, composition and daemon executable |
Crates and the daemon use the aontas- prefix; test environment variables use
AONTAS_. Create a fresh demo after the rename; old CDK state is unsupported.
This workspace has no dependency on Cashu or CDK implementation crates,
and no Fedimint or Aleph implementation dependencies. Reference binaries are built
externally as interoperability test oracles.
Use nix develop and just federation-check for local verification. See
development, transport design,
compatibility and provenance,
extraction history, and
Aontas naming and fresh demo state.
Licensed under Apache-2.0 OR MIT; original notices are retained.