Skip to content
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

feat(all): preconfs #281

Closed
wants to merge 61 commits into from
Closed

feat(all): preconfs #281

wants to merge 61 commits into from

Conversation

cyberhorsey
Copy link

@cyberhorsey cyberhorsey commented Jun 27, 2024

No description provided.

@cyberhorsey cyberhorsey changed the base branch from master to taiko June 27, 2024 01:54
@mask-pp
Copy link

mask-pp commented Jun 27, 2024

Could you create a new API? But not break eth's origin eth_sendRawTransaction.

internal/ethapi/api.go Outdated Show resolved Hide resolved
@cyberhorsey
Copy link
Author

Could you create a new API? But not break eth's origin eth_sendRawTransaction.

this doesn't break it, the two new arguments are optional. We can create a new API if we want, but perhaps this is easier for wallets to implement?

internal/ethapi/preconf.go Outdated Show resolved Hide resolved
@mask-pp
Copy link

mask-pp commented Jun 27, 2024

Could you create a new API? But not break eth's origin eth_sendRawTransaction.

this doesn't break it, the two new arguments are optional. We can create a new API if we want, but perhaps this is easier for wallets to implement?

Maybe using a new API can be more clear, especially because this PR caused a large number of files to be changed.

@YoGhurt111
Copy link

Could you create a new API? But not break eth's origin eth_sendRawTransaction.

this doesn't break it, the two new arguments are optional. We can create a new API if we want, but perhaps this is easier for wallets to implement?

Maybe using a new API can be more clear, especially because this PR caused a large number of files to be changed.

I agree to use a new API.
This will avoid breaking the interface in some libs depending on eth's native SendTransaction.

@cyberhorsey
Copy link
Author

Could you create a new API? But not break eth's origin eth_sendRawTransaction.

this doesn't break it, the two new arguments are optional. We can create a new API if we want, but perhaps this is easier for wallets to implement?

Maybe using a new API can be more clear, especially because this PR caused a large number of files to be changed.

I agree to use a new API. This will avoid breaking the interface in some libs depending on eth's native SendTransaction.

The team building the preconfs wants to use the same API for the testnet.
Uploading Screenshot_20240627-084607.png…

@davidtaikocha
Copy link
Member

Lets keep these changes in another branch instead of taiko branch.

@@ -160,6 +160,9 @@ type Config struct {

// OverrideVerkle (TODO: remove after the fork)
OverrideVerkle *uint64 `toml:",omitempty"`

// change(taiko): preconf url
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
// change(taiko): preconf url
// CHANGE(taiko): preconf url

@@ -252,7 +255,8 @@ func New(stack *node.Node, config *ethconfig.Config) (*Ethereum, error) {
eth.miner = miner.New(eth, &config.Miner, eth.blockchain.Config(), eth.EventMux(), eth.engine, eth.isLocalBlock)
eth.miner.SetExtra(makeExtraData(config.Miner.ExtraData))

eth.APIBackend = &EthAPIBackend{stack.Config().ExtRPCEnabled(), stack.Config().AllowUnprotectedTxs, eth, nil}
// change(TAIKO): preconfirmation URL
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
// change(TAIKO): preconfirmation URL
// CHANGE(taiko): preconfirmation URL

@@ -101,6 +101,9 @@ type Ethereum struct {
lock sync.RWMutex // Protects the variadic fields (e.g. gas price and etherbase)

shutdownTracker *shutdowncheck.ShutdownTracker // Tracks if and when the node has shutdown ungracefully

// change(taiko)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto

@@ -423,6 +423,7 @@ func (c *BoundContract) transact(opts *TransactOpts, contract *common.Address, i
if opts.NoSend {
return signedTx, nil
}
// change(taiko): slot and sig
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto

@@ -180,6 +180,7 @@ var (
utils.AllowUnprotectedTxs,
utils.BatchRequestLimit,
utils.BatchResponseMaxSize,
utils.PreconfirmationForwardingURLFlag,
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
utils.PreconfirmationForwardingURLFlag,
utils.PreconfirmationForwardingURL,

run.sh Show resolved Hide resolved
@mask-pp
Copy link

mask-pp commented Aug 23, 2024

Unless it is a version upgradation, please do not add extra logs or blank lines in unmodified areas.

if err != nil {
return nil, NewTxIndexingError() // transaction is not fully indexed
if err != nil || !found {
// change(taiko): check to see if it exists from the preconfer.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto

@mask-pp
Copy link

mask-pp commented Aug 23, 2024

Please use the unique CHANGE(taiko): tag when making any modifications.

@cyberhorsey
Copy link
Author

Please use the unique CHANGE(taiko): tag when making any modifications.

yep, when this PR is ready for review I'll tag you, it's just constant crap rn because I push changes to log and test stuff.

davidtaikocha added a commit that referenced this pull request Nov 5, 2024
@davidtaikocha
Copy link
Member

Closed by 266c8ca

davidtaikocha added a commit that referenced this pull request Jan 7, 2025
* feat(beacon): introduce soft blocks

* feat: update api.go

* chore(ci): update CI

* feat: update L1Origin

* feat: update `verifyHeader`

* test: update tests

* feat: update consensus

* feat: update consensus

* feat: update genesis

* feat: remove timestamp check in prepareWork

* feat: merge changes in #281

* Update eth/catalyst/api.go

Co-authored-by: maskpp <[email protected]>

* Update internal/ethapi/taiko_preconf.go

Co-authored-by: maskpp <[email protected]>

* fix consensus test

* revert commit f1df58

* fix consensus test (#349)

* Update eth/catalyst/api.go

Co-authored-by: maskpp <[email protected]>

* feat: add back timestamp check in worker

* add genesis

* temp fix for old l1origin

* nil value

* feat: rename to `L1OriginLegacy`

* feat: change `common.Big0` as the default value for legacy l1Origin, to make `IsSoftblock` return `false`

* feat(beacon): change the reorg log level (#350)

* use debug log level to avoid logging too many logs when frequently soft block reorg.

* use debug log level to avoid logging too many logs when frequently soft block reorg.

* feat: check --taiko flag

---------

Co-authored-by: David <[email protected]>

* add rlp optional flag (#353)

* fix lint

* fix test case

* feat(l1Origin): remove the reverted l1Origins (#355)

* remove the reverted l1Origins

* feat: add more comments

---------

Co-authored-by: David <[email protected]>

* only forward txs

* chore: update ci

---------

Co-authored-by: maskpp <[email protected]>
Co-authored-by: Jeffery Walsh <[email protected]>
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.

4 participants