Skip to content

Commit 1e1e67f

Browse files
grasphopertbwebb22fusmaniimrice32nicholaspai
authored
feat: Sponsored Phase0 audit (#1207)
* feat: Hypercorelib (#1137) * HyperCoreLib init commit * add functions for submitting and canceling limit orders * clean up function & variable naming * add tokenInfo getter function * split HyperCoreLib into two libraries * rename helper library * add function for bridging to self on Core * Update natspec and naming * fix natspec * combine libraries into single library with MIT license * make all function camelCase * Make tif order types into enum * check tif against tif.max * feat: Hypercorelib - clean up decimal conversion functions (#1139) * HyperCoreLib init commit * add functions for submitting and canceling limit orders * clean up function & variable naming * add tokenInfo getter function * split HyperCoreLib into two libraries * rename helper library * add function for bridging to self on Core * Update natspec and naming * fix natspec * combine libraries into single library with MIT license * make all function camelCase * Make tif order types into enum * check tif against tif.max * add spotPx function * add minimumCoreAmountsToAmounts * clean up decimal conversion functions * feat: OP Adapter update (#1132) * feat: OP Adapter update Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Undo the branch logic Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * revert formatting Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Added tests Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Fixed test Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> --------- Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * feat: eraVM Spoke Pool 7702 Handling (#1122) * feat: eraVM Spoke Pool upgrade Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Added tests Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> --------- Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * feat: add safe bridge check (#1140) * Add function for checking if bridge amount is safe * fix function natspec * feat: Sponsored Bridging - CCTP (#1135) * feat: SponsoredCCTPLib Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Updated stuct hash for sig validation Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Added src/dst periphery contracts Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * updates const Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Updated event names and params Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Updated receive event Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Added hypercore lib Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Added safe guards Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Added wip swap handler Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Added missing calls Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Added limit order queue Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * updated simple transfer flow Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Added hyper core forwarder Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * init hyper core forwarder swap func Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * progress Signed-off-by: Ihor Farion <ihor@umaproject.org> * complete _initiateSwapFlow2 Signed-off-by: Ihor Farion <ihor@umaproject.org> * Added finalize pending swaps function Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * removed finalTokenHCoreId Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * correct the limit price, size calculation, and send to SwapHandler logic Signed-off-by: Ihor Farion <ihor@umaproject.org> * added access control Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * first draft of cancelLimitOrderByCloid + submitNewLimitOrder Signed-off-by: Ihor Farion <ihor@umaproject.org> * complete the newMinCoreAmountFromLO calculation Signed-off-by: Ihor Farion <ihor@umaproject.org> * add a check to submitNewLimitOrder that safeguards new params against old calculated token amounts Signed-off-by: Ihor Farion <ihor@umaproject.org> * add fixes wrt new HyperCoreLib Signed-off-by: Ihor Farion <ihor@umaproject.org> * adjust functionality using new HyperCoreLib fns Signed-off-by: Ihor Farion <ihor@umaproject.org> * add _executeFlow + multiple random improvements Signed-off-by: Ihor Farion <ihor@umaproject.org> * some renamings for consistency Signed-off-by: Ihor Farion <ihor@umaproject.org> * try to improve donationBox interactions Signed-off-by: Ihor Farion <ihor@umaproject.org> * added bridge balance check before transfer Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * added fallback to send on evm Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Updated dst periphery to use executeflow func Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * unified fallback logic Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * updated account activation logic Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Removed ownable Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Removed maxBpsToSponsor from sig check Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * check for mint recipient in message validation Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * make the bridge safety buffer configurable; use new isCoreAmountSafeToBridge function Signed-off-by: Ihor Farion <ihor@umaproject.org> * improve fallback to hyperevm emitted event and logic Signed-off-by: Ihor Farion <ihor@umaproject.org> * added sweep functions Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Added min delay between finalizations Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * added commulative funcs Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * rewrite _initiateSwapFlow to support non-sponsored flow Signed-off-by: Ihor Farion <ihor@umaproject.org> * fallback flows and events Signed-off-by: Ihor Farion <ihor@umaproject.org> * misc todos Signed-off-by: Ihor Farion <ihor@umaproject.org> * misc improvements Signed-off-by: Ihor Farion <ihor@umaproject.org> * misc todos and fixes Signed-off-by: Ihor Farion <ihor@umaproject.org> * rough draft of correct size calculations Signed-off-by: Ihor Farion <ihor@umaproject.org> * new calc functions, hook up to swap flow Signed-off-by: Ihor Farion <ihor@umaproject.org> * fix math in submitUpdatedLimitOrder Signed-off-by: Ihor Farion <ihor@umaproject.org> * correct the amt calc Signed-off-by: Ihor Farion <ihor@umaproject.org> * add updated comments Signed-off-by: Ihor Farion <ihor@umaproject.org> * misc todos Signed-off-by: Ihor Farion <ihor@umaproject.org> * add _getSuggestedPriceX1e8 and comments Signed-off-by: Ihor Farion <ihor@umaproject.org> * comments + misc fixes Signed-off-by: Ihor Farion <ihor@umaproject.org> * improve fallback hyperEVM flow + fix donationBox interactions Signed-off-by: Ihor Farion <ihor@umaproject.org> * update account activation logic for SwapHandler Signed-off-by: Ihor Farion <ihor@umaproject.org> * add a comment Signed-off-by: Ihor Farion <ihor@umaproject.org> * add PX_D to _calcLOAmountsSell Signed-off-by: Ihor Farion <ihor@umaproject.org> * add maxUserSlippage for CCTP flow; add quote deadline buffer Signed-off-by: Ihor Farion <ihor@umaproject.org> * feedback Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Stack too deep, amount less fee & removal of isFinalized Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * fix incorrect calculation of non-sponsored token amount Signed-off-by: Ihor Farion <ihor@umaproject.org> * internal => extrenal in HyperCoreLib Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * fix incorrect bridge safety check Signed-off-by: Ihor Farion <ihor@umaproject.org> * change from time-based buffer between fund pulls to block-based buffer Signed-off-by: Ihor Farion <ihor@umaproject.org> * Update quote lib Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * use safeErc20 in src Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> --------- Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> Signed-off-by: Ihor Farion <ihor@umaproject.org> Co-authored-by: Ihor Farion <ihor@umaproject.org> * feat: sponsored bridging -- OFT track (#1134) * commit before too late Signed-off-by: Ihor Farion <ihor@umaproject.org> * remove lz deps; reimplement minimal lz options functionality Signed-off-by: Ihor Farion <ihor@umaproject.org> * some polish and comments Signed-off-by: Ihor Farion <ihor@umaproject.org> * polish Signed-off-by: Ihor Farion <ihor@umaproject.org> * move things around Signed-off-by: Ihor Farion <ihor@umaproject.org> * add event for sponsored sends tracking Signed-off-by: Ihor Farion <ihor@umaproject.org> * polish Signed-off-by: Ihor Farion <ihor@umaproject.org> * add barebones DstOFTHandler Signed-off-by: Ihor Farion <ihor@umaproject.org> * improve lib quality Signed-off-by: Ihor Farion <ihor@umaproject.org> * added OFTComposeMsgCodec Signed-off-by: Ihor Farion <ihor@umaproject.org> * progress .. Flow implementaions left Signed-off-by: Ihor Farion <ihor@umaproject.org> * rough first draft of transfer-only flow Signed-off-by: Ihor Farion <ihor@umaproject.org> * add AccessControl Signed-off-by: Ihor Farion <ihor@umaproject.org> * pull account creation funds from donationbox Signed-off-by: Ihor Farion <ihor@umaproject.org> * remove HyperCoreLib Signed-off-by: Ihor Farion <ihor@umaproject.org> * first ROUGHEST draft of swap flow implementation Signed-off-by: Ihor Farion <ihor@umaproject.org> * a more complete implementation Signed-off-by: Ihor Farion <ihor@umaproject.org> * copy Forwarder + misc helper contracts into this branch Signed-off-by: Ihor Farion <ihor@umaproject.org> * adjust DstOFTHandler to use HyperCoreForwarder-implemented flows, instead of implementing flows from Handler direcly Signed-off-by: Ihor Farion <ihor@umaproject.org> * update error messageas Signed-off-by: Ihor Farion <ihor@umaproject.org> * updates Signed-off-by: Ihor Farion <ihor@umaproject.org> * added gas limits and max slippage bps Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * polish Signed-off-by: Ihor Farion <ihor@umaproject.org> * update HyperCoreForwarder import Signed-off-by: Ihor Farion <ihor@umaproject.org> * add maxUserSlippageBps to emitted event Signed-off-by: Ihor Farion <ihor@umaproject.org> * polish Signed-off-by: Ihor Farion <ihor@umaproject.org> * fix typechain oddness Signed-off-by: Ihor Farion <ihor@umaproject.org> * update HyperCoreFlowExecutor Signed-off-by: Ihor Farion <ihor@umaproject.org> * Deploy script Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * idk. fixing typechain :) Signed-off-by: Ihor Farion <ihor@umaproject.org> * deploy + test scripts + fix bugs Signed-off-by: Ihor Farion <ihor@umaproject.org> * update .gitignore and script Signed-off-by: Ihor Farion <ihor@umaproject.org> * fix Signed-off-by: Ihor Farion <ihor@umaproject.org> --------- Signed-off-by: Ihor Farion <ihor@umaproject.org> Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> Co-authored-by: Faisal Usmani <faisal.of.usmani@gmail.com> * fix: add fixes for issues that codex found (#1142) Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * fix account activation flow Signed-off-by: Ihor Farion <ihor@umaproject.org> * use CREATE2 for deterministic SwapHandler addresses. Check for HyperCore account existence before allowing to set a final token or deploy a HyperCoreFlowExecutor contract Signed-off-by: Ihor Farion <ihor@umaproject.org> * improve events Signed-off-by: Ihor Farion <ihor@umaproject.org> * misc Signed-off-by: Ihor Farion <ihor@umaproject.org> * feat: add arbitrary actions execution to sponsored bridging (#1143) * feat: add arbitrary actions execution to sponsored bridging Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * WIP Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * WIP Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * WIP Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * WIP Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * WIP Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * WIP Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * WIP Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * fix the MIN_COMPOSE_MSG_BYTE_LENGTH Signed-off-by: Ihor Farion <ihor@umaproject.org> * WIP Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * WIP Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * WIP Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * WIP Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * WIP Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * WIP Signed-off-by: Matt Rice <matthewcrice32@gmail.com> --------- Signed-off-by: Matt Rice <matthewcrice32@gmail.com> Signed-off-by: Ihor Farion <ihor@umaproject.org> Co-authored-by: Ihor Farion <ihor@umaproject.org> * Update contracts/periphery/mintburn/HyperCoreFlowExecutor.sol Co-authored-by: nicholaspai <9457025+nicholaspai@users.noreply.github.com> * Update contracts/periphery/mintburn/HyperCoreFlowExecutor.sol Co-authored-by: nicholaspai <9457025+nicholaspai@users.noreply.github.com> * fix typo Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * moved nonce setting before external calls Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Fix: Remvoed token info setting on deploy Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Undo commented out require Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Remove unused constructor args Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * move LayerZero libs to `external/` (#1151) Signed-off-by: Ihor Farion <ihor@umaproject.org> * feat: add swapsProcessed return values to finalizePendingsSwaps (#1145) * add swapsProcessed return values to finalizePendingsSwaps Signed-off-by: Taylor Webb <tbwebb22@gmail.com> * return finalized swap amount & number of swaps remaining Signed-off-by: Taylor Webb <tbwebb22@gmail.com> * update var name process to finalize Signed-off-by: Taylor Webb <tbwebb22@gmail.com> --------- Signed-off-by: Taylor Webb <tbwebb22@gmail.com> * fix: arbitrary actions flow (#1149) * fix Signed-off-by: Ihor Farion <ihor@umaproject.org> * a few renames Signed-off-by: Ihor Farion <ihor@umaproject.org> * remove dedundant maxBpsToSponsor enforcement Signed-off-by: Ihor Farion <ihor@umaproject.org> * save 1 stack depth. Signed-off-by: Ihor Farion <ihor@umaproject.org> * add _calcFinalExtraFees Signed-off-by: Ihor Farion <ihor@umaproject.org> * comment Signed-off-by: Ihor Farion <ihor@umaproject.org> --------- Signed-off-by: Ihor Farion <ihor@umaproject.org> * chore: Added NatSpec to CCTP contracts (#1144) Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> Co-authored-by: Ihor Farion <65650773+grasphoper@users.noreply.github.com> * add reentrancy guards and follow the CEI pattern where possible (#1148) Signed-off-by: Ihor Farion <ihor@umaproject.org> * improve: Move BytesLib to external folder (#1153) * improve: Move BytesLib to external folder Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Undo var scoping Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> --------- Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * fix: HyperCoreFlowExecutor stack too deep (#1154) * fix stack too deep - need to verify equivalance Signed-off-by: Taylor Webb <tbwebb22@gmail.com> * update comment Signed-off-by: Taylor Webb <tbwebb22@gmail.com> * remove confusing comment Signed-off-by: Taylor Webb <tbwebb22@gmail.com> * use CommonFlowParams struct Signed-off-by: Taylor Webb <tbwebb22@gmail.com> * use CommonFlowParams struct in _executeFlow Signed-off-by: Taylor Webb <tbwebb22@gmail.com> * remove confusing comment Signed-off-by: Taylor Webb <tbwebb22@gmail.com> * move things around Signed-off-by: Ihor Farion <ihor@umaproject.org> * remove remappings.txt Signed-off-by: Ihor Farion <ihor@umaproject.org> * chore: Update solidity and OZ versions (#1156) * chore: Update solidity and OZ versions Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * Upgrade hardhat as well Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * downgrade to 0.8.24 Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> --------- Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> --------- Signed-off-by: Taylor Webb <tbwebb22@gmail.com> Signed-off-by: Ihor Farion <ihor@umaproject.org> Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> Co-authored-by: Ihor Farion <ihor@umaproject.org> Co-authored-by: Faisal Usmani <faisal.of.usmani@gmail.com> * feat: remove swap calcs form contracts (#1158) * remove Signed-off-by: Ihor Farion <ihor@umaproject.org> * polish Signed-off-by: Ihor Farion <ihor@umaproject.org> * add _finalizeSwapFlows Signed-off-by: Ihor Farion <ihor@umaproject.org> * complete finalization flow Signed-off-by: Ihor Farion <ihor@umaproject.org> * add a comment Signed-off-by: Ihor Farion <ihor@umaproject.org> * add Signed-off-by: Ihor Farion <ihor@umaproject.org> * Update events (#1159) * WIP Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * WIP Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * WIP Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * WIP Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * WIP Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * WIP Signed-off-by: Matt Rice <matthewcrice32@gmail.com> --------- Signed-off-by: Matt Rice <matthewcrice32@gmail.com> * fix cumulativeSponsoredAmount + add event Signed-off-by: Ihor Farion <ihor@umaproject.org> * update comment Signed-off-by: Ihor Farion <ihor@umaproject.org> * Update contracts/periphery/mintburn/HyperCoreFlowExecutor.sol Co-authored-by: Matt Rice <matthewcrice32@gmail.com> --------- Signed-off-by: Ihor Farion <ihor@umaproject.org> Signed-off-by: Matt Rice <matthewcrice32@gmail.com> Co-authored-by: Matt Rice <matthewcrice32@gmail.com> * add Bytes from OZ (#1160) * fix: Set version to cancun (#1162) * fix: Set version to cancun Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * remove evmVersion on overrides Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> --------- Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> * fix: contract sizes (#13) Signed-off-by: Ihor Farion <ihor@umaproject.org> Signed-off-by: Matt Rice <matthewcrice32@gmail.com> Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> Signed-off-by: Taylor Webb <tbwebb22@gmail.com> Co-authored-by: Matt Rice <matthewcrice32@gmail.com> Co-authored-by: Faisal Usmani <faisal.of.usmani@gmail.com> Co-authored-by: Taylor Webb <84364476+tbwebb22@users.noreply.github.com> Co-authored-by: Taylor Webb <tbwebb22@gmail.com> * chore: common branch (#21) Signed-off-by: Ihor Farion <ihor@umaproject.org> Signed-off-by: Matt Rice <matthewcrice32@gmail.com> Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> Signed-off-by: nicholaspai npai.nyc@gmail.com Signed-off-by: nicholaspai <npai.nyc@gmail.com> Signed-off-by: Taylor Webb <tbwebb22@gmail.com> Co-authored-by: Matt Rice <matthewcrice32@gmail.com> Co-authored-by: Faisal Usmani <faisal.of.usmani@gmail.com> Co-authored-by: nicholaspai <9457025+nicholaspai@users.noreply.github.com> Co-authored-by: Taylor Webb <84364476+tbwebb22@users.noreply.github.com> Co-authored-by: Taylor Webb <tbwebb22@gmail.com> * improve: update verify bytecode script to work with `foundry` deployments (#82) Signed-off-by: Ihor Farion <ihor@umaproject.org> * fix duplicate foundry flag Signed-off-by: Ihor Farion <ihor@umaproject.org> * conditional compilation when testing w/ hardhat Signed-off-by: Ihor Farion <ihor@umaproject.org> --------- Signed-off-by: Faisal Usmani <faisal.of.usmani@gmail.com> Signed-off-by: Ihor Farion <ihor@umaproject.org> Signed-off-by: Matt Rice <matthewcrice32@gmail.com> Signed-off-by: Taylor Webb <tbwebb22@gmail.com> Signed-off-by: nicholaspai npai.nyc@gmail.com Signed-off-by: nicholaspai <npai.nyc@gmail.com> Co-authored-by: Taylor Webb <84364476+tbwebb22@users.noreply.github.com> Co-authored-by: Faisal Usmani <faisal.of.usmani@gmail.com> Co-authored-by: Matt Rice <matthewcrice32@gmail.com> Co-authored-by: nicholaspai <9457025+nicholaspai@users.noreply.github.com> Co-authored-by: Taylor Webb <tbwebb22@gmail.com>
1 parent aa963f7 commit 1e1e67f

File tree

99 files changed

+11977
-187
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

99 files changed

+11977
-187
lines changed

.github/workflows/publish.yml

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ on:
1414
types: [created]
1515
permissions:
1616
contents: write
17+
id-token: write
1718
env:
1819
NODE_VERSION: 22.18
1920
EVM_ARTIFACTS_PATHS: |
@@ -29,21 +30,23 @@ jobs:
2930
build:
3031
runs-on: ubuntu-latest
3132
steps:
32-
- uses: actions/checkout@v2
33+
- uses: actions/checkout@v4
3334

3435
# Note we set an `id` called `release`. We'll use that later...
3536
- name: Validate and extract release information
3637
id: release
3738
uses: manovotny/github-releases-for-automated-package-publishing-action@v2.0.1
3839

39-
# Setup .npmrc file to publish to npm
40-
- uses: actions/setup-node@v3
40+
# Enable npm trusted publishing (OIDC) for releases
41+
- uses: actions/setup-node@v4
4142
with:
4243
node-version: "${{ env.NODE_VERSION }}"
43-
always-auth: true
4444
registry-url: "https://registry.npmjs.org"
4545
cache: "yarn"
4646

47+
- name: Update npm
48+
run: npm install -g npm@latest
49+
4750
- name: Install packages
4851
run: yarn install --frozen-lockfile
4952

@@ -88,25 +91,23 @@ jobs:
8891
# If there *is not* a tag (ie. `beta`, `canary`, etc.), we publish a
8992
# version of a package (ie. 1.2.3).
9093
#
91-
# This example is using npm to publish, but you could just as easily
92-
# use yarn, if you prefer. It's also publishing to the NPM registry,
93-
# thus, it's using `NPM_TOKEN`, but you could just as easily use
94-
# `GITHUB_TOKEN` if you were publishing to the GitHub Package registry.
94+
# This workflow publishes via npm using GitHub's OIDC integration for
95+
# trusted publishing, so no long-lived tokens are required.
9596

9697
# This will publish a "pre-release" or "tagged" version of a package.
9798

9899
# This will publish a version of a package.
99100
- name: Publish version
100101
if: steps.release.outputs.tag == ''
101-
run: yarn publish
102+
run: npm publish
102103
env:
103-
NPM_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
104+
NPM_CONFIG_PROVENANCE: "false"
104105

105106
- name: Publish tagged version
106107
if: steps.release.outputs.tag != ''
107-
run: yarn publish --tag ${{ steps.release.outputs.tag }}
108+
run: npm publish --tag ${{ steps.release.outputs.tag }}
108109
env:
109-
NPM_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
110+
NPM_CONFIG_PROVENANCE: "false"
110111

111112
# Due to GitHub cache scoping, we cannot easily share the cache between releases even if the cache key is the same.
112113
# In order to not slow down the NPM package publishing, we move the building of SVM binaries for GitHub release to a
@@ -115,7 +116,7 @@ jobs:
115116
name: Release SVM production binaries on GitHub
116117
runs-on: ubuntu-latest
117118
steps:
118-
- uses: actions/checkout@v2
119+
- uses: actions/checkout@v4
119120

120121
- name: Setup Anchor & Solana
121122
uses: ./.github/actions/setup-solana-anchor
@@ -138,7 +139,7 @@ jobs:
138139
name: Release SVM test binaries on GitHub
139140
runs-on: ubuntu-latest
140141
steps:
141-
- uses: actions/checkout@v2
142+
- uses: actions/checkout@v4
142143

143144
- name: Setup Anchor & Solana
144145
uses: ./.github/actions/setup-solana-anchor

.solhint.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
"rules": {
44
"compiler-version": ["error", "^0.8.0"],
55
"func-visibility": ["warn", { "ignoreConstructors": true }],
6-
"const-name-snakecase": "off"
6+
"const-name-snakecase": "off",
7+
"no-console": "off"
78
}
89
}
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
{
2+
"transactions": [
3+
{
4+
"hash": "0x6c4f6d7537530911757ecc317e0b5a39b5caf7089ab5549cb4299c830a9d854c",
5+
"transactionType": "CREATE",
6+
"contractName": "SponsoredCCTPSrcPeriphery",
7+
"contractAddress": "0xce1ffe01ebb4f8521c12e74363a396ee3d337e1b",
8+
"function": null,
9+
"arguments": ["0x28b5a0e9C621a5BadaA536219b3a228C8168cf5d", "3", "0x9A8f92a830A5cB89a3816e3D267CB7791c16b04D"],
10+
"transaction": {
11+
"from": "0x9a8f92a830a5cb89a3816e3d267cb7791c16b04d",
12+
"gas": "0x1271f2",
13+
"value": "0x0",
14+
"input": "0x60c03461012157601f61100738819003918201601f19168301916001600160401b03831184841017610125578084926060946040528339810103126101215761004781610139565b60208201519163ffffffff831683036101215760406100669101610139565b905f549260018060a01b03908160018060a01b03199333858816175f5560405196823391167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a31660805260a0527ff0a1b42b86a218bb35dbc2254545839ce4b1bf1d3780b5099e3e0abfc7a5b200921690825416179055610eb9908161014e8239608051818181610170015281816107b701528181610826015281816108b001526109b3015260a0518181816101b1015261061c0152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b51906001600160a01b03821682036101215756fe6080806040526004361015610012575f80fd5b5f905f3560e01c908163238ac93314610b645750806363cd663b146102d45780636c19e78314610261578063715018a6146101fb5780638da5cb5b146101d55780638ddb4a89146101945780639748cf7c14610150578063f2fde38b146100d15763feb6172414610081575f80fd5b346100ce5760203660031901126100ce5760ff604060209260043581527ff0a1b42b86a218bb35dbc2254545839ce4b1bf1d3780b5099e3e0abfc7a5b20184522054166040519015158152f35b80fd5b50346100ce5760203660031901126100ce576004356001600160a01b0380821680920361014c57610100610cb2565b811561014c575f548273ffffffffffffffffffffffffffffffffffffffff198216175f55167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a380f35b8280fd5b50346100ce57806003193601126100ce5760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b50346100ce57806003193601126100ce57602060405163ffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b50346100ce57806003193601126100ce576001600160a01b036020915416604051908152f35b50346100ce57806003193601126100ce57610214610cb2565b5f6001600160a01b03815473ffffffffffffffffffffffffffffffffffffffff1981168355167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a380f35b50346100ce5760203660031901126100ce576004356001600160a01b0381168091036102d05761028f610cb2565b7ff0a1b42b86a218bb35dbc2254545839ce4b1bf1d3780b5099e3e0abfc7a5b2009073ffffffffffffffffffffffffffffffffffffffff1982541617905580f35b5080fd5b5034610995576003196040368201126109955767ffffffffffffffff60043511610995576102008091600435360301126109955760405190810181811067ffffffffffffffff82111761097657604052610332600435600401610c01565b8152610342602460043501610c01565b602082015260043560448101356040830152606481013560608301526084810135608083015260a481013560a083015260c481013560c08301526103889060e401610c01565b60e08201526004356101048101356101008301526101248101356101208301526101448101356101408301526101648101356101608301526101848101356101808301526101a48101356101a08301526101c4013560ff81169003610995576004356101c48101356101c08301526101e4013567ffffffffffffffff81116109955761041b906004369181350101610c2e565b6101e082015267ffffffffffffffff602435116109955761044136602435600401610c2e565b6001600160a01b037ff0a1b42b86a218bb35dbc2254545839ce4b1bf1d3780b5099e3e0abfc7a5b200541663ffffffff83511663ffffffff60208501511660408501516060860151608087015160a08801519060c08901519263ffffffff60e08b01511694604051966020880198895260408801526060870152608086015260a085015260c084015260e083015261010082015261010081526104e381610ba6565b5190206101008401516101208501516101408601516101608701516101808801516101a08901519060ff6101c08b015116926101e08b01516020815191012094604051966020880198895260408801526060870152608086015260a085015260c084015260e0830152610100820152610100815261056081610ba6565b51902060405191602083015260408201526040815280606081011067ffffffffffffffff6060830111176109765760608101604052602081519101206105a68382610daa565b6005819492941015610b5057159283610b3d575b508215610aac575b505015610a9a576101008201515f527ff0a1b42b86a218bb35dbc2254545839ce4b1bf1d3780b5099e3e0abfc7a5b20160205260ff60405f205416610a88576101208201514211610a765763ffffffff82511663ffffffff7f00000000000000000000000000000000000000000000000000000000000000001603610a6457606082015163ffffffff602084015116906040840151916080850151918260a01c610a525760a08601519260c087015163ffffffff60e089015116610100890151916107036101208b0151936106f56101408d01518d6101608101516101808201516101a0830151916101e060ff6101c086015116940151946040519b8c9860208a015260408901526060880152608087015260a086015260c085015260e084015261010080840152610120830190610c74565b03601f198101855284610bdf565b6101008a01515f527ff0a1b42b86a218bb35dbc2254545839ce4b1bf1d3780b5099e3e0abfc7a5b20160205260405f20600160ff198254161790556040516323b872dd60e01b6020820152336024820152306044820152856064820152606481528060a081011067ffffffffffffffff60a083011117610976578060a061079792016040526001600160a01b038616610cdd565b60405160208101905f8063095ea7b360e01b938481526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000166024850152896044850152604484526107ef84610bc3565b835190826001600160a01b038b165af1610807610d7b565b81610a23575b5080610a10575b15610999575b50506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163b15610995575f966001600160a01b036108a3956040519a8b998a9963779b432d60e01b8b5260048b015260248a01526044890152166064870152608486015260a485015260c484015261010060e4840152610104830190610c74565b0381836001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1801561098a57610959575b506101008201517f42d1b5f3692944aee65b659fda3e120f817f17d8f2ac9a256f6fc5d642a591fe6101808401519361012081015190610140810151906101a06101608201519101519160405193845260208401526040830152606082015260a0608082015280610953339560a0830190610c74565b0390a480f35b90925067ffffffffffffffff8111610976576040525f915f6108dd565b634e487b7160e01b5f52604160045260245ffd5b6040513d5f823e3d90fd5b5f80fd5b6109fa610a09926040519060208201526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001660248201525f6044820152604481526109eb81610bc3565b6001600160a01b038816610cdd565b6001600160a01b038616610cdd565b5f8061081a565b506001600160a01b0386163b1515610814565b8051801592508215610a38575b50505f61080d565b610a4b9250602080918301019101610cc5565b5f80610a30565b6040516379ec0ed760e11b8152600490fd5b604051631b91204960e01b8152600490fd5b604051631da7447960e21b8152600490fd5b604051633ab3447f60e11b8152600490fd5b604051638baa579f60e01b8152600490fd5b5f91925081906040516020810190630b135d3f60e11b95868352602482015260406044820152610af181610ae3606482018a610c74565b03601f198101835282610bdf565b51915afa90610afe610d7b565b82610b2f575b82610b13575b50505f806105c2565b9091506020818051810103126109955760200151145f80610b0a565b915060208251101591610b04565b6001600160a01b0316811492505f6105ba565b634e487b7160e01b5f52602160045260245ffd5b34610995575f366003190112610995576020906001600160a01b037ff0a1b42b86a218bb35dbc2254545839ce4b1bf1d3780b5099e3e0abfc7a5b20054168152f35b610120810190811067ffffffffffffffff82111761097657604052565b6080810190811067ffffffffffffffff82111761097657604052565b90601f8019910116810190811067ffffffffffffffff82111761097657604052565b359063ffffffff8216820361099557565b67ffffffffffffffff811161097657601f01601f191660200190565b81601f8201121561099557803590610c4582610c12565b92610c536040519485610bdf565b8284526020838301011161099557815f926020809301838601378301015290565b91908251928382525f5b848110610c9e575050825f602080949584010152601f8019910116010190565b602081830181015184830182015201610c7e565b6001600160a01b035f5416330361099557565b90816020910312610995575180151581036109955790565b6001600160a01b03166040516040810181811067ffffffffffffffff82111761097657610d4b937f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656460205f948594604052818152015260208151910182855af1610d45610d7b565b91610e5a565b8051908115918215610d61575b50501561099557565b610d749250602080918301019101610cc5565b5f80610d58565b3d15610da5573d90610d8c82610c12565b91610d9a6040519384610bdf565b82523d5f602084013e565b606090565b9060418151145f14610dd657610dd291602082015190606060408401519301515f1a90610ddf565b9091565b50505f90600290565b7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08411610e4f576020935f9360ff60809460405194855216868401526040830152606082015282805260015afa1561098a575f516001600160a01b03811615610e4757905f90565b505f90600190565b505050505f90600390565b9015610e7457815115610e6b575090565b3b156109955790565b50805190811561099557602001fdfea26469706673582212208c663c4d9608c58c567c60bd0a3b59cd34b106eb0822cc185cd73394904c00ef64736f6c6343000818003300000000000000000000000028b5a0e9c621a5badaa536219b3a228c8168cf5d00000000000000000000000000000000000000000000000000000000000000030000000000000000000000009a8f92a830a5cb89a3816e3d267cb7791c16b04d",
15+
"nonce": "0x1491",
16+
"chainId": "0xa4b1"
17+
},
18+
"additionalContracts": [],
19+
"isFixedGasLimit": false
20+
}
21+
],
22+
"receipts": [
23+
{
24+
"status": "0x1",
25+
"cumulativeGasUsed": "0x1566bc",
26+
"logs": [
27+
{
28+
"address": "0xce1ffe01ebb4f8521c12e74363a396ee3d337e1b",
29+
"topics": [
30+
"0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0",
31+
"0x0000000000000000000000000000000000000000000000000000000000000000",
32+
"0x0000000000000000000000009a8f92a830a5cb89a3816e3d267cb7791c16b04d"
33+
],
34+
"data": "0x",
35+
"blockHash": "0xb96390ff4cb98b461e0035779e43c62874dd281b874612d90ceb474c7af460e7",
36+
"blockNumber": "0x183aa1d0",
37+
"blockTimestamp": "0x692f41c1",
38+
"transactionHash": "0x6c4f6d7537530911757ecc317e0b5a39b5caf7089ab5549cb4299c830a9d854c",
39+
"transactionIndex": "0x5",
40+
"logIndex": "0xc",
41+
"removed": false
42+
}
43+
],
44+
"logsBloom": "0x00000000000000020000000000000000000000000000000000800000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000020000000000000000000800000000000000000000000000040000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000010000000000000000000000000000020000001000000000000000000000000000000000000000000000000000000000000",
45+
"type": "0x2",
46+
"transactionHash": "0x6c4f6d7537530911757ecc317e0b5a39b5caf7089ab5549cb4299c830a9d854c",
47+
"transactionIndex": "0x5",
48+
"blockHash": "0xb96390ff4cb98b461e0035779e43c62874dd281b874612d90ceb474c7af460e7",
49+
"blockNumber": "0x183aa1d0",
50+
"gasUsed": "0xe0c5d",
51+
"effectiveGasPrice": "0xa67930",
52+
"from": "0x9a8f92a830a5cb89a3816e3d267cb7791c16b04d",
53+
"to": null,
54+
"contractAddress": "0xce1ffe01ebb4f8521c12e74363a396ee3d337e1b",
55+
"gasUsedForL1": "0xc55",
56+
"l1BlockNumber": "0x16d1c86",
57+
"timeboosted": false
58+
}
59+
],
60+
"libraries": [],
61+
"pending": [],
62+
"returns": {},
63+
"timestamp": 1764704723344,
64+
"chain": 42161,
65+
"commit": "4b103fe"
66+
}

0 commit comments

Comments
 (0)