Skip to content
This repository was archived by the owner on Jan 27, 2026. It is now read-only.

Fix: node recovery edge case#174

Merged
JannikSt merged 3 commits into
developfrom
fix/node-recovery-edge-case
Mar 26, 2025
Merged

Fix: node recovery edge case#174
JannikSt merged 3 commits into
developfrom
fix/node-recovery-edge-case

Conversation

@JannikSt
Copy link
Copy Markdown
Member

No description provided.

@JannikSt JannikSt requested a review from Copilot March 26, 2025 20:28
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR fixes a node recovery edge case by updating the logic used for synchronizing node status and ejection. It adds a new helper function (is_node_in_pool) with separate implementations for testing and production and updates the conditions used to set node status upon receiving a heartbeat.

Comments suppressed due to low confidence (2)

orchestrator/src/node/status_update.rs:60

  • The #[cfg(not(test))] branch in is_node_in_pool is not directly covered by tests. Consider adding tests for scenarios where the node is not in the pool to ensure production behavior is verified.
async fn is_node_in_pool(&self, node: &OrchestratorNode) -> bool {

orchestrator/src/node/status_update.rs:609

  • The updated test assertion reflects a change in recovery behavior. Ensure that additional tests cover all relevant scenarios regarding node status transitions, particularly for nodes transitioning from Dead to Healthy.
assert_eq!(node.status, NodeStatus::Healthy);

@JannikSt JannikSt merged commit f66444e into develop Mar 26, 2025
JannikSt added a commit that referenced this pull request Apr 12, 2025
* fix edge case in node status updater where node is active on chain and sends heartbeats, but dead / discovered state locally. This caused the orchestrator to send invites (which fail on worker side)
@JannikSt JannikSt deleted the fix/node-recovery-edge-case branch June 25, 2025 13:00
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants