# Changelog — nu-p2p All notable changes to this project will be documented in this file. Format: [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) --- ## [Unreleased] ## [0.2.0] — 2026-04-24 ### Added - `src/node.rs` — `P2pNode::start()`: libp2p swarm oluşturur, TCP + Noise + Yamux ile dinler, bootstrap peer'lara dial eder - `P2pCommand` enum: `Publish { topic, message }` ve `Shutdown` — `mpsc::Receiver` üzerinden dışarıdan kontrol - Gossipsub topic subscription: `nu/blocks/1`, `nu/txs/1`, `nu/votes/1`, `nu/validators/1` - Bağlantı event'leri: `ConnectionEstablished/Closed` → `PeerRegistry` güncellenir - Gelen gossip mesajları `NetworkMessage` olarak deserialize edilip loglanır - `src/main.rs` — `--listen` ve `--bootstrap` CLI argümanları, `clap` derive ### Changed - `Cargo.toml`: `libp2p macros` feature eklendi (`NetworkBehaviour` derive için), `tracing` `"1"` → `"0.1"` düzeltildi ## [0.1.0] — 2026-04-24 ### Added - `src/behaviour.rs` — `NuBehaviour` compositing Gossipsub + Kademlia DHT + Identify + Ping via `#[derive(NetworkBehaviour)]` - `src/messages.rs` — `NetworkMessage` enum: `BlockAnnounce`, `BlockRequest`, `BlockResponse`, `TxGossip`, `PeerExchange`, `ValidatorHeartbeat`, `VoteAnnounce` - Gossip topics: `nu/blocks/1`, `nu/txs/1`, `nu/votes/1`, `nu/validators/1` - `src/node.rs` — `P2pNode` struct with `start()` stub; wired in Faz 1 - libp2p 0.54 dependency with Gossipsub, Kademlia, Identify, Ping