-
Notifications
You must be signed in to change notification settings - Fork 5
xAsset EVM diff with xBTC #7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft
doutv
wants to merge
87
commits into
xbtc-evm
Choose a base branch
from
evm
base: xbtc-evm
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
1. solidity version 0.6.12 -> 0.8.24 2. based on FiatTokenV2_1 -> xbtc 3. onlyOwner -> onlyRole(DEFAULT_ADMIN_ROLE)
…ion instead of a constant
…to reflect changes in initialization parameters and contract references.
1. solidity version 0.8.6 -> 0.8.24 2. OZ 4.x -> 5.x. Ownable now requires an initialOwner parameter in its constructor Address library functionCall and functionStaticCall signatures changed - the error message is now optional
…d compilation efficiency.
…ntracts - Introduced ExchangeRateUpdaterTest with tests for initialization, exchange rate updates, and ownership management. - Added ExchangeRateUpdaterE2ETest for end-to-end testing of the exchange rate update flow. - Created RateLimitTest covering caller management, allowance replenishment, and edge cases. - Implemented RateLimitHarness for testing internal functions of the RateLimit contract.
…umentation and implementation. default decimals = 18
…integration tests for StakedTokenV1 and ExchangeRateUpdater, including scenarios for daily rate updates, multiple callers, and emergency updates.
…l implementations
…al implementations and enhance code consistency
…sion 5.4.0 for consistency and stability
…h author and repository details, and remove package-lock.json to streamline dependency management.
…e token details, and enhance documentation on architecture, features, and project structure.
…nments for admin and denyLister
…ole management tests
…ript, ensuring it is both ProxyAdmin owner and has DEFAULT_ADMIN_ROLE in Token contract.
…just like in production
…ntract to scritps
… reflect accurate branding as "OKX Wrapped Staked ETH" for xBETH and "OKX Wrapped Staked SOL" for xOKSOL.
…ute paths for StakedTokenV1 and xToken, enhancing code clarity and maintainability.
… xOKSOL, and xSOL to use absolute paths, improving code organization and clarity. Update max supply for xETH to 1 billion.
…configuration for deployment and testing.
…onsistent addresses the default (via EIP‑2470 CREATE2), and for staked tokens (xBETH/xOKSOL) replaced the previous multi-transaction oracle setup with a single-transaction “atomic deployer” approach to eliminate configuration windows.
…ize TimelockController for managing roles and permissions. Update environment variable from ADMIN to TIMELOCK_CALLER for improved governance structure. Enhance deployment process with deterministic address generation using EIP-2470.
The test failure was caused by a timestamp persistence issue in Foundry tests. Here's what happened: Root Cause In Foundry, block.timestamp persists between tests within the same test contract. Previous tests in RateLimitHarnessTest had warped the time forward, and when test_ReplenishAllowance_CorrectBehaviorAfterMultipleIntervals() ran, it started with block.timestamp = 432001 instead of the expected initial value of 1. The Problem The test was capturing configuredTimestamp = block.timestamp which was 432001 (left over from previous tests), then warping forward by INTERVAL * 5 (432000 seconds), resulting in: Expected: 432001 + 432000 = 864001 Actual: 432001 (the correct behavior after the replenish call) The Fix Added vm.warp(1) at the start of the test to reset the timestamp to a known state, and changed to capture configuredTimestamp from allowancesLastSet after calling configureCaller, ensuring the test has a clean, predictable starting point.
…rity bug fix. It's fixing a vulnerability in the deny list enforcement
…ace TimelockCaller with TimelockAddress in environment variables. Update deployment logic to streamline the process and enhance clarity in the contract structure.
Zellic audit fix
…rify token categories, and restructure project documentation for improved clarity and organization.
evm develop
…CE and RATE_INTERVAL
…roxy deployment. Enhance logging in DeployUtils for better debugging of deterministic address prediction.
… and xOKSOL tokens.
add evm audit reports
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.