@@ -29,6 +29,15 @@ import (
29
29
//go:embed actors/*.tar.zst
30
30
var embeddedBuiltinActorReleases embed.FS
31
31
32
+ func BuggyBuiltinActorsMetadataForNetwork (network string , version actorstypes.Version ) * BuiltinActorsMetadata {
33
+ for _ , m := range buggyBuiltinActorsMetadata {
34
+ if m .Network == network && m .Version == version {
35
+ return m
36
+ }
37
+ }
38
+ return nil
39
+ }
40
+
32
41
func init () {
33
42
if BundleOverrides == nil {
34
43
BundleOverrides = make (map [actorstypes.Version ]string )
@@ -44,13 +53,25 @@ func init() {
44
53
panic (err )
45
54
}
46
55
47
- // The following code cid existed temporarily on the calibnet testnet, as a "buggy" storage miner actor implementation.
48
- // We include them in our builtin bundle, but intentionally omit from metadata.
56
+ setupBuggyActorsMeta ()
57
+ }
58
+
59
+ func setupBuggyActorsMeta () {
49
60
if buildconstants .NetworkBundle == "calibrationnet" {
61
+ // The following code cid existed temporarily on the calibnet testnet, as a "buggy" storage miner actor implementation.
62
+ // We include them in our builtin bundle, but intentionally omit from metadata.
50
63
actors .AddActorMeta ("storageminer" , cid .MustParse ("bafk2bzacecnh2ouohmonvebq7uughh4h3ppmg4cjsk74dzxlbbtlcij4xbzxq" ), actorstypes .Version12 )
51
64
actors .AddActorMeta ("storageminer" , cid .MustParse ("bafk2bzaced7emkbbnrewv5uvrokxpf5tlm4jslu2jsv77ofw2yqdglg657uie" ), actorstypes .Version12 )
52
65
actors .AddActorMeta ("verifiedregistry" , cid .MustParse ("bafk2bzacednskl3bykz5qpo54z2j2p4q44t5of4ktd6vs6ymmg2zebsbxazkm" ), actorstypes .Version13 )
53
66
}
67
+
68
+ for _ , m := range buggyBuiltinActorsMetadata {
69
+ if m .Network == buildconstants .NetworkBundle {
70
+ for name , c := range m .Actors {
71
+ actors .AddActorMeta (name , c , m .Version )
72
+ }
73
+ }
74
+ }
54
75
}
55
76
56
77
// UseNetworkBundle switches to a different network bundle, by name.
@@ -62,6 +83,7 @@ func UseNetworkBundle(netw string) error {
62
83
return err
63
84
}
64
85
buildconstants .NetworkBundle = netw
86
+ setupBuggyActorsMeta ()
65
87
return nil
66
88
}
67
89
@@ -203,6 +225,16 @@ func readEmbeddedBuiltinActorsMetadata(bundle string) ([]*BuiltinActorsMetadata,
203
225
root == cid .MustParse ("bafy2bzacea4firkyvt2zzdwqjrws5pyeluaesh6uaid246tommayr4337xpmi" ) {
204
226
continue
205
227
}
228
+ // Check our buggy manifests and exclude this one if it's listed there.
229
+ var isBuggyManifest bool
230
+ for _ , m := range buggyBuiltinActorsMetadata {
231
+ if root == m .ManifestCid {
232
+ isBuggyManifest = true
233
+ }
234
+ }
235
+ if isBuggyManifest {
236
+ continue
237
+ }
206
238
bundles = append (bundles , & BuiltinActorsMetadata {
207
239
Network : name ,
208
240
Version : actorstypes .Version (version ),
@@ -287,3 +319,129 @@ func GetEmbeddedBuiltinActorsBundle(version actorstypes.Version, networkBundleNa
287
319
return car , true
288
320
}
289
321
}
322
+
323
+ var buggyBuiltinActorsMetadata = []* BuiltinActorsMetadata {
324
+ {
325
+ // superseded by v16.0.1, included here for testing
326
+ Network : "butterflynet" ,
327
+ Version : 16 ,
328
+ BundleGitTag : "v16.0.0" ,
329
+ ManifestCid : cid .MustParse ("bafy2bzacedn2h6huw7v2elmmdmpv4phdv4wjwgct7kcrrtdgz7jkjdm6uwa6k" ),
330
+ Actors : map [string ]cid.Cid {
331
+ "account" : cid .MustParse ("bafk2bzacebtd4bl5htqzhnueqwchxjocw35bjfk4u34h33tkhl7l3ll7jjzp6" ),
332
+ "cron" : cid .MustParse ("bafk2bzacebuwt5zc2njcsm2fghlrnz3bfvu7s6hepl6leoql3w7zwxtfz5sx4" ),
333
+ "datacap" : cid .MustParse ("bafk2bzacearpj5e5mgj7wbqknzbr67z464mscraxa2r434i4vf2q5pfxli67y" ),
334
+ "eam" : cid .MustParse ("bafk2bzaceak462ytr36seexcpydhsxywzm3sz3loechzuuuifvtie72zgggkm" ),
335
+ "ethaccount" : cid .MustParse ("bafk2bzacecosm2oq5ymatrxkhfv722fawci6bfe5x2hz4gkzu7ewakc5cqfsi" ),
336
+ "evm" : cid .MustParse ("bafk2bzacebqxdknf6fbuqnop7jacz4rtarsji4xp6x4o46sabkdauckekpzvs" ),
337
+ "init" : cid .MustParse ("bafk2bzaceanzpajkcik5k4xt7nisqiazme2saivwl5um2que2g7jekr6feygm" ),
338
+ "multisig" : cid .MustParse ("bafk2bzaceayq4iq5l324rlxhrluetxr2rhkw653ple52qdqcc3pxnxgqfobky" ),
339
+ "paymentchannel" : cid .MustParse ("bafk2bzaceaifoxdlegtehjeow4sve6zuvvd6yqhwpwaim65hexv2gu7dt32ru" ),
340
+ "placeholder" : cid .MustParse ("bafk2bzacedfvut2myeleyq67fljcrw4kkmn5pb5dpyozovj7jpoez5irnc3ro" ),
341
+ "reward" : cid .MustParse ("bafk2bzacecj4o5ea74dksbshkqf4yd2e4wipcnn6es5h4ltvdnmod3wrj7pei" ),
342
+ "storagemarket" : cid .MustParse ("bafk2bzacedjnmezgiaszypr2pvwrzuzijv6hoegdcz47yq3ym6rcguqw6altm" ),
343
+ "storageminer" : cid .MustParse ("bafk2bzacebervdatmrxkhke2z7vsmbw4bdcvimxfrvo75lchiobtuyhvklrq6" ),
344
+ "storagepower" : cid .MustParse ("bafk2bzacecq27y2fgtst57klr5g22nn6i25icey7uq6ofhouupmidkcoh34xa" ),
345
+ "system" : cid .MustParse ("bafk2bzaceb2l6ttyv3hnjexdzqaoo7nxsec3dtbo5h5yxdzz44ugq2onxofdu" ),
346
+ "verifiedregistry" : cid .MustParse ("bafk2bzacedhrjtvtmygawmtfukkufpw5ju7wasxnfktxloc77gz3nj6mh45b2" ),
347
+ },
348
+ },
349
+ {
350
+ // superseded by v16.0.1, included here because it was deployed live and needed before the fix upgrade
351
+ Network : "calibrationnet" ,
352
+ Version : 16 ,
353
+ BundleGitTag : "v16.0.0" ,
354
+ ManifestCid : cid .MustParse ("bafy2bzacebc7zpsrihpyd2jdcvmegbbk6yhzkifre3hxtoul5wdxxklbwitry" ),
355
+ Actors : map [string ]cid.Cid {
356
+ "account" : cid .MustParse ("bafk2bzaced4jhgt6peqc3m2lrclj347kjhwt3wjsdxrbt336m5kxcrkyyfg4o" ),
357
+ "cron" : cid .MustParse ("bafk2bzacecuvdunhtjo52tpxt4ge3ue7mpejmv3c3loqf6iafu5e2jlybvy5a" ),
358
+ "datacap" : cid .MustParse ("bafk2bzacebs5hd67p3x2ohf357xaebz57o3ffeuexndaptn5g3usgatd32icq" ),
359
+ "eam" : cid .MustParse ("bafk2bzacedbazvsncva5hfb72jyipsebzlo6sgjbfnf6m4p4xhagzoekzgy34" ),
360
+ "ethaccount" : cid .MustParse ("bafk2bzacedepzmyi2sbw7fgblhzhz75oovy6trbsfnxsbsqdh6te5cchgptiq" ),
361
+ "evm" : cid .MustParse ("bafk2bzacedomvviwbdddcfm73uaedqeyuiyswdt3plq3v74uvbo2xvrzyphio" ),
362
+ "init" : cid .MustParse ("bafk2bzacednq5wfauimq4shz2xynzshatk54odj45gp6fkw77gy25fpmhu5oc" ),
363
+ "multisig" : cid .MustParse ("bafk2bzaceb4bfxfccm5v6qnecp7ayalitk2fvu6ezavcrd7lcb4uohrsaeo32" ),
364
+ "paymentchannel" : cid .MustParse ("bafk2bzaceaia5ufr2wyzbasrx6vcfeqjsnaqajmlrnp763cesa7pqvddaubyu" ),
365
+ "placeholder" : cid .MustParse ("bafk2bzacedfvut2myeleyq67fljcrw4kkmn5pb5dpyozovj7jpoez5irnc3ro" ),
366
+ "reward" : cid .MustParse ("bafk2bzacecgorusdavjd42ktijbjh4veu2y6isnlfyys2f5jylnc2c6yll3ju" ),
367
+ "storagemarket" : cid .MustParse ("bafk2bzacea63rezmai4qwvzlc3hmcjn4eurkcec7cjqoih6vztnkwjvvlx2we" ),
368
+ "storageminer" : cid .MustParse ("bafk2bzaceax4mv3wzp7jfjpsp2lklujzpjtskpn6lsn743a6ljpgzo2qjdncq" ),
369
+ "storagepower" : cid .MustParse ("bafk2bzaceddedx24uzsyx6yh63aoabx66caaariopsa5gzn2x6yme7dv5s7cg" ),
370
+ "system" : cid .MustParse ("bafk2bzacecfol5vcebbl7dqkat7kt65bgqwqvn7fxnakg7qvpokce6ulemo3k" ),
371
+ "verifiedregistry" : cid .MustParse ("bafk2bzacedqpwyprkgwdbcqahgrzuoul42gd3hvgn54fxyqjgtwmmlquycuok" ),
372
+ },
373
+ },
374
+ {
375
+ // superseded by v16.0.1, included here for testing
376
+ Network : "devnet" ,
377
+ Version : 16 ,
378
+ BundleGitTag : "v16.0.0" ,
379
+ ManifestCid : cid .MustParse ("bafy2bzaceafzrqb6adck3o3mbyd33gtp2272f577hidqyo7cszg2ksn5sebh2" ),
380
+ Actors : map [string ]cid.Cid {
381
+ "account" : cid .MustParse ("bafk2bzacedqy7umr3bmmkrepi3ostdxrlxaln33wecqllsz5eqgdwzb2oqov2" ),
382
+ "cron" : cid .MustParse ("bafk2bzacebrbwcwi3jtplab7jajkccgcqzyvpobypfhomf45ujxpgwehipoia" ),
383
+ "datacap" : cid .MustParse ("bafk2bzaceccxwbelrowdo47xfgd7ldj7trvh7qvq5xgnhxdnw2zdlml5ahzvc" ),
384
+ "eam" : cid .MustParse ("bafk2bzacebjzmdd7vdjfdrrxzzyu34gz4jzropcyzrc7og4lt2mczipwoz3pc" ),
385
+ "ethaccount" : cid .MustParse ("bafk2bzaceb7zgpsi6mwc7asrpxyj7zd6rcsuhraekbonodegxhuli2mwdmuw2" ),
386
+ "evm" : cid .MustParse ("bafk2bzacea5shmgqycbwuvazd2fika4erfbbyxomsnircps2nqk2o7oxtkvdy" ),
387
+ "init" : cid .MustParse ("bafk2bzacedoyhv5wergunblh2ga65rxbwowhtac4vdz7woovkponmmd55f244" ),
388
+ "multisig" : cid .MustParse ("bafk2bzacedyid3docv7i2wx4sciua64ndrbfqbk3werhuruehedhj6gj6hvdg" ),
389
+ "paymentchannel" : cid .MustParse ("bafk2bzaceab556e24d4qzptdownttepcrgljrfvheykwf2kwxzomk5gip3qka" ),
390
+ "placeholder" : cid .MustParse ("bafk2bzacedfvut2myeleyq67fljcrw4kkmn5pb5dpyozovj7jpoez5irnc3ro" ),
391
+ "reward" : cid .MustParse ("bafk2bzacecusrwhrdsndyokbordb7khms3mjvkohnzxst6a3intb52skg56vw" ),
392
+ "storagemarket" : cid .MustParse ("bafk2bzaceciw5btcu55jguj7yfpgd3ecrwlu7hwhdacbug56htiseitbohw6m" ),
393
+ "storageminer" : cid .MustParse ("bafk2bzacead3ptx4vq2e7x3q6lm5cpe6lbtp44shxon23xhmahvvfjqbotpny" ),
394
+ "storagepower" : cid .MustParse ("bafk2bzacecxjuml3buylyyg6u2k6dy3ek4apqlbwbk4npgosxc2cls7ywosow" ),
395
+ "system" : cid .MustParse ("bafk2bzaceaonvsrizf3fvy2tgruqjgymtfvkzejmooui2w2stpi7teibtz4wm" ),
396
+ "verifiedregistry" : cid .MustParse ("bafk2bzaceb3qajgx4ichpmgnxjeofv3pg3qwagrsgkimoi6sinjnd6mydiy2o" ),
397
+ },
398
+ },
399
+ {
400
+ Network : "testing" ,
401
+ Version : 16 ,
402
+ BundleGitTag : "v16.0.0" ,
403
+ ManifestCid : cid .MustParse ("bafy2bzacea35za4a3ljlupfn2wxdzwz5py6vbu267s5p4p4uvdoqyhhggbbfq" ),
404
+ Actors : map [string ]cid.Cid {
405
+ "account" : cid .MustParse ("bafk2bzacedzuxjcmialu22l24x6z5x2j3lxsxxruxmhvhpkttkvlkrjulkbyq" ),
406
+ "cron" : cid .MustParse ("bafk2bzacebgi4wwp2dr4z4wtyziz4mn7ipglpez2ghxzh76sbapz4isvxfbc4" ),
407
+ "datacap" : cid .MustParse ("bafk2bzacechuwtorkaqcmfgztggv5khbx36xyqw5emxibh6qd7si4pdg6i22q" ),
408
+ "eam" : cid .MustParse ("bafk2bzaceddukui4pbnrfwcu7zv5acvbhgvclblxiwph2utpndb7qqj3oll5o" ),
409
+ "ethaccount" : cid .MustParse ("bafk2bzaceafucqy3me7ellhrd5jla2a5wqo652agx4nb6467po643zgvy5d4w" ),
410
+ "evm" : cid .MustParse ("bafk2bzacedmaykyptdfzwkbui6ptoueqsoj3wubtexdeumh7i7qsnlfmreetm" ),
411
+ "init" : cid .MustParse ("bafk2bzacecauzck4cmqcbjzsz7jyugig5xcqhuj4lrkbykewkg3pineperxg6" ),
412
+ "multisig" : cid .MustParse ("bafk2bzaceakkpute3br5t77lkfh4qi7ezzafrpoen7xngf46zjvfuaok3ffqi" ),
413
+ "paymentchannel" : cid .MustParse ("bafk2bzacebwedmnkgpxta4y4pc3fjn5dazcjmlveztmv7gh6czi7zkrx6t4do" ),
414
+ "placeholder" : cid .MustParse ("bafk2bzacedfvut2myeleyq67fljcrw4kkmn5pb5dpyozovj7jpoez5irnc3ro" ),
415
+ "reward" : cid .MustParse ("bafk2bzaceac3ohau7sxi3xotwsi5bzo75lg74nwdmrxmx5rfnmkp7mo26uxsk" ),
416
+ "storagemarket" : cid .MustParse ("bafk2bzacebn5ixsfxu36r2dbtvfp4ineu4dnhsvqm4qcpiph4cc6knqqkthto" ),
417
+ "storageminer" : cid .MustParse ("bafk2bzacec3alndcdemx26bl3svrbcxtxpdjnmsfuhrawhx5ldd2dlfzzldq4" ),
418
+ "storagepower" : cid .MustParse ("bafk2bzaceb4iqnikgmwuqlzzpb3lfl5k4glt32vgfxebu7h4r6zpzmyaxol7i" ),
419
+ "system" : cid .MustParse ("bafk2bzaceajnotcpt6sx2afno7fjppp6wzrh4dgu2meeoptcjkorunvshi2hw" ),
420
+ "verifiedregistry" : cid .MustParse ("bafk2bzaceazuqbqpozviewg7obtnhlq6tfewjl5vp5wdvkjxdlqbpkvig3zfu" ),
421
+ },
422
+ },
423
+ {
424
+ Network : "testing-fake-proofs" ,
425
+ Version : 16 ,
426
+ BundleGitTag : "v16.0.0" ,
427
+ ManifestCid : cid .MustParse ("bafy2bzacec4tth5r62ny75wt27tyzgzc4nc3zte6cxainlrxs54g7yvmlezs4" ),
428
+ Actors : map [string ]cid.Cid {
429
+ "account" : cid .MustParse ("bafk2bzacedzuxjcmialu22l24x6z5x2j3lxsxxruxmhvhpkttkvlkrjulkbyq" ),
430
+ "cron" : cid .MustParse ("bafk2bzacebgi4wwp2dr4z4wtyziz4mn7ipglpez2ghxzh76sbapz4isvxfbc4" ),
431
+ "datacap" : cid .MustParse ("bafk2bzacechuwtorkaqcmfgztggv5khbx36xyqw5emxibh6qd7si4pdg6i22q" ),
432
+ "eam" : cid .MustParse ("bafk2bzaceddukui4pbnrfwcu7zv5acvbhgvclblxiwph2utpndb7qqj3oll5o" ),
433
+ "ethaccount" : cid .MustParse ("bafk2bzaceafucqy3me7ellhrd5jla2a5wqo652agx4nb6467po643zgvy5d4w" ),
434
+ "evm" : cid .MustParse ("bafk2bzacedmaykyptdfzwkbui6ptoueqsoj3wubtexdeumh7i7qsnlfmreetm" ),
435
+ "init" : cid .MustParse ("bafk2bzacecauzck4cmqcbjzsz7jyugig5xcqhuj4lrkbykewkg3pineperxg6" ),
436
+ "multisig" : cid .MustParse ("bafk2bzaceai472rp5ba3xputcmaoqlleasxifzgjcnmthcnqpmgb24no2tdhk" ),
437
+ "paymentchannel" : cid .MustParse ("bafk2bzacebwedmnkgpxta4y4pc3fjn5dazcjmlveztmv7gh6czi7zkrx6t4do" ),
438
+ "placeholder" : cid .MustParse ("bafk2bzacedfvut2myeleyq67fljcrw4kkmn5pb5dpyozovj7jpoez5irnc3ro" ),
439
+ "reward" : cid .MustParse ("bafk2bzaceac3ohau7sxi3xotwsi5bzo75lg74nwdmrxmx5rfnmkp7mo26uxsk" ),
440
+ "storagemarket" : cid .MustParse ("bafk2bzacebn5ixsfxu36r2dbtvfp4ineu4dnhsvqm4qcpiph4cc6knqqkthto" ),
441
+ "storageminer" : cid .MustParse ("bafk2bzaceaajmyyjy6tntcxngtc55nero4a4halejajpmeioub6fyznbqni74" ),
442
+ "storagepower" : cid .MustParse ("bafk2bzaceb4iqnikgmwuqlzzpb3lfl5k4glt32vgfxebu7h4r6zpzmyaxol7i" ),
443
+ "system" : cid .MustParse ("bafk2bzaceajnotcpt6sx2afno7fjppp6wzrh4dgu2meeoptcjkorunvshi2hw" ),
444
+ "verifiedregistry" : cid .MustParse ("bafk2bzaceazuqbqpozviewg7obtnhlq6tfewjl5vp5wdvkjxdlqbpkvig3zfu" ),
445
+ },
446
+ },
447
+ }
0 commit comments