madara-alliance / madara

Madara is a powerful hybrid Starknet client written in Rust.
https://madara.build
Apache License 2.0
77 stars 30 forks source link

Configurable chain config (duh) #240

Closed cchudant closed 1 month ago

cchudant commented 2 months ago

Is there an existing issue?

Motivation

Last week with @Mohiiit we talked about where to put new configuration params - sometimes the line between what should be put in ChainConfig vs what should be put in cli arguments is a bit blurry Let's fix that!

Request

I believe the difference should be related to how the user uses madara, not about technical details or whatnot.

CLI args should be how node operators (people running madara nodes) configure madara, and chain config should be how appchain developers (kakarot pragma & cie) configure their chain. This means that block times, and other details like pending block tick time should be in chain config - even though it may be a debatable. The batch size for block production should also be in chain config instead of cli arguments as it is very related to pending block tick time -- we should expect people to tune both at the same time. This may seem a bit strange because this is a performance setting though.

In addition,

Plus,

Thoughts? :)

I am not sure if yml is better than toml, I think starknet people are more familiar with toml? what do you think? I don't want json as it can't have comments.

Solution

No response

Are you willing to help with this request?

Yes!

azurwastaken commented 2 months ago

Hi, would like to take it :)