Skip to content

Commit

Permalink
rename
Browse files Browse the repository at this point in the history
  • Loading branch information
dantaik committed Aug 21, 2024
1 parent 070b539 commit 8113502
Show file tree
Hide file tree
Showing 20 changed files with 172 additions and 172 deletions.
8 changes: 4 additions & 4 deletions packages/protocol/contracts/L1/tiers/DevnetTierProvider.sol
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,13 @@ contract DevnetTierProvider is TierProviderV2, ITierRouter {
/// @inheritdoc ITierProvider
function getTierIds() public pure override returns (uint16[] memory tiers_) {
tiers_ = new uint16[](3);
tiers_[0] = LibTierId.TIER_OPTIMISTIC;
tiers_[1] = LibTierId.TIER_GUARDIAN_MINORITY;
tiers_[2] = LibTierId.TIER_GUARDIAN;
tiers_[0] = LibTiers.TIER_OPTIMISTIC;
tiers_[1] = LibTiers.TIER_GUARDIAN_MINORITY;
tiers_[2] = LibTiers.TIER_GUARDIAN;
}

/// @inheritdoc ITierProvider
function getMinTier(address, uint256) public pure override returns (uint16) {
return LibTierId.TIER_OPTIMISTIC;
return LibTiers.TIER_OPTIMISTIC;
}
}
2 changes: 1 addition & 1 deletion packages/protocol/contracts/L1/tiers/ITierProvider.sol
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// SPDX-License-Identifier: MIT
pragma solidity 0.8.24;

import "./LibTierId.sol";
import "./LibTiers.sol";

/// @title ITierProvider
/// @notice Defines interface to return tier configuration.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
// SPDX-License-Identifier: MIT
pragma solidity 0.8.24;

/// @title LibTierId
/// @title LibTiers
/// @dev Unique identifiers for all supported tiers. Each tier must have a distinct ID to avoid
/// conflicts.
/// @custom:security-contact security@taiko.xyz
library LibTierId {
library LibTiers {
/// @notice Optimistic tier ID.
uint16 public constant TIER_OPTIMISTIC = 100;

Expand Down
20 changes: 10 additions & 10 deletions packages/protocol/contracts/L1/tiers/TierProviderV2.sol
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ contract TierProviderV2 is ITierProvider {
/// @notice Each tier, except the top tier, has a validity bond that is 50 TAIKO higher than the
/// previous tier. Additionally, each tier's contest bond is 6.5625 times its validity bond.
function getTier(uint16 _tierId) public pure override returns (ITierProvider.Tier memory) {
if (_tierId == LibTierId.TIER_OPTIMISTIC) {
if (_tierId == LibTiers.TIER_OPTIMISTIC) {
return ITierProvider.Tier({
verifierName: "",
validityBond: 100 ether, // TAIKO
Expand All @@ -29,7 +29,7 @@ contract TierProviderV2 is ITierProvider {
});
}

if (_tierId == LibTierId.TIER_TEE_SGX) {
if (_tierId == LibTiers.TIER_TEE_SGX) {
return ITierProvider.Tier({
verifierName: LibStrings.B_VERIFIER_TEE_SGX,
validityBond: 150 ether, // TAIKO
Expand All @@ -40,7 +40,7 @@ contract TierProviderV2 is ITierProvider {
});
}

if (_tierId == LibTierId.TIER_ZK_RISC0) {
if (_tierId == LibTiers.TIER_ZK_RISC0) {
return ITierProvider.Tier({
verifierName: LibStrings.B_VERIFIER_ZK_RISC0,
validityBond: 250 ether, // TAIKO
Expand All @@ -51,7 +51,7 @@ contract TierProviderV2 is ITierProvider {
});
}

if (_tierId == LibTierId.TIER_TEE_ZK) {
if (_tierId == LibTiers.TIER_TEE_ZK) {
return ITierProvider.Tier({
verifierName: LibStrings.B_VERIFIER_ZK_TEE,
validityBond: 300 ether, // TAIKO
Expand All @@ -62,7 +62,7 @@ contract TierProviderV2 is ITierProvider {
});
}

if (_tierId == LibTierId.TIER_GUARDIAN_MINORITY) {
if (_tierId == LibTiers.TIER_GUARDIAN_MINORITY) {
return ITierProvider.Tier({
verifierName: LibStrings.B_VERIFIER_GUARDIAN_MINORITY,
validityBond: 350 ether, // TAIKO
Expand All @@ -73,7 +73,7 @@ contract TierProviderV2 is ITierProvider {
});
}

if (_tierId == LibTierId.TIER_GUARDIAN) {
if (_tierId == LibTiers.TIER_GUARDIAN) {
return ITierProvider.Tier({
verifierName: LibStrings.B_VERIFIER_GUARDIAN,
validityBond: 0, // must be 0 for top tier
Expand All @@ -90,13 +90,13 @@ contract TierProviderV2 is ITierProvider {
/// @inheritdoc ITierProvider
function getTierIds() public pure virtual override returns (uint16[] memory tiers_) {
tiers_ = new uint16[](3);
tiers_[0] = LibTierId.TIER_TEE_SGX;
tiers_[1] = LibTierId.TIER_GUARDIAN_MINORITY;
tiers_[2] = LibTierId.TIER_GUARDIAN;
tiers_[0] = LibTiers.TIER_TEE_SGX;
tiers_[1] = LibTiers.TIER_GUARDIAN_MINORITY;
tiers_[2] = LibTiers.TIER_GUARDIAN;
}

/// @inheritdoc ITierProvider
function getMinTier(address, uint256) public pure virtual override returns (uint16) {
return LibTierId.TIER_TEE_SGX;
return LibTiers.TIER_TEE_SGX;
}
}
16 changes: 8 additions & 8 deletions packages/protocol/contracts/hekla/HeklaTierProvider.sol
Original file line number Diff line number Diff line change
Expand Up @@ -11,23 +11,23 @@ contract HeklaTierProvider is TierProviderV2 {
/// @inheritdoc ITierProvider
function getTierIds() public pure override returns (uint16[] memory tiers_) {
tiers_ = new uint16[](5);
tiers_[0] = LibTierId.TIER_OPTIMISTIC;
tiers_[1] = LibTierId.TIER_TEE_SGX;
tiers_[2] = LibTierId.TIER_ZK_RISC0;
tiers_[3] = LibTierId.TIER_GUARDIAN_MINORITY;
tiers_[4] = LibTierId.TIER_GUARDIAN;
tiers_[0] = LibTiers.TIER_OPTIMISTIC;
tiers_[1] = LibTiers.TIER_TEE_SGX;
tiers_[2] = LibTiers.TIER_ZK_RISC0;
tiers_[3] = LibTiers.TIER_GUARDIAN_MINORITY;
tiers_[4] = LibTiers.TIER_GUARDIAN;
}

/// @inheritdoc ITierProvider
function getMinTier(address _proposer, uint256 _rand) public pure override returns (uint16) {
if (_proposer == LAB_PROPOSER && _rand % 1000 == 0) {
// 0.1% of the total blocks will require ZKVM proofs.
return LibTierId.TIER_ZK_RISC0;
return LibTiers.TIER_ZK_RISC0;
} else if (_rand % 2 == 0) {
// 50% of the total blocks will require SGX proofs.
return LibTierId.TIER_TEE_SGX;
return LibTiers.TIER_TEE_SGX;
} else {
return LibTierId.TIER_OPTIMISTIC;
return LibTiers.TIER_OPTIMISTIC;
}
}
}
4 changes: 2 additions & 2 deletions packages/protocol/test/L1/GuardianProver2.t.sol
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ contract TestGuardianProver2 is TaikoL1TestBase {

// TierProof
TaikoData.TierProof memory proof =
TaikoData.TierProof({ tier: LibTierId.TIER_GUARDIAN, data: "" });
TaikoData.TierProof({ tier: LibTiers.TIER_GUARDIAN, data: "" });

// `verifyProof()`
gp.verifyProof(ctx, transition, proof);
Expand Down Expand Up @@ -67,7 +67,7 @@ contract TestGuardianProver2 is TaikoL1TestBase {

// TierProof
TaikoData.TierProof memory proof =
TaikoData.TierProof({ tier: LibTierId.TIER_GUARDIAN, data: "" });
TaikoData.TierProof({ tier: LibTiers.TIER_GUARDIAN, data: "" });

// `verifyProof()` with invalid ctx.prover
vm.expectRevert(GuardianProver.GV_PERMISSION_DENIED.selector);
Expand Down
8 changes: 4 additions & 4 deletions packages/protocol/test/L1/TaikoL1.t.sol
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ contract TaikoL1Test is TaikoL1TestBase {
proveBlock(Alice, meta, parentHash, blockHash, stateRoot, meta.minTier, "");
} else {
proveBlock(
Carol, meta, parentHash, blockHash, stateRoot, LibTierId.TIER_GUARDIAN, ""
Carol, meta, parentHash, blockHash, stateRoot, LibTiers.TIER_GUARDIAN, ""
);
}
} else {
Expand Down Expand Up @@ -226,9 +226,9 @@ contract TaikoL1Test is TaikoL1TestBase {

function test_getTierIds() external {
uint16[] memory tiers = cp.getTierIds();
assertEq(tiers[0], LibTierId.TIER_OPTIMISTIC);
assertEq(tiers[1], LibTierId.TIER_TEE_SGX);
assertEq(tiers[2], LibTierId.TIER_GUARDIAN);
assertEq(tiers[0], LibTiers.TIER_OPTIMISTIC);
assertEq(tiers[1], LibTiers.TIER_TEE_SGX);
assertEq(tiers[2], LibTiers.TIER_GUARDIAN);

vm.expectRevert();
cp.getTier(123);
Expand Down
60 changes: 30 additions & 30 deletions packages/protocol/test/L1/TaikoL1LibProvingWithTiers.t.sol
Original file line number Diff line number Diff line change
Expand Up @@ -37,10 +37,10 @@ contract TaikoL1LibProvingWithTiers is TaikoL1TestBase {
internal
{
uint16 tierToProveWith;
if (minTier == LibTierId.TIER_OPTIMISTIC) {
tierToProveWith = LibTierId.TIER_TEE_SGX;
} else if (minTier == LibTierId.TIER_TEE_SGX) {
tierToProveWith = LibTierId.TIER_GUARDIAN;
if (minTier == LibTiers.TIER_OPTIMISTIC) {
tierToProveWith = LibTiers.TIER_TEE_SGX;
} else if (minTier == LibTiers.TIER_TEE_SGX) {
tierToProveWith = LibTiers.TIER_GUARDIAN;
}
proveBlock(Carol, meta, parentHash, blockHash, stateRoot, tierToProveWith, "");
}
Expand Down Expand Up @@ -119,8 +119,8 @@ contract TaikoL1LibProvingWithTiers is TaikoL1TestBase {
proveHigherTierProof(meta, parentHash, stateRoot, blockHash, minTier);

vm.warp(
block.timestamp
+ tierProvider().getTier(LibTierId.TIER_GUARDIAN).cooldownWindow * 60 + 1
block.timestamp + tierProvider().getTier(LibTiers.TIER_GUARDIAN).cooldownWindow * 60
+ 1
);
// Now can verify
console2.log("Probalom verify-olni");
Expand Down Expand Up @@ -164,8 +164,8 @@ contract TaikoL1LibProvingWithTiers is TaikoL1TestBase {

// Otherwise just not contest
vm.warp(
block.timestamp
+ tierProvider().getTier(LibTierId.TIER_GUARDIAN).cooldownWindow * 60 + 1
block.timestamp + tierProvider().getTier(LibTiers.TIER_GUARDIAN).cooldownWindow * 60
+ 1
);
// Now can verify
verifyBlock(1);
Expand Down Expand Up @@ -195,7 +195,7 @@ contract TaikoL1LibProvingWithTiers is TaikoL1TestBase {

proveBlock(Alice, meta, parentHash, blockHash, stateRoot, minTier, "");

if (minTier == LibTierId.TIER_OPTIMISTIC) {
if (minTier == LibTiers.TIER_OPTIMISTIC) {
// Try to contest
proveBlock(Carol, meta, parentHash, stateRoot, stateRoot, minTier, "");

Expand All @@ -207,14 +207,14 @@ contract TaikoL1LibProvingWithTiers is TaikoL1TestBase {
verifyBlock(1);

proveBlock(
Carol, meta, parentHash, blockHash, stateRoot, LibTierId.TIER_GUARDIAN, ""
Carol, meta, parentHash, blockHash, stateRoot, LibTiers.TIER_GUARDIAN, ""
);
}

// Otherwise just not contest
vm.warp(
block.timestamp
+ tierProvider().getTier(LibTierId.TIER_GUARDIAN).cooldownWindow * 60 + 1
block.timestamp + tierProvider().getTier(LibTiers.TIER_GUARDIAN).cooldownWindow * 60
+ 1
);
// Now can verify
verifyBlock(1);
Expand Down Expand Up @@ -243,15 +243,15 @@ contract TaikoL1LibProvingWithTiers is TaikoL1TestBase {
uint16 minTier = meta.minTier;
proveBlock(Alice, meta, parentHash, stateRoot, stateRoot, minTier, "");

if (minTier == LibTierId.TIER_OPTIMISTIC) {
if (minTier == LibTiers.TIER_OPTIMISTIC) {
// Try to contest
proveBlock(Carol, meta, parentHash, blockHash, stateRoot, minTier, "");

vm.roll(block.number + 15 * 12);

vm.warp(
block.timestamp
+ tierProvider().getTier(LibTierId.TIER_GUARDIAN).cooldownWindow * 60 + 1
+ tierProvider().getTier(LibTiers.TIER_GUARDIAN).cooldownWindow * 60 + 1
);

// Cannot verify block because it is contested..
Expand All @@ -263,15 +263,15 @@ contract TaikoL1LibProvingWithTiers is TaikoL1TestBase {
parentHash,
0,
stateRoot,
LibTierId.TIER_GUARDIAN,
LibTiers.TIER_GUARDIAN,
LibProving.L1_INVALID_TRANSITION.selector
);
}

// Otherwise just not contest
vm.warp(
block.timestamp
+ tierProvider().getTier(LibTierId.TIER_GUARDIAN).cooldownWindow * 60 + 1
block.timestamp + tierProvider().getTier(LibTiers.TIER_GUARDIAN).cooldownWindow * 60
+ 1
);
// Now can verify
verifyBlock(1);
Expand Down Expand Up @@ -357,12 +357,12 @@ contract TaikoL1LibProvingWithTiers is TaikoL1TestBase {
assertEq(lastVerifiedBlockAfter, lastVerifiedBlockBefore);

// Guardian can prove with the original (good) hashes.
proveBlock(Carol, meta, parentHash, blockHash, stateRoot, LibTierId.TIER_GUARDIAN, "");
proveBlock(Carol, meta, parentHash, blockHash, stateRoot, LibTiers.TIER_GUARDIAN, "");

vm.roll(block.number + 15 * 12);
vm.warp(
block.timestamp
+ tierProvider().getTier(LibTierId.TIER_GUARDIAN).cooldownWindow * 60 + 1
block.timestamp + tierProvider().getTier(LibTiers.TIER_GUARDIAN).cooldownWindow * 60
+ 1
);

verifyBlock(1);
Expand Down Expand Up @@ -396,7 +396,7 @@ contract TaikoL1LibProvingWithTiers is TaikoL1TestBase {
parentHash,
0,
stateRoot,
LibTierId.TIER_GUARDIAN,
LibTiers.TIER_GUARDIAN,
LibProving.L1_INVALID_TRANSITION.selector
);

Expand Down Expand Up @@ -438,7 +438,7 @@ contract TaikoL1LibProvingWithTiers is TaikoL1TestBase {
// Prove as guardian
blockHash = bytes32(1_000_000 + blockId + 100);
stateRoot = bytes32(2_000_000 + blockId + 100);
proveBlock(Carol, meta, parentHash, blockHash, stateRoot, LibTierId.TIER_GUARDIAN, "");
proveBlock(Carol, meta, parentHash, blockHash, stateRoot, LibTiers.TIER_GUARDIAN, "");

// Re-prove as guardian
stateRoot = bytes32(2_000_000 + blockId + 200);
Expand All @@ -450,12 +450,12 @@ contract TaikoL1LibProvingWithTiers is TaikoL1TestBase {
parentHash,
blockHash,
stateRoot,
LibTierId.TIER_GUARDIAN,
LibTiers.TIER_GUARDIAN,
LibProving.L1_ALREADY_PROVED.selector
);
}
blockHash = bytes32(1_000_000 + blockId + 200);
proveBlock(Carol, meta, parentHash, blockHash, stateRoot, LibTierId.TIER_GUARDIAN, "");
proveBlock(Carol, meta, parentHash, blockHash, stateRoot, LibTiers.TIER_GUARDIAN, "");

vm.roll(block.number + 15 * 12);

Expand Down Expand Up @@ -493,7 +493,7 @@ contract TaikoL1LibProvingWithTiers is TaikoL1TestBase {
parentHash,
blockHash,
stateRoot,
LibTierId.TIER_TEE_SGX,
LibTiers.TIER_TEE_SGX,
LibUtils.L1_INVALID_BLOCK_ID.selector
);

Expand Down Expand Up @@ -530,7 +530,7 @@ contract TaikoL1LibProvingWithTiers is TaikoL1TestBase {
parentHash,
blockHash,
stateRoot,
LibTierId.TIER_TEE_SGX,
LibTiers.TIER_TEE_SGX,
LibUtils.L1_BLOCK_MISMATCH.selector
);

Expand Down Expand Up @@ -558,7 +558,7 @@ contract TaikoL1LibProvingWithTiers is TaikoL1TestBase {
proveBlock(Alice, meta, parentHash, stateRoot, stateRoot, meta.minTier, "");

// Prove as guardian
proveBlock(Carol, meta, parentHash, blockHash, stateRoot, LibTierId.TIER_GUARDIAN, "");
proveBlock(Carol, meta, parentHash, blockHash, stateRoot, LibTiers.TIER_GUARDIAN, "");

// Try to re-prove but reverts
proveBlock(
Expand All @@ -567,7 +567,7 @@ contract TaikoL1LibProvingWithTiers is TaikoL1TestBase {
parentHash,
stateRoot,
stateRoot,
LibTierId.TIER_TEE_SGX,
LibTiers.TIER_TEE_SGX,
LibProving.L1_INVALID_TIER.selector
);

Expand Down Expand Up @@ -596,7 +596,7 @@ contract TaikoL1LibProvingWithTiers is TaikoL1TestBase {

bytes32 blockHash = bytes32(uint256(1));
bytes32 stateRoot = bytes32(uint256(1));
proveBlock(Alice, meta, parentHash, blockHash, stateRoot, LibTierId.TIER_GUARDIAN, "");
proveBlock(Alice, meta, parentHash, blockHash, stateRoot, LibTiers.TIER_GUARDIAN, "");

// Try to contest with a lower tier proof- but should revert with L1_INVALID_TIER
proveBlock(
Expand All @@ -605,7 +605,7 @@ contract TaikoL1LibProvingWithTiers is TaikoL1TestBase {
parentHash,
blockHash,
stateRoot,
LibTierId.TIER_TEE_SGX,
LibTiers.TIER_TEE_SGX,
LibProving.L1_INVALID_TIER.selector
);

Expand Down
Loading

0 comments on commit 8113502

Please sign in to comment.