Skip to content

e2e/qa: wait for multicast status specifically in settlement test#3547

Merged
packethog merged 1 commit intomainfrom
ss/elegant-hopper-d8b493
Apr 17, 2026
Merged

e2e/qa: wait for multicast status specifically in settlement test#3547
packethog merged 1 commit intomainfrom
ss/elegant-hopper-d8b493

Conversation

@packethog
Copy link
Copy Markdown
Contributor

Summary

  • Fix TestQA_MulticastSettlement/validate_device_assignment failing with "no multicast status found after seat payment" (run 24580260777). On QA hosts with a pre-existing IBRL tunnel, the previous WaitForStatusUp returned in ~137ms because it only checks that every currently-listed status is up — it has no notion of which tunnel. The Multicast service hadn't been provisioned yet (Solana finalize + activator + 10s reconciler tick + BGP establish), so the subsequent FindMulticastStatus assertion saw only the IBRL entry and failed.
  • Add WaitForUnicastStatusUp and WaitForMulticastStatusUp helpers that poll for a specific user-type entry to exist and have its session up.
  • Switch validate_tunnel_up in the settlement test to WaitForMulticastStatusUp. Other 13 WaitForStatusUp callers are intentionally left untouched — they'll be audited in a follow-up.

Testing Verification

  • New helper polls up to 90s, which covers Solana finalize + activator approval + one reconciler tick (10s default) + BGP establish — the full async pipeline between FeedSeatPay returning and the daemon's Status() including a Multicast entry.
  • Asserted against log evidence: post-failure diagnostics showed the status list contained only userType=IBRL currentDevice=dz100a-lax1-tsw doubleZeroIP=206.189.166.187, matching the "up" IP the old helper logged — confirming the Multicast entry was absent, not just not-up.

@packethog packethog self-assigned this Apr 17, 2026
@packethog packethog marked this pull request as ready for review April 17, 2026 19:21
@packethog packethog enabled auto-merge (squash) April 17, 2026 19:33
- add WaitForUnicastStatusUp and WaitForMulticastStatusUp helpers that
  poll until a status entry of the requested user type exists and is up
- switch validate_tunnel_up in TestQA_MulticastSettlement to
  WaitForMulticastStatusUp so it no longer completes prematurely when a
  pre-existing IBRL tunnel is already up
@packethog packethog force-pushed the ss/elegant-hopper-d8b493 branch from 44a7d47 to 0f894a7 Compare April 17, 2026 19:45
@packethog packethog merged commit 0a70e7b into main Apr 17, 2026
40 of 41 checks passed
@packethog packethog deleted the ss/elegant-hopper-d8b493 branch April 17, 2026 20:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants