-
Notifications
You must be signed in to change notification settings - Fork 0
feat: passes sim result to the submit tasks #100
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: prestwich/simrevert
Are you sure you want to change the base?
Conversation
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
This stack of pull requests is managed by Graphite. Learn more about stacking. |
4961bf7
to
df3f9a2
Compare
f5c2178
to
a873d45
Compare
95a207e
to
9a95da4
Compare
a873d45
to
1fc9892
Compare
9a95da4
to
c2cd1ab
Compare
75b8d71
to
41019b6
Compare
acf2569
to
2234717
Compare
501d86e
to
92b1dde
Compare
2c09604
to
a96a88f
Compare
92b1dde
to
b69451e
Compare
a96a88f
to
aee1dd3
Compare
b69451e
to
0f48d3e
Compare
aee1dd3
to
da4a7fd
Compare
3432017
to
6fd3675
Compare
- adds a SimResult type that binds a BlockEnv to a BuiltBlock - passess that SimResult to the SubmitTask for gas calculations
54b51a6
to
3e2c5fa
Compare
let mine_time = dispatch_start_time.elapsed().as_secs(); | ||
let hash = receipt.transaction_hash.to_string(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: better not to bind the var. can just inline it on the trace
debug!(
success = receipt.status(),
hash = %receipt.transaction_hash,
mine_time, hash,
"transaction mined"
);
debug!(block_number = ?built_block.block_number(), "finished building block"); | ||
debug!( | ||
tx_count = built_block.tx_count(), | ||
block_number = ?built_block.block_number(), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i know this is preserved from earlier, but i think the ?
is unnecessary here?
|
||
let env = self.construct_block_env(&previous); | ||
debug!(?env, "constructed block env"); | ||
debug!(block_number = ?env.number, env.basefee, "constructed latest block env"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thing the ?
is unnecessary as number is a number
pub const BASE_MAX_PRIORITY_FEE_PER_GAS: u128 = 2 * GWEI_TO_WEI as u128; | ||
/// Base maximum fee per blob gas to use as a starting point for retry bumps | ||
pub const BASE_MAX_FEE_PER_BLOB_GAS: u128 = GWEI_TO_WEI as u128; | ||
use super::block::sim::SimResult; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: we tend use to fully qualified crate::
paths instead of super
fn calculate_gas(retry_count: usize, block_env: &BlockEnv) -> (u128, u128, u128) { | ||
let fallback_blob_basefee = 500; | ||
|
||
match block_env.blob_excess_gas_and_price { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the block_env
here is the Signet block env, not the host block env, no? it's constructed in EnvTask::construct_block_env
and the blob excess gas and price will always be Some(0, 0)
.
using it to calculate the fee for the host transaction is a bug, as it contains no info about the host
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if you want the host blob gas (which is i think what you're looking for here) you'll need to make the env task's watch channel contain that alongside the constructed BlockEnv
by maybe a
struct SimEnv {
signet: BlockEnv,
host: alloy::consensus::Header,
}
feat: Passes SimResult to the submit task
Closes ENG-1046
This PR adds a
SimResult
type that wraps aBuiltBlock
and aBlockEnv
together and sends them both to theSubmitTask
so that a block's environment is known at submission time for gas calculation purposes.SimResult
type that binds aBlockEnv
to aBuiltBlock
SimResult
to theSubmitTask
for gas calculation purposesBugfixes