Commit 97a2fc8
authored
e2e: add USDC balance verification to multicast settlement QA test (#3456)
## Summary of Changes
- Adds `GetWalletPubkey` QA agent RPC to read a Solana keypair file and
return the base58-encoded public key
- Adds `GetUSDCBalance` to the QA client, deriving the ATA from the
wallet pubkey and querying the Solana RPC
- Adds `GetEffectiveSeatPrice` to the QA client, which respects per-seat
price overrides vs. epoch price
- Extends `TestQA_MulticastSettlement` with balance snapshot/assertion
subtests before pay, after pay, and after withdrawal
## Diff Breakdown
| Category | Files | Lines (+/-) | Net |
|-------------|-------|-------------|------|
| Core logic | 3 | +172 / -6 | +166 |
| Scaffolding | 3 | +131 / -22 | +109 |
| Tests | 1 | +54 / -11 | +43 |
Mostly new test infrastructure (client helpers + proto RPC) to support
richer settlement assertions.
<details>
<summary>Key files (click to expand)</summary>
- `e2e/internal/qa/client_settlement.go` — added
`GetEffectiveSeatPrice`, `GetWalletPubkey`, and `GetUSDCBalance` client
methods
- `e2e/qa_multicast_settlement_test.go` — added
`record_balance_before_pay`, `validate_balance_after_pay`,
`query_effective_seat_price`, and `validate_balance_after_withdraw`
subtests
- `e2e/internal/rpc/agent.go` — implemented `GetWalletPubkey` gRPC
handler (reads keypair JSON, returns base58 pubkey)
- `e2e/proto/qa/agent.proto` — added `GetWalletPubkey` RPC and
request/response messages
</details>
## Testing Verification
- Ran `TestQA_MulticastSettlement` against testnet and mainnet QA
environments; all subtests passed including the new balance assertions1 parent 836b2f3 commit 97a2fc8
7 files changed
Lines changed: 356 additions & 42 deletions
File tree
- config
- e2e
- internal
- qa
- rpc
- proto/qa
- gen/pb-go
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
19 | | - | |
| 19 | + | |
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| 5 | + | |
5 | 6 | | |
6 | 7 | | |
| 8 | + | |
7 | 9 | | |
| 10 | + | |
| 11 | + | |
8 | 12 | | |
| 13 | + | |
9 | 14 | | |
10 | 15 | | |
11 | 16 | | |
| |||
120 | 125 | | |
121 | 126 | | |
122 | 127 | | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
| 20 | + | |
20 | 21 | | |
21 | 22 | | |
22 | 23 | | |
| |||
503 | 504 | | |
504 | 505 | | |
505 | 506 | | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
| 510 | + | |
| 511 | + | |
| 512 | + | |
| 513 | + | |
| 514 | + | |
| 515 | + | |
| 516 | + | |
| 517 | + | |
| 518 | + | |
| 519 | + | |
| 520 | + | |
| 521 | + | |
| 522 | + | |
| 523 | + | |
| 524 | + | |
| 525 | + | |
| 526 | + | |
| 527 | + | |
| 528 | + | |
| 529 | + | |
| 530 | + | |
| 531 | + | |
| 532 | + | |
| 533 | + | |
506 | 534 | | |
507 | 535 | | |
508 | 536 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
| 31 | + | |
31 | 32 | | |
32 | 33 | | |
33 | 34 | | |
| |||
255 | 256 | | |
256 | 257 | | |
257 | 258 | | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
0 commit comments