nu-p2p/CHANGELOG.md
Mukan Erkin ba51b72ed2 feat(p2p): add HTTP publish API for nu-node integration
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 16:49:26 +03:00

1.9 KiB
Raw Blame History

Changelog — nu-p2p

All notable changes to this project will be documented in this file. Format: Keep a Changelog


[Unreleased]

[0.3.0] — 2026-04-24

Added

  • --api-addr CLI argümanı (varsayılan: 127.0.0.1:30334) — nu-node'un mesaj yayınlayabileceği yerel HTTP endpoint
  • POST /publish endpoint (axum) — NetworkMessage JSON alır, gossipsub'a P2pCommand::Publish olarak iletir; nu-node ↔ nu-p2p entegrasyonu tamamlandı
  • NetworkMessage::topic() — her varyant için doğru gossip topic'i döner (messages.rs)
  • axum = "0.7" bağımlılığı eklendi

[0.2.0] — 2026-04-24

Added

  • src/node.rsP2pNode::start(): libp2p swarm oluşturur, TCP + Noise + Yamux ile dinler, bootstrap peer'lara dial eder
  • P2pCommand enum: Publish { topic, message } ve Shutdownmpsc::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/ClosedPeerRegistry 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.rsNuBehaviour compositing Gossipsub + Kademlia DHT + Identify + Ping via #[derive(NetworkBehaviour)]
  • src/messages.rsNetworkMessage enum: BlockAnnounce, BlockRequest, BlockResponse, TxGossip, PeerExchange, ValidatorHeartbeat, VoteAnnounce
  • Gossip topics: nu/blocks/1, nu/txs/1, nu/votes/1, nu/validators/1
  • src/node.rsP2pNode struct with start() stub; wired in Faz 1
  • libp2p 0.54 dependency with Gossipsub, Kademlia, Identify, Ping