CRITICAL fixes:
- Stop passing mint URLs as relay URLs in initNDK (protocol mismatch)
- Add unit tests for buildTransactionHistory (dedup, fallback, sort)
HIGH fixes:
- Restore .claude entry in .gitignore
- Add warning logging for skipped malformed proof tags in nutzap parsing
- Add error handling + 30s timeout to NDK initialization
- Add unit tests for formatCSV and escapeField
- Export escapeField for testability
Also: add test script to package.json, include test/ in tsconfig
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- CLI tool to export NIP-60 (Cashu Wallet) and NIP-61 (Nutzap) transaction history as CSV
- Fetches and decrypts kind:17375 wallet, kind:7375 token, kind:7376 history, kind:9321 nutzap, and kind:7377 redemption events
- Accepts NOSTR_SECRET_KEY env var and optional --mints flag
- Outputs CSV to stdout with columns: date,type,amount,unit,mint,token_id,memo
- Progress and errors go to stderr