Repository navigation
Releases: shantanu-1607/Raftra
Releases · shantanu-1607/Raftra
Release list
v0.2.2
Changelog
- 3ad1ddd docs: add design spec for Raftra landing page
- a69547e docs: add note about python http server listen backlog limitation on macOS to AGENTS.md
- 188b9f5 docs: update countdown location and test metrics in landing page design spec
- 2668ca0 feat: add GitHub Pages deployment workflow and landing page documentation
- 9a09956 feat: add OS installation tabs and platform detection for macOS, Linux, and Windows
- 4ac2bac feat: add PowerShell installation script for Windows CLI setup
- e46e0ef feat: add background visualization, live polling, and simulator view modules for raftra site
- a615588 feat: add interactive write path diagram animation and styles
- d558b6d feat: add landing page implementation plan and site code with tests
- 8c2f7f5 feat: add main entry point script for site functionality and component wiring
- f34cec8 feat: add terminal UI utilities and platform-specific virtual terminal support for CLI
- 261bdf1 feat: add update-config script to sync deployment scripts and systemd units across nodes
- 7822011 feat: update CLI output formatting, documentation, and add Windows installer script
- e74ccac feat: update landing page UI, styles, and documentation for live cluster visualization and GitHub integration
- d5be819 fix: update architecture diagram paths and add min-width to install panel children
- eadd112 refactor: extract UI components and rendering logic from main.go to ui.go
- 943a08d refactor: remove redundant countdown displays and update hero layout and timer text
- 6b4fb00 refactor: update chaos script and timer to prevent multi-node cascading failures using term verification
- 8f24e2c refactor: update simulation view layout, log formatting, and background visuals
- e6a97af refactor: update site test command to explicitly target .mjs test files and require Node >= 22
- 7448e70 test: add synchronization wait for all nodes to catch up in replication test
v0.2.1
Changelog
- 54b05cf chore: add ufw firewall rules and systemd security hardening to lightsail deployment
- adc3571 docs: document pre-vote, no-op log entries, and updated chaos scenarios in documentation
- 9874f23 docs: update benchmark results, failover times, and test counts in documentation
- 12a8ff4 feat: add AWS Lightsail deployment scripts, systemd services, and documentation
- 352628a feat: add gRPC transport implementation and fix election timer race conditions
- 4e1a82a feat: append no-op entry on election win per Raft §8 and add chaos scenarios for restarts and network partitions
- 85132f7 feat: implement Raft pre-vote phase to prevent partitioned nodes from disrupting stable leaders
- 07c6282 fix: include term details in leader disruption test failure message
- 534c1cb fix: prevent stale election timer fires and leader election triggers in raft implementation
- 99046b4 test: update expected log indices and commit counts to account for leader no-op entry
v0.2.0
Changelog
- cde35be Merge pull request #1 from shantanu-1607/phase1A
- b8d7e16 Merge pull request #10 from shantanu-1607/phase3D
- 6021e66 Merge pull request #11 from shantanu-1607/phase4A
- 4eb0852 Merge pull request #12 from shantanu-1607/phase4B
- 7eea2e6 Merge pull request #13 from shantanu-1607/phase5
- 0b79206 Merge pull request #14 from shantanu-1607/phase6
- c66b074 Merge pull request #15 from shantanu-1607/phase6
- f42d623 Merge pull request #16 from shantanu-1607/phase7
- 0b87c1f Merge pull request #2 from shantanu-1607/phase1B
- 1909967 Merge pull request #3 from shantanu-1607/phase1C
- f135817 Merge pull request #4 from shantanu-1607/phase2A
- 3e792bd Merge pull request #5 from shantanu-1607/phase2A
- baba825 Merge pull request #6 from shantanu-1607/phase2A
- 1005228 Merge pull request #7 from shantanu-1607/phase3A
- 2948e24 Merge pull request #8 from shantanu-1607/phase3B
- 640aa16 Merge pull request #9 from shantanu-1607/phase3C
- f988aa4 Revise benchmark results in benchmark_results.md
- e136292 added sendHeartbeat function and the logic behind it
- a9927a1 added the handler.go gile which works as a brain
- 189d045 chore:ignore and untrack plan.md qw
- ef6179a docs/added the implementation plan
- a11489b docs: add AI coding agent guidelines and project documentation
- f1546c6 docs: add README and demo walkthrough guide
- 1e613ff docs: add README.md with project overview, architecture, and design details
- 53f87dd docs: add implementation plan for CLI distribution
- 7da97e8 docs: mark steps 4 and 5 as complete in plan
- 6d43af1 docs: update Phase 6 deployment and CLI plan with Docker and compose details
- 7a776c0 docs: update README with detailed architecture, component breakdown, and development roadmap
- db3f2cf docs: update project documentation in README.md
- b3d0ee2 feat: add ChaosNetwork struct for simulating network faults in tests
- f33fd46 feat: add ErrCommitTimeout error for proposal consensus failures
- ea5cb41 feat: add GetEntry method to BboltStore for retrieving log entries by index
- b2f6700 feat: add HTTP REST gateway with peer mapping support to raftra-server
- dd3bb1a feat: add IsBlocked and BlockLink methods to ChaosNetwork for managing network partitions
- d901af9 feat: add Isolate and Reconnect methods to ChaosNetwork
- c2621d0 feat: add LoadVotedFor method to BboltStore
- dc60d16 feat: add Makefile and docker-compose configuration for local deployment
- ae48a2c feat: add MemoryStore implementation and update storage interface documentation
- aabe335 feat: add NewChaosNetwork and RegisterNode methods to chaos network harness
- 3ed260c feat: add Partition and HealAll methods to ChaosNetwork
- 3264463 feat: add Prometheus metrics collection and /metrics endpoint
- b1aa8d4 feat: add Prometheus metrics endpoint to HTTP server
- 4251a30 feat: add Propose, ProposeOnNode, and Crash methods to chaos test harness
- 72fdf54 feat: add RaftNode ID method and implement TestTransport Close
- 8dc26e3 feat: add Restart method to TestCluster to simulate node recovery
- 9c5a55e feat: add SaveVotedFor method to BboltStore for persisting voted candidate ID
- d97ebaa feat: add SetMetrics and KVStoreSize methods to RaftNode
- b770916 feat: add Start and Stop methods to TestCluster for lifecycle management
- ba7bcae feat: add TestCluster struct to chaos test harness
- f441ecc feat: add TestTransport struct and constructor for chaos network adapter
- 2d5a759 feat: add TruncateFrom, LastIndex, LastTerm, and LoadAllEntries methods to MemoryStore
- 8d545ad feat: add bbolt nosync storage option for benchmarking and document performance results
- 07922a5 feat: add bbolt storage backend implementation
- 5983542 feat: add cluster network simulation for replication tests and project agent documentation
- 19a4d3c feat: add data-dir flag for persistent storage initialization
- caa6184 feat: add entry point for raftra server with gRPC transport and node configuration
- f79defe feat: add host flag for configurable server binding and support flexible peer formats
- a735b9c feat: add interactive REPL mode to CLI when run without arguments
- 00b526e feat: add leaderID field to Raft struct to track current leader
- c2bfe0f feat: add metrics field to Raft struct
- 9a77430 feat: add metrics package
- 6e47cf3 feat: add metrics tracking for KV operations in HTTP server
- f638b99 feat: add metrics tracking for RequestVote calls and leader role transitions
- 9499f09 feat: add metrics tracking for node roles, terms, and leader elections
- 9f41211 feat: add metrics tracking to raft replication and command processing
- c1eddc1 feat: add multi-node CLI client support and release automation pipelines
- 27d9426 feat: add multi-stage Dockerfile and .dockerignore for containerized deployment
- 88454e0 feat: add network partition and heal helper methods to TestCluster
- a114460 feat: add pendingCommits map and Get method to RaftNode for thread-safe state retrieval
- d5dc1da feat: add pendingCommits map to track proposal index commit notifications
- fbbc13d feat: add performance benchmark suite, load generator, and failover tests
- b74649b feat: add playground rate-limiting and request validation limits to HTTP transport
- 5cc20e1 feat: add raftra-cli command-line client and update build configuration
- f3d6b3d feat: add rich interactive terminal UI with animated banner, gradients, and REPL mode
- 548aeb3 feat: add thread-safe LeaderID method to RaftNode
- d5a4eb7 feat: add transport layer to RaftNode and implement bounds check for randomized election timeout calculation
- c79b271 feat: add uint64 byte conversion helper functions in bbolt store
- 4e607d6 feat: cap AppendEntries batch size, validate server limits, and enhance rate limiter IPv6 prefix tracking
- 84694f3 feat: create project implementation plan for Raftra distributed key-value store
- 35242b4 feat: define StorageBackend interface for persistent Raft state and log management
- 166844f feat: define core RaftNode structure and state components for consensus implementation
- a1569be feat: implement AppendEntries RPC logic to replicate log entries and handle consistency checks
- bcf3c84 feat: implement AppendEntries method in BboltStore
- abe5d4a feat: implement Apply and Get methods for KVStore state machine operations
- 1b81f35 feat: implement BboltStore storage backend with database and bucket initialization
- bd9c24c feat: implement Command structure and gob-based encoding/decoding methods for log entries
- e4150f1 feat: implement GRPCTransport for Raft peer communication management
- c9e1bd4 feat: implement GetEntriesFrom in BboltStore to retrieve log entries
- 56a5d4f feat: implement HTTP transport server for Raft node communication
- 7110124 feat: implement HandleRequestVote logic for processing candidate vote requests
- 925761d feat: implement NewTestCluster for chaos test harness
- d571fcf feat: implement Prometheus metrics initialization and update helper methods
- c689e49...