Health And Repair Recipes
The operator CLI provides diagnostics before mutation. Use these commands to understand node health and generate safe next steps.
Basic Doctor
npm run noos -- doctorChecks:
.envloading from the current directory- effective config sources
- operator token presence
DATABASE_URLpresence- TLS client configuration
- node API connectivity
- Go toolchain availability
Deep Doctor
npm run noos -- doctor --deep --jsonAdds operator observability diagnostics:
- node overview and health
- active incidents
- consensus and runtime membership
- HashiCorp Raft sidecar status
- peers
- payload availability
- storage
- sync status
Fix Plan
npm run noos -- doctor --fix-plan --jsonReturns fixPlan entries such as:
{
"issue": "membership_mismatch",
"recommendedCommand": "noos governance operator-membership plan --json",
"reason": "Membership reconciliation should be reviewed before runtime or trusted-peer changes."
}The fix plan is advisory. It does not mutate node state.
Raft Sidecar Checks
For HashiCorp Raft deployments:
npm run noos -- raft-go status --json
npm run noos -- raft-go health --json
npm run noos -- raft-go doctor --jsonraft-go status shows sidecar process and Raft state from observability. raft-go health returns a compact verdict. raft-go doctor filters diagnostics to sidecar, health, and membership issues.
Sidecar Restart Guidance
The current node API reports sidecar supervision status but does not expose a direct force-restart operation. The CLI therefore refuses actual lifecycle mutation and provides a manual plan:
npm run noos -- raft-go restart --dry-runUse your service manager or restart the NOOSChain node process when a forced sidecar restart is required. The built-in supervisor will restart an unhealthy sidecar automatically when configured with GO_RAFT_AUTO_RESTART=true.