Skip to content

fix: add provider.py for handling async rpc reqs#166

Merged
stevieraykatz merged 1 commit into
mainfrom
smoke-test-async-handling
Jun 11, 2026
Merged

fix: add provider.py for handling async rpc reqs#166
stevieraykatz merged 1 commit into
mainfrom
smoke-test-async-handling

Conversation

@stevieraykatz

Copy link
Copy Markdown
Member

When running smoke tests against a live chain with multiple nodes, the RPC requests can hit one of many different instances that aren't necessarily synced. Our infra was fragile and serial and could not gracefully handle this topology.

This PR adds a provider module with a ConsistentHTTPProvider class which allows users to instantiate "sticky" sessions which lock the request stream to a single node.

@stevieraykatz stevieraykatz changed the title fix: add provider.py for handling async rpc rs fix: add provider.py for handling async rpc reqs Jun 11, 2026
@github-actions

Copy link
Copy Markdown

Interface Coverage

✅ All interface functions have test coverage.

@github-actions

Copy link
Copy Markdown

📊 Forge Coverage (src/lib/)

🟡 ≥95% across all metrics — some metrics below 99%.

File Lines Stmts Branches Funcs
🟢 B20FactoryLib.sol 100.00% 100.00% 100.00% 100.00%
🔴 test/lib/ForceFeeder.sol 0.00% 0.00% 100.00% 0.00%
🔴 test/lib/PrecompileProbe.sol 0.00% 0.00% 0.00% 0.00%
🟢 MockActivationRegistry.sol 100.00% 100.00% 100.00% 100.00%
🟢 MockActivationRegistryStorage.sol 100.00% 100.00% 100.00% 100.00%
🟢 MockB20.sol 100.00% 100.00% 100.00% 100.00%
🟢 MockB20Asset.sol 100.00% 100.00% 100.00% 100.00%
🟡 MockB20Factory.sol 98.96% 99.10% 100.00% 100.00%
🟢 MockB20Stablecoin.sol 100.00% 100.00% 100.00% 100.00%
🟢 MockB20Storage.sol 100.00% 100.00% 100.00% 100.00%
🟢 MockPolicyRegistry.sol 100.00% 100.00% 100.00% 100.00%
🟢 MockPolicyRegistryStorage.sol 100.00% 100.00% 100.00% 100.00%
Total 96.69% 97.23% 98.39% 96.89%

Full report: download artifact. To browse locally: make coverage (runs forge coverage + genhtml + opens the HTML report).

@github-actions

Copy link
Copy Markdown

✅ Fork tests: all 616 passed

base/base is fully in sync with the base-std spec.

@stevieraykatz stevieraykatz merged commit f7080d0 into main Jun 11, 2026
10 checks passed
@stevieraykatz stevieraykatz deleted the smoke-test-async-handling branch June 11, 2026 21:26
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.

2 participants