- Add networks.js with NetworkGenesis, NetworkRegistry, and MultiNetworkManager
- Support for public, private (invite-only), and consortium networks
- Each network has its own genesis block, QDAG ledger, and peer registry
- Network IDs derived from genesis hash for tamper-evident identity
- Invite code generation for private networks with base64url encoding
New CLI options:
--networks List all known networks
--discover Discover available networks
--create-network Create a new network with custom name/type
--network-type Set network type (public/private/consortium)
--switch Switch active network for contributions
--invite Provide invite code for private networks
Security features:
- Network isolation with separate storage per network
- Cryptographic network identity from genesis hash
- Invite codes for access control on private networks
- Ed25519 signatures for network announcements
Well-known networks:
- mainnet: Primary public compute network
- testnet: Testing and development network
- Add network.js with peer discovery, QDAG contribution ledger, and
contribution verification protocol
- Add join.html for browser-based network joining with Web Crypto API
- Update join.js with NetworkManager integration for QDAG recording
- Add --peers and --network commands for network status viewing
- Update package.json with new files and scripts
The QDAG (Quantum DAG) ledger provides:
- Contribution recording with parent selection for DAG structure
- Weight-based confirmation (3 confirmations for finality)
- Peer-to-peer synchronization support (simulated in local mode)
- Contributor statistics and network-wide metrics
The browser join page provides:
- WASM-based Pi-Key identity generation
- PBKDF2 + AES-256-GCM encrypted identity backup/restore
- Real-time contribution tracking and credit display
- localStorage persistence for cross-session identity
- Implement PersistentIdentity class for months/years persistence
- Store identities in ~/.ruvector/identities with encrypted backup
- Track contribution history in ~/.ruvector/contributions
- Add --list command to show all stored identities
- Add --history command to show contribution milestones
- Auto-restore identities across sessions
- Track "return after absence" milestones (>30 days)
- Session tracking with timestamps
- Add multi-contributor-test.js for network simulation
- All contributions preserved indefinitely
- Add join.js CLI for joining EdgeNet with public key identity
- Support generating new Pi-Key identities with Ed25519 signing
- Enable encrypted identity export/import (Argon2id + AES-256-GCM)
- Add multi-contributor demonstration and cross-verification
- Update main CLI to include join command
- Fix test file syntax errors and assertion bounds
- All 186 Rust tests pass, WASM module fully functional
- Build dual WASM targets (web + nodejs) for universal compatibility
- Add Node.js polyfills for web APIs (crypto, performance, window, document)
- Create universal entry point with auto-detection of environment
- Update CLI with comprehensive benchmark, demo, and info commands
- Fix ESM/CJS compatibility with .cjs extension for Node.js module
- Package includes both browser and Node.js WASM binaries
Published to npm as @ruvector/edge-net v0.1.1
Package: 885.4 kB compressed, 3.2 MB unpacked
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>