summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2026-03-27Bump version to 1.1.01.1.0ds-simPaul Buetow
2026-03-27Test VSMain main startup entrypointPaul Buetow
2026-03-27Include VSMain test in default suitePaul Buetow
2026-03-27Fix CLI replay startup on EDTPaul Buetow
2026-03-27Strengthen replay runtime task boundary testPaul Buetow
2026-03-27Narrow replay task visibility fixPaul Buetow
2026-03-27Fix replay event visibility for loaded raft simulationPaul Buetow
2026-03-27Strengthen replay schedule regression checksPaul Buetow
2026-03-27Extend raft replay with recover and later crashPaul Buetow
2026-03-27Fix GUI loader to restore serialized prefsPaul Buetow
2026-03-27Extend Raft replay to 60 secondsPaul Buetow
2026-03-27Clarify Raft leader election logsPaul Buetow
2026-03-27Refresh and auto-start loaded startup simulationsPaul Buetow
2026-03-27sr: fix Raft replay leader electionPaul Buetow
2026-03-27Auto-open CLI simulation files on startupPaul Buetow
2026-03-27sr: retune Raft replay for faster reelectionPaul Buetow
2026-03-27Fix detached Raft client initializationPaul Buetow
2026-03-27Harden formatter wrapper for task 1d9a1522-7f86-4c43-a004-1b906e2a49a3Paul Buetow
2026-03-27Format Raft files for task 1d9a1522-7f86-4c43-a004-1b906e2a49a3Paul Buetow
2026-03-27Restore formatter workflow scriptPaul Buetow
2026-03-27Implement Raft heartbeat dispatch c7885f70-033c-42e2-b831-50c6d3cb315aPaul Buetow
2026-03-27Fix same-term Raft append regression b85586a4-4eb9-4686-93c7-0ab14173baa5Paul Buetow
2026-03-27Fix final Raft append review issues b85586a4-4eb9-4686-93c7-0ab14173baa5Paul Buetow
2026-03-27Fix Raft append replication review issues b85586a4-4eb9-4686-93c7-0ab14173baa5Paul Buetow
2026-03-26Implement Raft append replication b85586a4-4eb9-4686-93c7-0ab14173baa5Paul Buetow
2026-03-26Fix Raft vote review findings for 04c78b3c-2267-495b-9aca-84b544a1882fPaul Buetow
2026-03-26Implement Raft vote handling for 04c78b3c-2267-495b-9aca-84b544a1882fPaul Buetow
2026-03-26Fix Raft jitter deadline election guard (0bac83d3-1322-4940-a9ee-58eb1e0d6245)Paul Buetow
2026-03-26Add Raft election guard negative test (0bac83d3-1322-4940-a9ee-58eb1e0d6245)Paul Buetow
2026-03-26Fix Raft follower timeout re-arming tests (0bac83d3-1322-4940-a9ee-58eb1e0d6245)Paul Buetow
2026-03-26Implement Raft election timeout scheduling ↵Paul Buetow
(0bac83d3-1322-4940-a9ee-58eb1e0d6245)
2026-03-26Implement Raft leader heartbeats (eea78512-6817-44f0-849c-52f5003b0111)Paul Buetow
2026-03-26Fix Java 26 Mockito test runtime for bc61c489-f41b-473b-8c9b-91959ad958f7Paul Buetow
2026-03-26Add initial Raft protocol skeleton for bc61c489-f41b-473b-8c9b-91959ad958f7Paul Buetow
2026-03-26Release version 1.0.11.0.1Paul Buetow
Amp-Thread-ID: https://ampcode.com/threads/T-019d2915-3f8e-7747-9223-8685d73bad67 Co-authored-by: Amp <amp@ampcode.com>
2025-06-27Update README.mdPaul Bütow
2025-06-27Update README.mdPaul Bütow
2025-06-22fix some minor things in the docsPaul Buetow
2025-06-22Add screenshot and documentation index to READMEPaul Buetow
- Added screenshot2.png to show DS-Sim's visual interface - Added prominent link to documentation index (docs/index.md) - Updated documentation section with correct lowercase filenames - Updated protocol list to remove Raft reference - Improved documentation section with emoji and clearer structure Users can now immediately see what DS-Sim looks like and easily navigate to the complete documentation. šŸ¤– Generated with Claude Code https://claude.ai/code Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-22Update and organize documentationPaul Buetow
- Renamed all uppercase markdown files to lowercase for consistency - ARCHITECTURE.md -> architecture.md - DEVELOPER_GUIDE.md -> developer-guide.md - TIMESTAMP_EVENTS_GUIDE.md -> timestamp-events-guide.md - SERIALIZATION_NOTES.txt -> serialization-notes.txt - Removed all Raft references from documentation - Updated build-fixes-summary.md - Updated testing-guide.md - Updated test-infrastructure.md - Updated simulation-builder-framework.md - Created index.md for easy documentation navigation - Organized docs by category (Architecture, Testing, GUI Decoupling, etc.) - Added quick links for different user types - Included documentation standards and contribution guidelines All documentation is now consistent and up-to-date with the current codebase. šŸ¤– Generated with Claude Code https://claude.ai/code Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-22Remove all Raft protocol codePaul Buetow
Removed all Raft-related code as it was not working properly: - Removed VSRaftProtocol.java implementation - Removed all Raft test files - Removed Raft example/demo files - Removed Raft documentation - Removed Raft simulation files (.dat) - Removed Raft scripts - Updated VSRegisteredEvents to remove Raft registration - Updated SimulationBuilder to remove RAFT constant - Updated SimulationFactory to remove Raft methods - Updated SimulationBuilderTest to remove Raft tests - Updated pom.xml to remove Raft test configurations The protocol had issues with leader election not completing in GUI mode. šŸ¤– Generated with Claude Code https://claude.ai/code Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-22Debug Raft protocol election issuesPaul Buetow
- Added message filtering for unicast messages (receiverNum check) - Added debug logging for election process - Fixed onServerSchedule to reschedule if election timeout not reached - Added logging for vote requests and responses The Raft protocol is sending messages but leader election is not completing. This appears to be a timing or message delivery issue that needs further investigation. šŸ¤– Generated with Claude Code https://claude.ai/code Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-22Fix message delivery in headless test environmentPaul Buetow
- Fixed HeadlessSimulationEngine to use correct task manager from receiving process - Reduced message delays for testing (10-50ms instead of 500-2000ms) - Fixed process ID method call (getProcessID not getProcessId) - Improved message delivery scheduling to ensure tasks go to the right task manager This resolves message delivery issues where messages were sent but not received. BasicMulticast test now passes, but 12 protocol tests still failing. šŸ¤– Generated with Claude Code https://claude.ai/code Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-21add screenshotsPaul Buetow
2025-06-21Move test scripts to scripts/ directory and fix simulation completionPaul Buetow
- Moved test-protocols.sh, test-quick.sh, test-verbose.sh to scripts/ - Updated references in README.md and docs/testing-guide.md - Fixed HeadlessSimulationRunner to properly run simulations to completion - Fixed message delivery timing (now respects 500-2000ms delays) - Added proper process time synchronization - Fixed HeadlessProtocolRunner to exit cleanly šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-21Improve verbose logging for protocol testsPaul Buetow
- Enable real-time log output during simulation execution - Fix HeadlessProtocolRunner to properly show logs as they happen - Update LogCapture to format timestamps clearly - Add test-verbose.sh script for demonstrating logging - Remove duplicate log printing in verbose mode Now when running tests with -Dds.sim.verbose=true or option 3 in test-protocols.sh, users can see protocol actions as they occur. šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-21Fix null in VSProtocolEvent shortname during deserializationPaul Buetow
- Handle case where createShortname is called before fields are initialized - Only print eventShortname in debug output when it's not null - Return saved shortname or default when protocol fields aren't ready This eliminates the 'eventShortname: null Server deactivated' messages in test output. šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-21Fix task manager warning in HeadlessSimulationRunnerPaul Buetow
Remove incorrect attempt to copy 'localTasks' field which doesn't exist in VSTaskManager. Local tasks are actually stored in each VSInternalProcess, not in the task manager. The engine already has references to the processes which contain their tasks. šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-21Complete GUI decoupling implementation for headless testingPaul Buetow
- Implement MessageHandler pattern to decouple message sending from visualization - Add HeadlessLoader to load simulations without GUI components - Create HeadlessProtocolRunner for clean protocol test execution - Update VSInternalProcess to use MessageHandler for message routing - Add null checks in VSSimulator for headless mode compatibility - Update VSSimulatorVisualization paint() to check for headless mode - Remove obsolete test scripts and documentation - Update test-protocols.sh to remove GUI error suppression options - Consolidate testing documentation in docs/testing-guide.md All protocol tests now run cleanly in headless mode without GUI errors, enabling proper CI/CD integration and automated testing. šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-21Implement headless testing framework for DS-Sim protocol simulationsPaul Buetow
- Created HeadlessSimulationRunner that loads and runs simulations without GUI - Implemented LogCapture to intercept and store all simulation logs - Added ProtocolVerifier for flexible pattern-based log verification - Created test runners: standard, with logs, and clean (filters GUI errors) - Implemented tests for all non-Raft protocols - Added DummySimulatorFrame to satisfy GUI dependencies during loading - Created CleanHeadlessRunner that filters GUI-related errors from output - Updated run-tests.sh script with quiet mode option - Documented the framework architecture and usage The framework successfully runs protocol tests and verifies behavior through log analysis. GUI errors occur internally due to tight coupling in DS-Sim but are filtered in quiet mode for clean output. šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>