Skip to content

Commit 1a634cd

Browse files
committed
compatibility fixing
1 parent 9ab27fb commit 1a634cd

File tree

3 files changed

+34
-0
lines changed

3 files changed

+34
-0
lines changed

coordinator/internal/logic/provertask/batch_prover_task.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -213,6 +213,14 @@ func (bp *BatchProverTask) Assign(ctx *gin.Context, getTaskParameter *coordinato
213213
return nil, ErrCoordinatorInternalFailure
214214
}
215215
proverTask.Metadata = metadata
216+
217+
if isCompatibilityFixingVersion(taskCtx.ProverVersion) {
218+
log.Info("Apply compatibility fixing for prover", "version", taskCtx.ProverVersion)
219+
if err := fixCompatibility(taskMsg); err != nil {
220+
log.Error("apply compatibility failure", "err", err)
221+
return nil, ErrCoordinatorInternalFailure
222+
}
223+
}
216224
}
217225

218226
// Store session info.

coordinator/internal/logic/provertask/bundle_prover_task.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -211,6 +211,14 @@ func (bp *BundleProverTask) Assign(ctx *gin.Context, getTaskParameter *coordinat
211211
// bundle proof require snark
212212
taskMsg.UseSnark = true
213213
proverTask.Metadata = metadata
214+
215+
if isCompatibilityFixingVersion(taskCtx.ProverVersion) {
216+
log.Info("Apply compatibility fixing for prover", "version", taskCtx.ProverVersion)
217+
if err := fixCompatibility(taskMsg); err != nil {
218+
log.Error("apply compatibility failure", "err", err)
219+
return nil, ErrCoordinatorInternalFailure
220+
}
221+
}
214222
}
215223

216224
// Store session info.

coordinator/internal/logic/provertask/prover_task.go

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import (
1414
"gorm.io/gorm"
1515

1616
"scroll-tech/common/types/message"
17+
"scroll-tech/common/version"
1718

1819
"scroll-tech/coordinator/internal/config"
1920
"scroll-tech/coordinator/internal/logic/libzkp"
@@ -201,6 +202,23 @@ func (b *BaseProverTask) applyUniversal(schema *coordinatorType.GetTaskSchema) (
201202
return schema, []byte(metadata), nil
202203
}
203204

205+
const CompatibilityVersion = "4.5.43"
206+
207+
func isCompatibilityFixingVersion(ver string) bool {
208+
return version.CheckScrollRepoVersion(ver, CompatibilityVersion)
209+
}
210+
211+
func fixCompatibility(schema *coordinatorType.GetTaskSchema) error {
212+
213+
fixedTask, err := libzkp.UnivTaskCompatibilityFix(schema.TaskData)
214+
if err != nil {
215+
return err
216+
}
217+
schema.TaskData = fixedTask
218+
219+
return nil
220+
}
221+
204222
func newGetTaskCounterVec(factory promauto.Factory, taskType string) *prometheus.CounterVec {
205223
getTaskCounterInitOnce.Do(func() {
206224
getTaskCounterVec = factory.NewCounterVec(prometheus.CounterOpts{

0 commit comments

Comments
 (0)