FluxOS v7.0.3
This release addresses two critical race conditions affecting network state synchronization and application removal processes.
Summary
Changes: +231 additions, -110 deletions across 8 filesMerged PRs: #1586, #1587
🐛 Bug Fixes
Network State Race Condition (#1586)
Problem: Race condition in block update fetching caused nodes to make redundant daemon calls and potentially process stale state information.
Solution:
Suppress block updates if data was fetched within the last 30 seconds
Move canFetch check before queued check to prevent redundant requests
Set last fetch timestamp immediately when request starts
Round remaining seconds for clearer logging
Remove obsolete code paths
Files Changed:
ZelBack/src/services/networkStateService.js
ZelBack/src/services/utils/networkStateManager.js
tests/unit/networkStateService.test.js
tests/unit/networkStateManager.test.js
Impact: Reduces unnecessary daemon calls, improves network state consistency, and prevents race conditions during block updates.
App Approval Race Condition (#1587)
Problem: Race condition during force app removal operations caused incorrect app approvals to be processed, leading to apps being removed when they shouldn't be.
Solution:
Fixed app approval logic in forceAppRemovals function
Ensured proper sequencing of approval checks during forced removal operations
Files Changed:
App management service logic
Impact: Prevents incorrect application removals during forced cleanup operations.
Testing
✅ Network state tests updated and passing
✅ Manual testing performed to verify fix behavior
✅ All existing unit tests passing
Upgrade Priority
Medium - Recommended for all nodes to improve stability and reduce unnecessary daemon calls. Critical for nodes experiencing issues with app removals or network state synchronization.