Skip to content

Conversation

@scasino983
Copy link
Contributor

Summary

  • update restart determinism tests to use encrypted seed storage format
  • ensure key files stay seedless and seed file is stable across reloads
  • keep runtime/mesh NodeId checks aligned with seed persistence

Testing

  • cargo test -p integration-tests --test test_orchestrator_restart_determinism --message-format short

Relates to #68

@scasino983 scasino983 linked an issue Jan 21, 2026 that may be closed by this pull request
26 tasks
- Install libudev-dev, pkg-config, libssl-dev, libdbus-1-dev
- Add Rust toolchain with clippy component
- Fixes Clippy build failure: libudev-sys dependency missing
Copilot AI review requested due to automatic review settings January 22, 2026 00:52
Copy link
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 updates the orchestrator restart determinism integration tests to align with the new encrypted seed storage format, ensuring NodeId and identity stability across restarts while enforcing that key files remain seedless. It also wires in the necessary dependencies and CI setup (SonarCloud workflow environment) to support these changes.

Changes:

  • Refactored test_orchestrator_restart_determinism helpers to store the master seed in a separate, encrypted JSON record (Argon2 + ChaCha20) instead of in the private key file, and updated reload logic accordingly.
  • Extended restart/seed persistence/DHT consistency tests to verify that the master seed is loaded from the encrypted seed file, the key file no longer contains seed material, and the encrypted seed file remains stable across restarts.
  • Added argon2, base64, and rand dependencies to the integration-tests crate and updated the SonarCloud GitHub Actions workflow to install system dependencies and a Rust toolchain with clippy.

Reviewed changes

Copilot reviewed 3 out of 4 changed files in this pull request and generated no comments.

File Description
tests/integration/test_orchestrator_restart_determinism.rs Introduces encrypted seed storage helpers and adjusts identity reload and determinism tests to operate on a seedless key file plus a stable, encrypted seed file while checking NodeId/DID consistency.
tests/integration/Cargo.toml Adds cryptographic and utility dependencies (argon2, base64, rand) needed by the new encrypted seed test helpers.
Cargo.lock Locks in the new integration-test dependencies (argon2, base64 0.22.1, rand 0.8.5) to concrete versions.
.github/workflows/sonarcloud.yml Ensures the SonarCloud job installs required system libraries and a Rust toolchain (with clippy) so Rust analysis can run reliably.

@sonarqubecloud
Copy link

Quality Gate Failed Quality Gate failed

Failed conditions
1 Security Hotspot

See analysis details on SonarQube Cloud

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[ALPHA-P1] Single node restart test (NodeId stability)

2 participants