Skip to content

Simulate realistic network conditions #529

@Algorhythmic1

Description

@Algorhythmic1

Surfpool always successfully accepts and executes your transactions, which avoids distractions and is great for proving logical correctness of your program. There are a lot of complications in transaction landing that would be difficult to account for. Try again with higher priority fees? Try again with Jito bundles? Harmonic? Are you using a staked connection? But I think it would still be helpful to randomly not accept transactions (maybe the acceptance rate itself can also be configurable), so that developers can mature their "if no work, what do?" strategy.

Additionally, Surfpool executes transactions in exactly the order you submit them no matter how fast you send them. If a transaction later in the sequence depends on a transaction earlier in the sequence, if you send too quickly and don't confirm, they sometimes get out of order on mainnet. We could simulate that by inserting a random delay in the time surfpool actually executes the transactions.

These could either be one flag, or two separate flags. I can see a case for both.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions