test: wait for MN disconnect after in-place ProUpServ migration - #7610
test: wait for MN disconnect after in-place ProUpServ migration#7610PastaPastaPasta wants to merge 1 commit into
Conversation
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
|
✅ Final review complete — no blockers (commit 107171b) |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
WalkthroughThe migration test now generates the update transaction without automatic synchronization. It records peer IDs before block generation and waits for those peers to disconnect after CMNAuth changes. The test then performs the existing reconnect and synchronization steps. Estimated code review effort: 2 (Simple) | ~10 minutes Mergeability Score: ⚪ Minimal · up to This localized test synchronization change is merge-ready after normal checks and review; no actionable merge-blocking risk remains. Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
thepastaclaw
left a comment
There was a problem hiding this comment.
Final validation — Codex/Sol only (Phase 2 disabled)
The exact-head diff correctly suppresses the premature implicit synchronization, waits for all pre-migration peer connections to be replaced, reconnects the migrated masternode, and then synchronizes the network. This matches the established registrar-key-rotation and revocation handling in the same test, and no actionable correctness issues were found.
Source: reviewer backend gpt-5.6-sol; final verifier backend gpt-5.6-sol. openclaw-agent/cliproxy/gpt-5.6-sol was orchestration-only and is not reviewer evidence.
Validated zero-blocker Codex/Sol precheck evidence was promoted to final because Phase 2 (Sonnet/Opus) is temporarily disabled. This is Codex/Sol-only final validation, not Codex + Sonnet/Opus coverage.
Review provenance
- Codex reviewers:
gpt-5.6-sol— general (completed) - Verifier:
gpt-5.6-sol— verifier - Sonnet/Opus: not run (Phase 2 disabled — temporary Codex/Sol-only final)
- Secondary pass: disabled (
temporary_phase2_sonnet_disable)
A v3 update_service re-encodes the operator key, so CMNAuth drops verified connections the same way a key rotation does. Syncing during that window can leave a node with zero peers.
5363852 to
107171b
Compare
thepastaclaw
left a comment
There was a problem hiding this comment.
Final validation — Codex/Sol only (Phase 2 disabled)
At exact head 107171b, the change correctly suppresses implicit synchronization during CMNAuth teardown, waits for the pre-migration peer connections to disappear, reconnects the migrated masternode, and then synchronizes the network. This matches the established handling for operator-key rotation and revocation in the same functional test, and no actionable issues were found.
Source: reviewer backend model gpt-5.6-sol; final verifier backend model gpt-5.6-sol. openclaw-agent/cliproxy/gpt-5.6-sol is orchestration-only and not reviewer evidence.
Validated zero-blocker Codex/Sol precheck evidence was promoted to final because Phase 2 (Sonnet/Opus) is temporarily disabled. This is Codex/Sol-only final validation, not Codex + Sonnet/Opus coverage.
Review provenance
- Codex reviewers:
gpt-5.6-sol— general (completed) - Verifier:
gpt-5.6-sol— verifier - Sonnet/Opus: not run (Phase 2 disabled — temporary Codex/Sol-only final)
- Secondary pass: disabled (
temporary_phase2_sonnet_disable)
Issue being fixed or feature implemented
feature_protx_version.pyflakes on the ASAN job because a post-v24 in-placeupdate_servicemigration re-encodespubKeyOperator. CMNAuth then drops verified connections, and the defaultgenerate()→sync_all()path asserts that every node still has at least one peer.sync_fun=self.no_op.What was done?
sync_fun=self.no_op.sync_all().protx/getrawtransactionchecks on the mining node, which already has the block.How Has This Been Tested?
update_registrardisconnect handling in the same file.feature_protx_version.pyfailed 3/3 onsync_blockspeer-count assert; no AddressSanitizer report).Breaking Changes
Checklist:
This pull request was created by Codex.