nu-cli/CHANGELOG.md
Mukan Erkin b4b0f5d0b5 feat(genesis): genesis init/info commands
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-25 07:47:16 +03:00

66 lines
2.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Changelog — nu-cli
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.6.0] — 2026-04-25
### Added
- `nu genesis init --chain-id <id> --dev-wallet <addr> --burn-wallet <addr>`: genesis.json template üretir
- `nu genesis info`: çalışan node'dan genesis root node'u gösterir
### Changed
- `genesis init` çıktısı TOML'dan JSON'a geçti; nu-node `genesis.json` formatıyla uyumlu
## [0.5.0] — 2026-04-24
### Added
- `nu nft transfer --nft-id <id> --to <addr>`: imzalı NftTransfer tx gönderir
- `nu nft claim --nft-ids 0,1,11,115`: virgülle ayrılmış lineage path ile CollectionClaim tx gönderir
## [0.4.0] — 2026-04-24
### Added
- `nu wallet send --to <addr> --amount <shell>`: k256 imzalı TokenTransfer tx gönderir
- `nu story submit`: NodeSubmit tx; UUID temp_id üretir, entry_fee=25_000 Shell
- `nu story register`: VoteRegister tx; stake_lock=10_000 Shell
- `nu story vote --node-id <id> --approve <bool>`: VoteCast tx gönderir
- `nu node stake / unstake`: StakeOp tx gönderir
- `nu node register --stake <amount>`: ValidatorRegister tx gönderir
- Tüm tx-gönderme komutlarında: keystore'dan key yükle → nonce'ı RPC'den al → SHA-256(payload) imzala → nu_sendRawTx
## [0.3.0] — 2026-04-24
### Added
- `src/keystore.rs` — AES-256-GCM + Argon2id şifreleme; `save_encrypted` / `load_encrypted` / `prompt_password`
- `nu wallet new`: şifre ister (confirm), private key şifreli JSON olarak `~/.nu/keystore/<label>.key`'e yazar
- `nu wallet address`: şifre ister, decrypt edip compressed public key basar
### Changed
- Keystore formatı plaintext hex'ten JSON (`argon2_hash` + `nonce_hex` + `ciphertext_hex`) formatına geçti
- Eski `.key` dosyaları yeni format ile uyumsuz — `wallet new` ile yeniden oluşturulmalı
## [0.2.0] — 2026-04-24
### Added
- `nu node block <height>` — calls `nu_getBlock`, prints null if not found
- `nu node account <address>` — calls `nu_getAccount`, displays balance in Shell and NU
- `nu story show/node/list/pending` — wired to RPC (`nu_getStory`, `nu_getNode`, `nu_listStories`, `nu_listPendingVotes`)
- `clap env` feature — `NU_RPC_URL` env variable support
### Changed
- `rpc::Client` params changed from object to **positional array** — matches nu-node sözleşmesi
- `rpc::Client::new` auto-appends `/rpc` path suffix
## [0.1.0] — 2026-04-24
### Added
- `nu wallet new [--label <name>]` — generates secp256k1 keypair, stores private key
as hex in `~/.nu/keystore/<label>.key` (plaintext in Faz 0; encrypted in Faz 1)
- `nu wallet list` — lists all keys in `~/.nu/keystore/`
- clap CLI scaffold with subcommand structure (`wallet`, `node`, `story` stubs)
- `src/commands/wallet.rs` — keygen via k256 crate