Tweet 1/9:
Two weeks ago we launched a "Layer 1 in Rust." Then went silent for 13 days. Both things were correct. And both were the wrong framing. Today: what we actually built, and what it's actually for ↓
Show HN today: a DAG-BFT consensus in Rust with three documented deviations from textbook Bullshark/Narwhal.
About a year of work on a V0.1 testnet that kept stalling under load.
Apache 2.0:
https://t.co/kVayVpKJ9u
Want to dig in?
Long-form writeup:
https://t.co/vmHR8VzmoC
Come in HN to support us : https://t.co/A9kDyFvJ7V
Open contribution work (TimeOracle for non-datacentre validators):
https://t.co/Dxybjuqomg
Answering questions in replies.
Show HN today: a DAG-BFT consensus in Rust with three documented deviations from textbook Bullshark/Narwhal.
About a year of work on a V0.1 testnet that kept stalling under load.
Apache 2.0:
https://t.co/kVayVpKJ9u
What I'm not claiming:
— Not a Bullshark replacement
— Not production-ready (observation-only by default)
— Single-author preprint v0.1
— Modest testbed (4 VMs, 15 LNs)
Honest limitations in §8.5 and §9 of the paper. Read them before judging.
⚡May 11, 15:00 UTC - The Era of Modular Interoperability AMA!
Speakers:
- Andrea Cadamuro (CEO @Savitri_Net)
- Daniil Kozin (CEO @EasyMM_official)
🤔 Exploring modular L3 infrastructure, cross-chain security, and the unification of fragmented liquidity in the 2026 Web3 ecosystem.
Watch on YouTube: https://t.co/7H0aHkd2Pu
X (Twitter): Link will be posted at start-time.
⚡May 11, 15:00 UTC - The Era of Modular Interoperability AMA!
Speakers:
- Andrea Cadamuro (CEO @Savitri_Net)
- Daniil Kozin (CEO @EasyMM_official)
🤔 Exploring modular L3 infrastructure, cross-chain security, and the unification of fragmented liquidity in the 2026 Web3 ecosystem.
Watch on YouTube: https://t.co/7H0aHkd2Pu
X (Twitter): Link will be posted at start-time.
Tweet 8/8:
Next episode: the math behind PoU.
Why EMA, why integer arithmetic, and why the same score weights both block proposers AND FL gradient contributions.
Code: https://t.co/PBeyRKw5qe
#FederatedLearning#rustlang#ConsensusResearch
Tweet 1/8:
Why we built Savitri from scratch instead of forking.
Originally: to avoid technical debt and assumption inheritance.
Today: also because no fork could have given us FL at the consensus layer.
[Ep. 02 — Why We Built It This Way]
Thread ↓
Tweet 7/8:
Was it the right call?
We'll know with confidence after a year of mainnet.
What we know now: the codebase has no hidden forks in the road. Every architectural decision is ours. Every bug is ours to fix.
That's not a brag. That's just accountability.
Tweet 9/9:
Next episode: why we built from scratch instead of forking
(and why a fork couldn't have given us FL at consensus layer).
Code: https://t.co/PBeyRKw5qe
#rustlang#SystemsProgramming
Tweet 1/9:
Why we built Savitri in @rustlang .
Originally: because consensus code has zero margin for error.
Today: also because FL aggregation in Rust is the only thing that
ships at the throughput we need.
Tweet 8/9:
Things that we got from Rust we didn't expect:
→ FFI to Flutter for mobile node (Rust core, Dart UI)
→ FFI to Python for FL framework bridges (TFF/Flower interop)
→ WASM target for in-browser explorer
The same Rust code runs everywhere.