Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion op-challenger/game/fault/register.go
Original file line number Diff line number Diff line change
Expand Up @@ -244,7 +244,11 @@ func registerAsterisc(
}
prestateProvider := outputs.NewPrestateProvider(rollupClient, prestateBlock)
creator := func(ctx context.Context, logger log.Logger, gameDepth faultTypes.Depth, dir string) (faultTypes.TraceAccessor, error) {
accessor, err := outputs.NewOutputAsteriscTraceAccessor(logger, m, cfg, l2Client, prestateProvider, rollupClient, dir, l1HeadID, splitDepth, prestateBlock, poststateBlock)
asteriscPrestate, err := prestateSource.PrestatePath(requiredPrestatehash)
if err != nil {
return nil, fmt.Errorf("failed to get asterisc prestate: %w", err)
}
accessor, err := outputs.NewOutputAsteriscTraceAccessor(logger, m, cfg, l2Client, prestateProvider, asteriscPrestate, rollupClient, dir, l1HeadID, splitDepth, prestateBlock, poststateBlock)
if err != nil {
return nil, err
}
Expand Down
4 changes: 2 additions & 2 deletions op-challenger/game/fault/trace/asterisc/executor.go
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ type Executor struct {
cmdExecutor utils.CmdExecutor
}

func NewExecutor(logger log.Logger, m AsteriscMetricer, cfg *config.Config, inputs utils.LocalGameInputs) *Executor {
func NewExecutor(logger log.Logger, m AsteriscMetricer, cfg *config.Config, prestate string, inputs utils.LocalGameInputs) *Executor {
return &Executor{
logger: logger,
metrics: m,
Expand All @@ -47,7 +47,7 @@ func NewExecutor(logger log.Logger, m AsteriscMetricer, cfg *config.Config, inpu
network: cfg.AsteriscNetwork,
rollupConfig: cfg.AsteriscRollupConfigPath,
l2Genesis: cfg.AsteriscL2GenesisPath,
absolutePreState: cfg.AsteriscAbsolutePreState,
absolutePreState: prestate,
snapshotFreq: cfg.AsteriscSnapshotFreq,
infoFreq: cfg.AsteriscInfoFreq,
selectSnapshot: utils.FindStartingSnapshot,
Expand Down
4 changes: 2 additions & 2 deletions op-challenger/game/fault/trace/asterisc/executor_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ func TestGenerateProof(t *testing.T) {
dir := filepath.Join(tempDir, "gameDir")
cfg := config.NewConfig(common.Address{0xbb}, "http://localhost:8888", "http://localhost:9000", "http://localhost:9096", "http://localhost:9095", tempDir, config.TraceTypeAsterisc)
cfg.L2Rpc = "http://localhost:9999"
cfg.AsteriscAbsolutePreState = "pre.json"
prestate := "pre.json"
cfg.AsteriscBin = "./bin/asterisc"
cfg.AsteriscServer = "./bin/op-program"
cfg.AsteriscSnapshotFreq = 500
Expand All @@ -37,7 +37,7 @@ func TestGenerateProof(t *testing.T) {
}
captureExec := func(t *testing.T, cfg config.Config, proofAt uint64) (string, string, map[string]string) {
m := &asteriscDurationMetrics{}
executor := NewExecutor(testlog.Logger(t, log.LevelInfo), m, &cfg, inputs)
executor := NewExecutor(testlog.Logger(t, log.LevelInfo), m, &cfg, prestate, inputs)
executor.selectSnapshot = func(logger log.Logger, dir string, absolutePreState string, i uint64) (string, error) {
return input, nil
}
Expand Down
8 changes: 4 additions & 4 deletions op-challenger/game/fault/trace/asterisc/provider.go
Original file line number Diff line number Diff line change
Expand Up @@ -43,12 +43,12 @@ type AsteriscTraceProvider struct {
lastStep uint64
}

func NewTraceProvider(logger log.Logger, m AsteriscMetricer, cfg *config.Config, prestateProvider types.PrestateProvider, localInputs utils.LocalGameInputs, dir string, gameDepth types.Depth) *AsteriscTraceProvider {
func NewTraceProvider(logger log.Logger, m AsteriscMetricer, cfg *config.Config, prestateProvider types.PrestateProvider, asteriscPrestate string, localInputs utils.LocalGameInputs, dir string, gameDepth types.Depth) *AsteriscTraceProvider {
return &AsteriscTraceProvider{
logger: logger,
dir: dir,
prestate: cfg.AsteriscAbsolutePreState,
generator: NewExecutor(logger, m, cfg, localInputs),
prestate: asteriscPrestate,
generator: NewExecutor(logger, m, cfg, asteriscPrestate, localInputs),
gameDepth: gameDepth,
preimageLoader: utils.NewPreimageLoader(kvstore.NewDiskKV(utils.PreimageDir(dir)).Get),
PrestateProvider: prestateProvider,
Expand Down Expand Up @@ -185,7 +185,7 @@ func NewTraceProviderForTest(logger log.Logger, m AsteriscMetricer, cfg *config.
logger: logger,
dir: dir,
prestate: cfg.AsteriscAbsolutePreState,
generator: NewExecutor(logger, m, cfg, localInputs),
generator: NewExecutor(logger, m, cfg, cfg.AsteriscNetwork, localInputs),
gameDepth: gameDepth,
preimageLoader: utils.NewPreimageLoader(kvstore.NewDiskKV(utils.PreimageDir(dir)).Get),
}
Expand Down
3 changes: 2 additions & 1 deletion op-challenger/game/fault/trace/outputs/output_asterisc.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ func NewOutputAsteriscTraceAccessor(
cfg *config.Config,
l2Client utils.L2HeaderSource,
prestateProvider types.PrestateProvider,
asteriscPrestate string,
rollupClient OutputRollupClient,
dir string,
l1Head eth.BlockID,
Expand All @@ -39,7 +40,7 @@ func NewOutputAsteriscTraceAccessor(
if err != nil {
return nil, fmt.Errorf("failed to fetch asterisc local inputs: %w", err)
}
provider := asterisc.NewTraceProvider(logger, m, cfg, prestateProvider, localInputs, subdir, depth)
provider := asterisc.NewTraceProvider(logger, m, cfg, prestateProvider, asteriscPrestate, localInputs, subdir, depth)
return provider, nil
}

Expand Down