diff --git a/docs/pages/ciphernode-operators/index.mdx b/docs/pages/ciphernode-operators/index.mdx index 2c97fbbe04..811659afb9 100644 --- a/docs/pages/ciphernode-operators/index.mdx +++ b/docs/pages/ciphernode-operators/index.mdx @@ -41,14 +41,14 @@ The Interfold protocol uses several contracts that work together: | Contract | Address | Deploy block | | -------------------- | -------------------------------------------- | ------------ | -| Enclave | `0xB47B267876B60a06138Bc9dfCee7aa3E26907CCB` | 10697349 | -| CiphernodeRegistry | `0x497Feea9abB72229aab1584c22b5416ff128926B` | 10697344 | -| BondingRegistry | `0x788046999530304DDe121e19eD456180Aca6B7c1` | 10697345 | -| SlashingManager | `0xd984728053ed3a17921fb3E27615cdcC796A8d9e` | 10697343 | -| E3RefundManager | `0x91eebD89bb00CBE9E5Eabf2a01a22704f88AD098` | 10697351 | -| EnclaveTicketToken | `0xD4BF670ABbf0849858dE08A3956B266D75aC52D5` | 10697342 | -| EnclaveToken (ENCL) | `0x62440E4b344D2A8aAf14c72b845F978eE615B7be` | 10697341 | -| MockUSDC (fee token) | `0x9B1820D75bb09433D17C674A289fc6dD53e9c389` | 10697340 | +| Enclave | `0x670eFE043d1D340148037b4b76c4F9dfED294309` | 10939874 | +| CiphernodeRegistry | `0x4D707127F72a216EA116AF0B4262dD7382F84259` | 10939869 | +| BondingRegistry | `0xb9b64c5e0a30f38ed33760f299613087aAe87283` | 10939870 | +| SlashingManager | `0x0553387EE0992Fe339579728B6c777164fD1de40` | 10939868 | +| E3RefundManager | `0xD327ec50C7a8909f90DE15fe53872e88B4948Ee0` | 10939876 | +| EnclaveTicketToken | `0x2446f2AC9632f17af96053e48dEDff44b50711Ea` | 10939867 | +| EnclaveToken (ENCL) | `0xbAb3220FD04a193a192F07879673597Cd695Cb03` | 10939866 | +| MockUSDC (fee token) | `0x2721Cdf281d40744aD567cBf3e7100F60bcbAE79` | 10939865 | The DKG and decryption aggregator circuits are deployed as the sole on-chain verifiers for BFV public-key publication and plaintext decryption respectively (each aggregator internally verifies diff --git a/docs/pages/ciphernode-operators/running.mdx b/docs/pages/ciphernode-operators/running.mdx index 45f431aa56..b8cbaa6eac 100644 --- a/docs/pages/ciphernode-operators/running.mdx +++ b/docs/pages/ciphernode-operators/running.mdx @@ -97,14 +97,14 @@ chains: rpc_url: 'wss://ethereum-sepolia-rpc.publicnode.com' contracts: enclave: - address: '0xB47B267876B60a06138Bc9dfCee7aa3E26907CCB' - deploy_block: 10697349 + address: '0x670eFE043d1D340148037b4b76c4F9dfED294309' + deploy_block: 10939874 ciphernode_registry: - address: '0x497Feea9abB72229aab1584c22b5416ff128926B' - deploy_block: 10697344 + address: '0x4D707127F72a216EA116AF0B4262dD7382F84259' + deploy_block: 10939869 bonding_registry: - address: '0x788046999530304DDe121e19eD456180Aca6B7c1' - deploy_block: 10697345 + address: '0xb9b64c5e0a30f38ed33760f299613087aAe87283' + deploy_block: 10939870 ``` ### Start Your Node @@ -177,14 +177,14 @@ chains: rpc_url: 'wss://ethereum-sepolia-rpc.publicnode.com' contracts: enclave: - address: '0xB47B267876B60a06138Bc9dfCee7aa3E26907CCB' - deploy_block: 10697349 + address: '0x670eFE043d1D340148037b4b76c4F9dfED294309' + deploy_block: 10939874 ciphernode_registry: - address: '0x497Feea9abB72229aab1584c22b5416ff128926B' - deploy_block: 10697344 + address: '0x4D707127F72a216EA116AF0B4262dD7382F84259' + deploy_block: 10939869 bonding_registry: - address: '0x788046999530304DDe121e19eD456180Aca6B7c1' - deploy_block: 10697345 + address: '0xb9b64c5e0a30f38ed33760f299613087aAe87283' + deploy_block: 10939870 ``` ### Run the Container @@ -270,9 +270,9 @@ Each contract can be specified as a simple address string or with a deploy block ```yaml contracts: enclave: - address: '0xB47B267876B60a06138Bc9dfCee7aa3E26907CCB' - deploy_block: 10697349 - ciphernode_registry: '0x497Feea9abB72229aab1584c22b5416ff128926B' + address: '0x670eFE043d1D340148037b4b76c4F9dfED294309' + deploy_block: 10939874 + ciphernode_registry: '0x4D707127F72a216EA116AF0B4262dD7382F84259' ``` --- diff --git a/examples/CRISP/client/.npmrc b/examples/CRISP/client/.npmrc index 6906473d76..3b3381a101 100644 --- a/examples/CRISP/client/.npmrc +++ b/examples/CRISP/client/.npmrc @@ -1,2 +1,3 @@ -# Vercel / standalone installs: resolve @crisp-e3/sdk from npm (0.9.0), not the monorepo workspace. +# Vercel / standalone installs: resolve @crisp-e3/sdk from npm, not the monorepo workspace. ignore-workspace=true +shared-workspace-lockfile=false diff --git a/examples/CRISP/client/package.json b/examples/CRISP/client/package.json index 87247137e5..ee0acbb43f 100644 --- a/examples/CRISP/client/package.json +++ b/examples/CRISP/client/package.json @@ -18,7 +18,7 @@ "deploy": "gh-pages -d dist" }, "dependencies": { - "@crisp-e3/sdk": "0.9.0", + "@crisp-e3/sdk": "0.10.0", "@emotion/babel-plugin": "^11.11.0", "@emotion/react": "^11.11.4", "@phosphor-icons/react": "^2.1.4", diff --git a/examples/CRISP/client/pnpm-lock.yaml b/examples/CRISP/client/pnpm-lock.yaml index c43765d010..ecaafe8814 100644 --- a/examples/CRISP/client/pnpm-lock.yaml +++ b/examples/CRISP/client/pnpm-lock.yaml @@ -9,8 +9,8 @@ importers: .: dependencies: '@crisp-e3/sdk': - specifier: 0.9.0 - version: 0.9.0(bufferutil@4.1.0)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) + specifier: 0.10.0 + version: 0.10.0(bufferutil@4.1.0)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76) '@emotion/babel-plugin': specifier: ^11.11.0 version: 11.13.5 @@ -724,11 +724,11 @@ packages: '@coinbase/wallet-sdk@4.3.6': resolution: {integrity: sha512-4q8BNG1ViL4mSAAvPAtpwlOs1gpC+67eQtgIwNvT3xyeyFFd+guwkc8bcX5rTmQhXpqnhzC4f0obACbP9CqMSA==} - '@crisp-e3/sdk@0.9.0': - resolution: {integrity: sha512-LpiJrks9ypj0CKrsHMoYh+TC1Xcm3dspYDWLBbnnMxZUUoFDbLO6ckgVUNh4vPQi5MwGGhTUU6X4M3lTNja92w==} + '@crisp-e3/sdk@0.10.0': + resolution: {integrity: sha512-sZGUE8N3OQ5PzeJoWCvBroBcYXZPahFx3BBq7b4nw92TS1qIBLGq23VM6ctXCY8zmLWjRgKsuhjex3LOcXTAIw==} - '@crisp-e3/zk-inputs@0.9.0': - resolution: {integrity: sha512-c7/IYPRvr0/M68wfQDyNotcC71VAy+CW07KmmU8s4Lau+nHEa/jb2p6VVfQymctZ/nh3j3DzzD2yDR1OE5gfjg==} + '@crisp-e3/zk-inputs@0.10.0': + resolution: {integrity: sha512-buWHqtNaE+I0rNshF2mVKZ91Rv92eEMaE8AnkwsuHNrWnwiJWeYKzV8Wq2qVUG42ueLEak0Ri+iI6yqHZ8mrJA==} '@ecies/ciphers@0.2.6': resolution: {integrity: sha512-patgsRPKGkhhoBjETV4XxD0En4ui5fbX0hzayqI3M8tvNMGUoUvmyYAIWwlxBc1KX5cturfqByYdj5bYGRpN9g==} @@ -2070,6 +2070,7 @@ packages: '@walletconnect/ethereum-provider@2.21.1': resolution: {integrity: sha512-SSlIG6QEVxClgl1s0LMk4xr2wg4eT3Zn/Hb81IocyqNSGfXpjtawWxKxiC5/9Z95f1INyBD6MctJbL/R1oBwIw==} + deprecated: 'Reliability and performance improvements. See: https://github.com/WalletConnect/walletconnect-monorepo/releases' '@walletconnect/events@1.0.1': resolution: {integrity: sha512-NPTqaoi0oPBVNuLv7qPaJazmGHs5JGyO8eEAk5VGKmJzDR7AHzD4k6ilox5kxk1iwiOnFopBOOMLs86Oa76HpQ==} @@ -2114,9 +2115,11 @@ packages: '@walletconnect/sign-client@2.21.0': resolution: {integrity: sha512-z7h+PeLa5Au2R591d/8ZlziE0stJvdzP9jNFzFolf2RG/OiXulgFKum8PrIyXy+Rg2q95U9nRVUF9fWcn78yBA==} + deprecated: 'Reliability and performance improvements. See: https://github.com/WalletConnect/walletconnect-monorepo/releases' '@walletconnect/sign-client@2.21.1': resolution: {integrity: sha512-QaXzmPsMnKGV6tc4UcdnQVNOz4zyXgarvdIQibJ4L3EmLat73r5ZVl4c0cCOcoaV7rgM9Wbphgu5E/7jNcd3Zg==} + deprecated: 'Reliability and performance improvements. See: https://github.com/WalletConnect/walletconnect-monorepo/releases' '@walletconnect/time@1.0.2': resolution: {integrity: sha512-uzdd9woDcJ1AaBZRhqy5rNC9laqWGErfc4dxA9a87mPdKOgWMD85mcFo9dIYIts/Jwocfwn07EC6EzclKubk/g==} @@ -2129,9 +2132,11 @@ packages: '@walletconnect/universal-provider@2.21.0': resolution: {integrity: sha512-mtUQvewt+X0VBQay/xOJBvxsB3Xsm1lTwFjZ6WUwSOTR1X+FNb71hSApnV5kbsdDIpYPXeQUbGt2se1n5E5UBg==} + deprecated: 'Reliability and performance improvements. See: https://github.com/WalletConnect/walletconnect-monorepo/releases' '@walletconnect/universal-provider@2.21.1': resolution: {integrity: sha512-Wjx9G8gUHVMnYfxtasC9poGm8QMiPCpXpbbLFT+iPoQskDDly8BwueWnqKs4Mx2SdIAWAwuXeZ5ojk5qQOxJJg==} + deprecated: 'Reliability and performance improvements. See: https://github.com/WalletConnect/walletconnect-monorepo/releases' '@walletconnect/utils@2.21.0': resolution: {integrity: sha512-zfHLiUoBrQ8rP57HTPXW7rQMnYxYI4gT9yTACxVW6LhIFROTF6/ytm5SKNoIvi4a5nX5dfXG4D9XwQUCu8Ilig==} @@ -5720,10 +5725,10 @@ snapshots: - utf-8-validate - zod - '@crisp-e3/sdk@0.9.0(bufferutil@4.1.0)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)': + '@crisp-e3/sdk@0.10.0(bufferutil@4.1.0)(typescript@5.9.3)(utf-8-validate@5.0.10)(zod@3.25.76)': dependencies: '@aztec/bb.js': 3.0.0-nightly.20260102 - '@crisp-e3/zk-inputs': 0.9.0 + '@crisp-e3/zk-inputs': 0.10.0 '@noir-lang/noir_js': 1.0.0-beta.16 '@zk-kit/lean-imt': 2.2.4(bufferutil@4.1.0)(utf-8-validate@5.0.10) poseidon-lite: 0.3.0 @@ -5734,7 +5739,7 @@ snapshots: - utf-8-validate - zod - '@crisp-e3/zk-inputs@0.9.0': {} + '@crisp-e3/zk-inputs@0.10.0': {} '@ecies/ciphers@0.2.6(@noble/ciphers@1.3.0)': dependencies: @@ -9698,7 +9703,7 @@ snapshots: '@noble/hashes': 1.8.0 '@scure/bip32': 1.7.0 '@scure/bip39': 1.6.0 - abitype: 1.2.3(typescript@5.9.3)(zod@3.25.76) + abitype: 1.2.4(typescript@5.9.3)(zod@3.25.76) eventemitter3: 5.0.1 optionalDependencies: typescript: 5.9.3 @@ -9708,11 +9713,11 @@ snapshots: ox@0.6.7(typescript@5.9.3)(zod@3.25.76): dependencies: '@adraffy/ens-normalize': 1.11.1 - '@noble/curves': 1.8.1 - '@noble/hashes': 1.7.1 - '@scure/bip32': 1.6.2 - '@scure/bip39': 1.5.4 - abitype: 1.0.8(typescript@5.9.3)(zod@3.25.76) + '@noble/curves': 1.9.7 + '@noble/hashes': 1.8.0 + '@scure/bip32': 1.7.0 + '@scure/bip39': 1.6.0 + abitype: 1.2.4(typescript@5.9.3)(zod@3.25.76) eventemitter3: 5.0.1 optionalDependencies: typescript: 5.9.3 @@ -9737,11 +9742,11 @@ snapshots: dependencies: '@adraffy/ens-normalize': 1.11.1 '@noble/ciphers': 1.3.0 - '@noble/curves': 1.9.1 + '@noble/curves': 1.9.7 '@noble/hashes': 1.8.0 '@scure/bip32': 1.7.0 '@scure/bip39': 1.6.0 - abitype: 1.0.8(typescript@5.9.3)(zod@3.25.76) + abitype: 1.2.4(typescript@5.9.3)(zod@3.25.76) eventemitter3: 5.0.1 optionalDependencies: typescript: 5.9.3 diff --git a/examples/CRISP/client/src/App.tsx b/examples/CRISP/client/src/App.tsx index ad087a4442..eb7c3d1b3a 100644 --- a/examples/CRISP/client/src/App.tsx +++ b/examples/CRISP/client/src/App.tsx @@ -12,7 +12,7 @@ import { useSwitchChain } from 'wagmi' //Pages import Landing from '@/pages/Landing/Landing' import DailyPoll from '@/pages/DailyPoll/DailyPoll' -import HistoricPoll from '@/pages/HistoricPoll/HistoricPoll' +import AllPolls from '@/pages/AllPolls/AllPolls' import About from '@/pages/About/About' import PollResult from '@/pages/PollResult/PollResult' import RoundPoll from '@/pages/RoundPoll' @@ -58,7 +58,8 @@ const App: React.FC = () => { } /> } /> } /> - } /> + } /> + } /> } /> } /> diff --git a/examples/CRISP/client/src/components/NavMenu.tsx b/examples/CRISP/client/src/components/NavMenu.tsx index 1f28b6062f..6e28dfca30 100644 --- a/examples/CRISP/client/src/components/NavMenu.tsx +++ b/examples/CRISP/client/src/components/NavMenu.tsx @@ -18,9 +18,9 @@ const NAV_MENU_OPTIONS = [ path: '/current', }, { - name: 'Historic Polls', + name: 'All Polls', icon: , - path: '/historic', + path: '/all', }, { name: 'About', diff --git a/examples/CRISP/client/src/components/Navbar.tsx b/examples/CRISP/client/src/components/Navbar.tsx index 56a7e938f5..2c538be7ca 100644 --- a/examples/CRISP/client/src/components/Navbar.tsx +++ b/examples/CRISP/client/src/components/Navbar.tsx @@ -20,8 +20,8 @@ const PAGES = [ path: '/about', }, { - label: 'Historic Polls', - path: '/historic', + label: 'All Polls', + path: '/all', }, ] diff --git a/examples/CRISP/client/src/context/voteManagement/VoteManagement.context.tsx b/examples/CRISP/client/src/context/voteManagement/VoteManagement.context.tsx index 7223cdb460..f8af56133d 100644 --- a/examples/CRISP/client/src/context/voteManagement/VoteManagement.context.tsx +++ b/examples/CRISP/client/src/context/voteManagement/VoteManagement.context.tsx @@ -51,6 +51,7 @@ const VoteManagementProvider = ({ children }: VoteManagementProviderProps) => { const [txUrl, setTxUrl] = useState(undefined) const [pollResult, setPollResult] = useState(null) const [currentRoundId, setCurrentRoundId] = useState(null) + const [displayedRoundIsFallback, setDisplayedRoundIsFallback] = useState(false) const [hasVotedInCurrentRound, setHasVotedInCurrentRound] = useState(false) const [voteStatusLoading, setVoteStatusLoading] = useState(false) const voteStatusCache = useRef>(new Map()) @@ -125,10 +126,35 @@ const VoteManagementProvider = ({ children }: VoteManagementProviderProps) => { const initialLoad = async () => { const currentRound = await getCurrentRound() - if (currentRound) { - setCurrentRoundId(currentRound.id) - await getRoundStateLite(currentRound.id) + if (!currentRound) return + setCurrentRoundId(currentRound.id) + + // If the current round has ended without a published tally, the page would + // otherwise sit forever in "Over · Tallying…". Fall back to the latest past + // round that does have a tally so the user sees something useful. + const fetched = await getRoundStateLiteRequest(currentRound.id) + if (!fetched) return + + const nowSec = Math.floor(Date.now() / 1000) + const ended = Number(fetched.end_time) <= nowSec + let fallbackRoundId: number | null = null + + if (ended) { + const currentResult = await getWebResultByRound(currentRound.id) + const currentHasTally = !!(currentResult && Array.isArray(currentResult.tally) && currentResult.tally.length > 0) + if (!currentHasTally) { + const all = await getWebResult() + const latestWithTally = (all ?? []) + .filter((r) => Array.isArray(r.tally) && r.tally.length > 0) + .sort((a, b) => b.round_id - a.round_id)[0] + if (latestWithTally && latestWithTally.round_id !== currentRound.id) { + fallbackRoundId = latestWithTally.round_id + } + } } + + setDisplayedRoundIsFallback(fallbackRoundId !== null) + await getRoundStateLite(fallbackRoundId ?? currentRound.id) } const getRoundStateLite = async (roundCount: number) => { @@ -212,6 +238,7 @@ const VoteManagementProvider = ({ children }: VoteManagementProviderProps) => { txUrl, pollResult, currentRoundId, + displayedRoundIsFallback, hasVotedInCurrentRound, voteStatusLoading, sessionId, diff --git a/examples/CRISP/client/src/context/voteManagement/VoteManagement.types.ts b/examples/CRISP/client/src/context/voteManagement/VoteManagement.types.ts index 7c331110bd..9365726ae4 100644 --- a/examples/CRISP/client/src/context/voteManagement/VoteManagement.types.ts +++ b/examples/CRISP/client/src/context/voteManagement/VoteManagement.types.ts @@ -26,6 +26,7 @@ export type VoteManagementContextType = { txUrl: string | undefined pollResult: PollResult | null currentRoundId: number | null + displayedRoundIsFallback: boolean hasVotedInCurrentRound: boolean voteStatusLoading: boolean sessionId: string diff --git a/examples/CRISP/client/src/pages/HistoricPoll/HistoricPoll.tsx b/examples/CRISP/client/src/pages/AllPolls/AllPolls.tsx similarity index 96% rename from examples/CRISP/client/src/pages/HistoricPoll/HistoricPoll.tsx rename to examples/CRISP/client/src/pages/AllPolls/AllPolls.tsx index fb0247a84b..83304c8709 100644 --- a/examples/CRISP/client/src/pages/HistoricPoll/HistoricPoll.tsx +++ b/examples/CRISP/client/src/pages/AllPolls/AllPolls.tsx @@ -12,7 +12,7 @@ import { useVoteManagementContext } from '@/context/voteManagement' import { EditorialShell } from '@/design/Editorial' import { debounce } from '@/utils/methods' -const HistoricPoll: React.FC = () => { +const AllPolls: React.FC = () => { const { votingRound, pastPolls, getPastPolls, isLoading } = useVoteManagementContext() const [visiblePolls, setVisiblePolls] = useState([]) const [page, setPage] = useState(0) @@ -71,14 +71,14 @@ const HistoricPoll: React.FC = () => {
Archive
-

Past polls

+

All polls

{isLoading && (
)} - {!pastPolls.length && !isLoading &&

There are no historic polls.

} + {!pastPolls.length && !isLoading &&

There are no polls yet.

} {visiblePolls.length > 0 && (
{visiblePolls.map((pollResult: PollResult, index: number) => { @@ -104,4 +104,4 @@ const HistoricPoll: React.FC = () => { ) } -export default HistoricPoll +export default AllPolls diff --git a/examples/CRISP/client/src/pages/Landing/components/DailyPoll.tsx b/examples/CRISP/client/src/pages/Landing/components/DailyPoll.tsx index 619b498c4a..bcf04af2d5 100644 --- a/examples/CRISP/client/src/pages/Landing/components/DailyPoll.tsx +++ b/examples/CRISP/client/src/pages/Landing/components/DailyPoll.tsx @@ -46,8 +46,17 @@ const FaceoffSlot: React.FC<{ } const DailyPollSection: React.FC = ({ loading, endTime, title = 'The Faceoff' }) => { - const { user, pollOptions, setPollOptions, roundState, hasVotedInCurrentRound, voteStatusLoading, isLoading, getWebResultByRound } = - useVoteManagementContext() + const { + user, + pollOptions, + setPollOptions, + roundState, + hasVotedInCurrentRound, + voteStatusLoading, + isLoading, + getWebResultByRound, + displayedRoundIsFallback, + } = useVoteManagementContext() const navigate = useNavigate() const client = usePublicClient() const [isEnded, setIsEnded] = useState(false) @@ -90,29 +99,56 @@ const DailyPollSection: React.FC = ({ loading, endTime, t } }, [roundState, client]) + // Keep a stable reference so the polling effect below isn't torn down + // and rebuilt every time the parent context re-renders (which otherwise + // produced an eager `check()` call per rebuild and stacked requests). + const getWebResultByRoundRef = useRef(getWebResultByRound) + useEffect(() => { + getWebResultByRoundRef.current = getWebResultByRound + }, [getWebResultByRound]) + // Once the poll is over, poll the backend until the FHE tally is published. + // FHE decryption takes minutes, so poll slowly with exponential backoff and + // skip ticks while the tab is hidden to avoid bombarding the server. useEffect(() => { if (!isEnded || !roundState || tallyReady) return + const BASE_DELAY_MS = 30_000 + const MAX_DELAY_MS = 5 * 60_000 + let cancelled = false - const check = async () => { + let timer: ReturnType | null = null + let delay = BASE_DELAY_MS + + const tick = async () => { + if (cancelled) return + + if (typeof document !== 'undefined' && document.hidden) { + timer = setTimeout(tick, BASE_DELAY_MS) + return + } + try { - const result = await getWebResultByRound(roundState.id) - if (!cancelled && result && Array.isArray(result.tally) && result.tally.length > 0) { + const result = await getWebResultByRoundRef.current(roundState.id) + if (cancelled) return + if (result && Array.isArray(result.tally) && result.tally.length > 0) { setTallyReady(true) + return } + delay = Math.min(delay * 2, MAX_DELAY_MS) } catch { - // Transient failure — keep polling on the next interval tick. + delay = Math.min(delay * 2, MAX_DELAY_MS) } + + timer = setTimeout(tick, delay) } - check() - const interval = setInterval(check, 8000) + timer = setTimeout(tick, BASE_DELAY_MS) return () => { cancelled = true - clearInterval(interval) + if (timer) clearTimeout(timer) } - }, [isEnded, roundState, tallyReady, getWebResultByRound]) + }, [isEnded, roundState, tallyReady]) const handleChecked = (selectedPoll: Poll) => { const isAlreadySelected = pollSelected?.value === selectedPoll.value @@ -158,6 +194,9 @@ const DailyPollSection: React.FC = ({ loading, endTime, t
{title}
{hasPoll &&

Choose your favorite

} {!roundState && !isLoading &&

No active poll found. Check back when the next round opens.

} + {displayedRoundIsFallback && ( +

Showing the latest completed poll — the current round is still being tallied under encryption.

+ )}
{roundState && ( diff --git a/examples/CRISP/client/src/pages/Landing/components/PastPoll.tsx b/examples/CRISP/client/src/pages/Landing/components/PastPoll.tsx index aac5a56763..d3d3115382 100644 --- a/examples/CRISP/client/src/pages/Landing/components/PastPoll.tsx +++ b/examples/CRISP/client/src/pages/Landing/components/PastPoll.tsx @@ -30,7 +30,7 @@ const PastPollSection: React.FC = ({ customLabel = 'Past p ))} - + View all polls →
diff --git a/examples/CRISP/client/src/providers/Web3Provider.tsx b/examples/CRISP/client/src/providers/Web3Provider.tsx index 8b68429931..dc51f87ed2 100644 --- a/examples/CRISP/client/src/providers/Web3Provider.tsx +++ b/examples/CRISP/client/src/providers/Web3Provider.tsx @@ -5,8 +5,11 @@ // or FITNESS FOR A PARTICULAR PURPOSE. import { WagmiProvider, createConfig, http } from 'wagmi' +import { mainnet } from 'wagmi/chains' +import { injected, walletConnect } from 'wagmi/connectors' +import { custom } from 'viem' import { QueryClient, QueryClientProvider } from '@tanstack/react-query' -import { ConnectKitProvider, getDefaultConfig } from 'connectkit' +import { ConnectKitProvider } from 'connectkit' import React from 'react' import { getChain } from '@/utils/methods' @@ -17,16 +20,39 @@ if (!walletConnectProjectId) const chain = getChain() const rpcUrl = import.meta.env.VITE_RPC_URL || 'http://127.0.0.1:8545' -const config = createConfig( - getDefaultConfig({ - appName: 'CRISP', - chains: [chain], - transports: { - [chain.id]: http(rpcUrl), - }, - walletConnectProjectId: walletConnectProjectId, - }), -) +// ConnectKit hard-codes an internal `ensFallbackConfig` that points mainnet at +// viem's default `http()` transport — which resolves to the public, rate-limited, +// CORS-hostile `eth.merkle.io`. It activates that fallback specifically when +// mainnet is NOT in our wagmi config, and there is no option to disable it. +// +// To keep our chain list minimal AND stop the requests, we include mainnet but +// hand it a transport that never makes a network call. ConnectKit then uses +// this no-op transport instead of spinning up its own mainnet client. ENS +// lookups silently fail (we don't display ENS names anywhere) and no public +// RPC is ever contacted. +const ensDisabledMainnet = custom({ + request: async () => { + throw new Error('mainnet RPC disabled (ENS lookups suppressed)') + }, +}) + +// We deliberately omit the Coinbase Wallet connector — its SDK also pings +// public mainnet on init for Smart Wallet account discovery and complains +// about COOP headers. Users on the Coinbase browser extension are still +// picked up by `injected()`. +const connectors = [ + injected(), + ...(walletConnectProjectId ? [walletConnect({ projectId: walletConnectProjectId, showQrModal: false })] : []), +] + +const config = createConfig({ + chains: [chain, mainnet], + transports: { + [chain.id]: http(rpcUrl), + [mainnet.id]: ensDisabledMainnet, + }, + connectors, +}) const queryClient = new QueryClient() diff --git a/examples/CRISP/enclave.config.yaml b/examples/CRISP/enclave.config.yaml index ed52e89d59..e874f3b0cb 100644 --- a/examples/CRISP/enclave.config.yaml +++ b/examples/CRISP/enclave.config.yaml @@ -22,29 +22,6 @@ chains: fee_token: address: "0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512" deploy_block: 4 - - name: "sepolia" - enabled: false - # Public Sepolia WebSocket endpoint (see repo docs for the recommended default). - rpc_url: "wss://ethereum-sepolia-rpc.publicnode.com" - contracts: - e3_program: - address: "0xba3B07aBFd0B8cad68aa1E946CC7AF5C1B1c8B5D" - deploy_block: 10697382 - enclave: - address: "0xB47B267876B60a06138Bc9dfCee7aa3E26907CCB" - deploy_block: 10697349 - ciphernode_registry: - address: "0x497Feea9abB72229aab1584c22b5416ff128926B" - deploy_block: 10697344 - bonding_registry: - address: "0x788046999530304DDe121e19eD456180Aca6B7c1" - deploy_block: 10697345 - slashing_manager: - address: "0xd984728053ed3a17921fb3E27615cdcC796A8d9e" - deploy_block: 10697343 - fee_token: - address: "0x9B1820D75bb09433D17C674A289fc6dD53e9c389" - deploy_block: 10697340 program: dev: true # risc0: diff --git a/examples/CRISP/packages/crisp-contracts/deployed_contracts.json b/examples/CRISP/packages/crisp-contracts/deployed_contracts.json index f4bd486ddb..989456a14f 100644 --- a/examples/CRISP/packages/crisp-contracts/deployed_contracts.json +++ b/examples/CRISP/packages/crisp-contracts/deployed_contracts.json @@ -1,38 +1,39 @@ { "sepolia": { "PoseidonT3": { - "blockNumber": 10697339, + "blockNumber": 10939899, "address": "0x3333333C0A88F9BE4fd23ed0536F9B6c427e3B93" }, "MockUSDC": { "constructorArgs": { "initialSupply": "1000000" }, - "blockNumber": 10697340, - "address": "0x9B1820D75bb09433D17C674A289fc6dD53e9c389" + "blockNumber": 10939865, + "address": "0x2721Cdf281d40744aD567cBf3e7100F60bcbAE79" }, "EnclaveToken": { "constructorArgs": { "owner": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B" }, - "blockNumber": 10697341, - "address": "0x62440E4b344D2A8aAf14c72b845F978eE615B7be" + "blockNumber": 10939866, + "address": "0xbAb3220FD04a193a192F07879673597Cd695Cb03" }, "EnclaveTicketToken": { "constructorArgs": { - "baseToken": "0x9B1820D75bb09433D17C674A289fc6dD53e9c389", + "baseToken": "0x2721Cdf281d40744aD567cBf3e7100F60bcbAE79", "registry": "0x0000000000000000000000000000000000000001", "owner": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B" }, - "blockNumber": 10697342, - "address": "0xD4BF670ABbf0849858dE08A3956B266D75aC52D5" + "blockNumber": 10939867, + "address": "0x2446f2AC9632f17af96053e48dEDff44b50711Ea" }, "SlashingManager": { "constructorArgs": { + "initialDelay": "172800", "admin": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B" }, - "blockNumber": 10697343, - "address": "0xd984728053ed3a17921fb3E27615cdcC796A8d9e" + "blockNumber": 10939868, + "address": "0x0553387EE0992Fe339579728B6c777164fD1de40" }, "CiphernodeRegistryOwnable": { "constructorArgs": { @@ -42,19 +43,19 @@ "proxyRecords": { "initData": "0xcd6dc6870000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b000000000000000000000000000000000000000000000000000000000000000a", "initialOwner": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B", - "proxyAddress": "0x497Feea9abB72229aab1584c22b5416ff128926B", - "proxyAdminAddress": "0x4Bb0e5034f86e913122E367Ed3A528B41c67C23b", - "implementationAddress": "0x06C0CF3936B6060c21dB43E1DEBa2F0D9Fa17E33" + "proxyAddress": "0x4D707127F72a216EA116AF0B4262dD7382F84259", + "proxyAdminAddress": "0x080DD900b6471f5850105E9023AEcbF5857B6bCB", + "implementationAddress": "0xE5E77dE44e71a535D8376dB650447ab9AB3ADE92" }, - "blockNumber": 10697344, - "address": "0x497Feea9abB72229aab1584c22b5416ff128926B" + "blockNumber": 10939869, + "address": "0x4D707127F72a216EA116AF0B4262dD7382F84259" }, "BondingRegistry": { "constructorArgs": { "owner": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B", - "ticketToken": "0xD4BF670ABbf0849858dE08A3956B266D75aC52D5", - "licenseToken": "0x62440E4b344D2A8aAf14c72b845F978eE615B7be", - "registry": "0x497Feea9abB72229aab1584c22b5416ff128926B", + "ticketToken": "0x2446f2AC9632f17af96053e48dEDff44b50711Ea", + "licenseToken": "0xbAb3220FD04a193a192F07879673597Cd695Cb03", + "registry": "0x4D707127F72a216EA116AF0B4262dD7382F84259", "slashedFundsTreasury": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B", "ticketPrice": "10000000", "licenseRequiredBond": "100000000000000000000", @@ -62,236 +63,88 @@ "exitDelay": "604800" }, "proxyRecords": { - "initData": "0x7333fa820000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b000000000000000000000000d4bf670abbf0849858de08a3956b266d75ac52d500000000000000000000000062440e4b344d2a8aaf14c72b845f978ee615b7be000000000000000000000000497feea9abb72229aab1584c22b5416ff128926b0000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b00000000000000000000000000000000000000000000000000000000009896800000000000000000000000000000000000000000000000056bc75e2d6310000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000093a80", + "initData": "0x7333fa820000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b0000000000000000000000002446f2ac9632f17af96053e48dedff44b50711ea000000000000000000000000bab3220fd04a193a192f07879673597cd695cb030000000000000000000000004d707127f72a216ea116af0b4262dd7382f842590000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b00000000000000000000000000000000000000000000000000000000009896800000000000000000000000000000000000000000000000056bc75e2d6310000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000093a80", "initialOwner": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B", - "proxyAddress": "0x788046999530304DDe121e19eD456180Aca6B7c1", - "proxyAdminAddress": "0x1E3A9B680bBdc75acA280D73eE03Fad96D3b48B4", - "implementationAddress": "0xD9DEDEBb322468DbF576AAe7556A30dd7b14FC0f" + "proxyAddress": "0xb9b64c5e0a30f38ed33760f299613087aAe87283", + "proxyAdminAddress": "0x2db58f52cA92516d079042Bc14D3C55c9839794e", + "implementationAddress": "0x871E4390995301A0918b1f559b0f97782063D682" }, - "blockNumber": 10697345, - "address": "0x788046999530304DDe121e19eD456180Aca6B7c1" + "blockNumber": 10939870, + "address": "0xb9b64c5e0a30f38ed33760f299613087aAe87283" }, "Enclave": { "constructorArgs": { "owner": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B", - "registry": "0x497Feea9abB72229aab1584c22b5416ff128926B", - "bondingRegistry": "0x788046999530304DDe121e19eD456180Aca6B7c1", + "registry": "0x4D707127F72a216EA116AF0B4262dD7382F84259", + "bondingRegistry": "0xb9b64c5e0a30f38ed33760f299613087aAe87283", "e3RefundManager": "0x0000000000000000000000000000000000000001", - "feeToken": "0x9B1820D75bb09433D17C674A289fc6dD53e9c389", + "feeToken": "0x2721Cdf281d40744aD567cBf3e7100F60bcbAE79", "maxDuration": "2592000", - "timeoutConfig": "{\"committeeFormationWindow\":3600,\"dkgWindow\":7200,\"computeWindow\":86400,\"decryptionWindow\":3600}" + "timeoutConfig": "{\"dkgWindow\":7200,\"computeWindow\":86400,\"decryptionWindow\":3600}" }, "proxyRecords": { - "initData": "0x4d600e5d0000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b000000000000000000000000497feea9abb72229aab1584c22b5416ff128926b000000000000000000000000788046999530304dde121e19ed456180aca6b7c100000000000000000000000000000000000000000000000000000000000000010000000000000000000000009b1820d75bb09433d17c674a289fc6dd53e9c3890000000000000000000000000000000000000000000000000000000000278d000000000000000000000000000000000000000000000000000000000000001c2000000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000000000000000e10", + "initData": "0x4d600e5d0000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b0000000000000000000000004d707127f72a216ea116af0b4262dd7382f84259000000000000000000000000b9b64c5e0a30f38ed33760f299613087aae8728300000000000000000000000000000000000000000000000000000000000000010000000000000000000000002721cdf281d40744ad567cbf3e7100f60bcbae790000000000000000000000000000000000000000000000000000000000278d000000000000000000000000000000000000000000000000000000000000001c2000000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000000000000000e10", "initialOwner": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B", - "proxyAddress": "0xB47B267876B60a06138Bc9dfCee7aa3E26907CCB", - "proxyAdminAddress": "0x24f01F6a6AbD1e011D585bd0C8bAde8A74788b66", - "implementationAddress": "0x5BcC26D32b6E6F0ACcb87ECDE43d7E8F74C55025" + "proxyAddress": "0x670eFE043d1D340148037b4b76c4F9dfED294309", + "proxyAdminAddress": "0xA2C502EaDeEa534A6a772656a339570381fCB9b5", + "implementationAddress": "0x2cb325A86A543A39752405588c9D59c23c0ea7B8" }, - "blockNumber": 10697349, - "address": "0xB47B267876B60a06138Bc9dfCee7aa3E26907CCB" + "blockNumber": 10939874, + "address": "0x670eFE043d1D340148037b4b76c4F9dfED294309" }, "E3RefundManager": { "constructorArgs": { "owner": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B", - "enclave": "0xB47B267876B60a06138Bc9dfCee7aa3E26907CCB", + "enclave": "0x670eFE043d1D340148037b4b76c4F9dfED294309", "treasury": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B" }, "proxyRecords": { - "initData": "0xc0c53b8b0000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b000000000000000000000000b47b267876b60a06138bc9dfcee7aa3e26907ccb0000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b", + "initData": "0xc0c53b8b0000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b000000000000000000000000670efe043d1d340148037b4b76c4f9dfed2943090000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b", "initialOwner": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B", - "proxyAddress": "0x91eebD89bb00CBE9E5Eabf2a01a22704f88AD098", - "proxyAdminAddress": "0x8a549f0Aa95Cf10576aD6c364183A0A2316AC5F3", - "implementationAddress": "0xaFB096E53C6c5eF18A96def5d842c2c2c82Fe28b" - }, - "blockNumber": 10697351, - "address": "0x91eebD89bb00CBE9E5Eabf2a01a22704f88AD098" - }, - "MockComputeProvider": { - "blockNumber": 10697354, - "address": "0xa0BB5B87A8cfbf59057F30E988010A08D984faA4" - }, - "MockDecryptionVerifier": { - "blockNumber": 10697355, - "address": "0x5875FaCfb96D4d60d0212fa1c84B65a36c1250DB" - }, - "MockPkVerifier": { - "blockNumber": 10697356, - "address": "0x18C81901c6Fd139e67647054Ebe593756e535185" - }, - "MockE3Program": { - "blockNumber": 10697357, - "address": "0x9D55635A78B96A72ee540bdE376722350e9B8B70" - }, - "MockRISC0Verifier": { - "address": "0x8aE4111B4B06fa5c02Ce6982E53507041c6e5ff8", - "blockNumber": 10697381 - }, - "HonkVerifier": { - "address": "0x4c60BA20E3321EB23E1b222B1fb0ad54c48972Dc", - "blockNumber": 10697382 - }, - "CRISPProgram": { - "address": "0xba3B07aBFd0B8cad68aa1E946CC7AF5C1B1c8B5D", - "blockNumber": 10697382, - "constructorArgs": { - "enclave": "0xB47B267876B60a06138Bc9dfCee7aa3E26907CCB", - "verifierAddress": "0x8aE4111B4B06fa5c02Ce6982E53507041c6e5ff8", - "honkVerifierAddress": "0x4c60BA20E3321EB23E1b222B1fb0ad54c48972Dc", - "imageId": "0x23734b77b0f76e85623a88d7a82f24c34c94834f2501964ea123b7a2027013a2" - } - }, - "MockVotingToken": { - "address": "0xA2Ced5053E66BA1E42583ffC996038A24110fEc7", - "blockNumber": 10697384 - } - }, - "localhost": { - "PoseidonT3": { - "blockNumber": 3, - "address": "0x3333333C0A88F9BE4fd23ed0536F9B6c427e3B93" - }, - "MockUSDC": { - "constructorArgs": { - "initialSupply": "1000000" - }, - "blockNumber": 4, - "address": "0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512" - }, - "EnclaveToken": { - "constructorArgs": { - "owner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266" - }, - "blockNumber": 5, - "address": "0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0" - }, - "EnclaveTicketToken": { - "constructorArgs": { - "baseToken": "0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512", - "registry": "0x0000000000000000000000000000000000000001", - "owner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266" - }, - "blockNumber": 7, - "address": "0xDc64a140Aa3E981100a9becA4E685f962f0cF6C9" - }, - "SlashingManager": { - "constructorArgs": { - "initialDelay": "172800", - "admin": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266" - }, - "blockNumber": 8, - "address": "0x5FC8d32690cc91D4c39d9d3abcBD16989F875707" - }, - "CiphernodeRegistryOwnable": { - "constructorArgs": { - "owner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", - "submissionWindow": "10" - }, - "proxyRecords": { - "initData": "0xcd6dc687000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb92266000000000000000000000000000000000000000000000000000000000000000a", - "initialOwner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", - "proxyAddress": "0xa513E6E4b8f2a923D98304ec87F64353C4D5C853", - "proxyAdminAddress": "0x9bd03768a7DCc129555dE410FF8E85528A4F88b5", - "implementationAddress": "0x0165878A594ca255338adfa4d48449f69242Eb8F" - }, - "blockNumber": 9, - "address": "0xa513E6E4b8f2a923D98304ec87F64353C4D5C853" - }, - "BondingRegistry": { - "constructorArgs": { - "owner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", - "ticketToken": "0xDc64a140Aa3E981100a9becA4E685f962f0cF6C9", - "licenseToken": "0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0", - "registry": "0xa513E6E4b8f2a923D98304ec87F64353C4D5C853", - "slashedFundsTreasury": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", - "ticketPrice": "10000000", - "licenseRequiredBond": "100000000000000000000", - "minTicketBalance": "1", - "exitDelay": "604800" - }, - "proxyRecords": { - "initData": "0x7333fa82000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb92266000000000000000000000000dc64a140aa3e981100a9beca4e685f962f0cf6c90000000000000000000000009fe46736679d2d9a65f0992f2272de9f3c7fa6e0000000000000000000000000a513e6e4b8f2a923d98304ec87f64353c4d5c853000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb9226600000000000000000000000000000000000000000000000000000000009896800000000000000000000000000000000000000000000000056bc75e2d6310000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000093a80", - "initialOwner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", - "proxyAddress": "0x8A791620dd6260079BF849Dc5567aDC3F2FdC318", - "proxyAdminAddress": "0x8aCd85898458400f7Db866d53FCFF6f0D49741FF", - "implementationAddress": "0x2279B7A0a67DB372996a5FaB50D91eAA73d2eBe6" - }, - "blockNumber": 10, - "address": "0x8A791620dd6260079BF849Dc5567aDC3F2FdC318" - }, - "Enclave": { - "constructorArgs": { - "owner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", - "registry": "0xa513E6E4b8f2a923D98304ec87F64353C4D5C853", - "bondingRegistry": "0x8A791620dd6260079BF849Dc5567aDC3F2FdC318", - "e3RefundManager": "0x0000000000000000000000000000000000000001", - "feeToken": "0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512", - "maxDuration": "2592000", - "timeoutConfig": "{\"dkgWindow\":7200,\"computeWindow\":86400,\"decryptionWindow\":3600}" - }, - "proxyRecords": { - "initData": "0x4d600e5d000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb92266000000000000000000000000a513e6e4b8f2a923d98304ec87f64353c4d5c8530000000000000000000000008a791620dd6260079bf849dc5567adc3f2fdc3180000000000000000000000000000000000000000000000000000000000000001000000000000000000000000e7f1725e7734ce288f8367e1bb143e90bb3f05120000000000000000000000000000000000000000000000000000000000278d000000000000000000000000000000000000000000000000000000000000001c2000000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000000000000000e10", - "initialOwner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", - "proxyAddress": "0xA51c1fc2f0D1a1b8494Ed1FE312d7C3a78Ed91C0", - "proxyAdminAddress": "0x1F708C24a0D3A740cD47cC0444E9480899f3dA7D", - "implementationAddress": "0xB7f8BC63BbcaD18155201308C8f3540b07f84F5e" - }, - "blockNumber": 14, - "address": "0xA51c1fc2f0D1a1b8494Ed1FE312d7C3a78Ed91C0" - }, - "E3RefundManager": { - "constructorArgs": { - "owner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", - "enclave": "0xA51c1fc2f0D1a1b8494Ed1FE312d7C3a78Ed91C0", - "treasury": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266" - }, - "proxyRecords": { - "initData": "0xc0c53b8b000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb92266000000000000000000000000a51c1fc2f0d1a1b8494ed1fe312d7c3a78ed91c0000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb92266", - "initialOwner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", - "proxyAddress": "0x9A676e781A523b5d0C0e43731313A708CB607508", - "proxyAdminAddress": "0x8e80FFe6Dc044F4A766Afd6e5a8732Fe0977A493", - "implementationAddress": "0x0DCd1Bf9A1b36cE34237eEaFef220932846BCD82" + "proxyAddress": "0xD327ec50C7a8909f90DE15fe53872e88B4948Ee0", + "proxyAdminAddress": "0x4CfC7BCA035bFA28be27fB5aeBc87bDA86E7e240", + "implementationAddress": "0xcfD77dB6899Df39969Db2B3f69eA755cFefAf68d" }, - "blockNumber": 16, - "address": "0x9A676e781A523b5d0C0e43731313A708CB607508" + "blockNumber": 10939876, + "address": "0xD327ec50C7a8909f90DE15fe53872e88B4948Ee0" }, "MockComputeProvider": { - "blockNumber": 30, - "address": "0x5eb3Bc0a489C5A8288765d2336659EbCA68FCd00" + "blockNumber": 10939891, + "address": "0x1A5BFB6b2d26E2EBeA6fd92B29Ab392Ab961b04F" }, "MockDecryptionVerifier": { - "blockNumber": 31, - "address": "0x36C02dA8a0983159322a80FFE9F24b1acfF8B570" + "blockNumber": 10939892, + "address": "0x52E2e2d903d68d9611599d05bA9E856805bA563F" }, "MockPkVerifier": { - "blockNumber": 32, - "address": "0x809d550fca64d94Bd9F66E60752A544199cfAC3D" + "blockNumber": 10939893, + "address": "0x3d9979A65A36B1A339f213f0Ae545555AebD16DD" }, "MockE3Program": { - "blockNumber": 33, - "address": "0x4c5859f0F772848b2D91F1D83E2Fe57935348029" + "blockNumber": 10939894, + "address": "0xB37D0DFc2967423786466489A5E44fe6b3b0c116" }, "MockRISC0Verifier": { - "address": "0xCD8a1C3ba11CF5ECfa6267617243239504a98d90", - "blockNumber": 37 + "address": "0x05c415E39AF18B2cc118fFC98258afe38636EAb0", + "blockNumber": 10939931 }, "HonkVerifier": { - "address": "0x2bdCC0de6bE1f7D2ee689a0342D76F52E8EFABa3", - "blockNumber": 38 + "address": "0x70AA319AA8a305Eb65a78b0791b2526BE7193Cfa", + "blockNumber": 10939932 }, "CRISPProgram": { - "address": "0x7969c5eD335650692Bc04293B07F5BF2e7A673C0", - "blockNumber": 38, + "address": "0xbCc418F4dd1266Cc6070b1e2AC728ef56De946e7", + "blockNumber": 10939932, "constructorArgs": { - "enclave": "0xA51c1fc2f0D1a1b8494Ed1FE312d7C3a78Ed91C0", - "verifierAddress": "0xCD8a1C3ba11CF5ECfa6267617243239504a98d90", - "honkVerifierAddress": "0x2bdCC0de6bE1f7D2ee689a0342D76F52E8EFABa3", + "enclave": "0x670eFE043d1D340148037b4b76c4F9dfED294309", + "verifierAddress": "0x05c415E39AF18B2cc118fFC98258afe38636EAb0", + "honkVerifierAddress": "0x70AA319AA8a305Eb65a78b0791b2526BE7193Cfa", "imageId": "0x23734b77b0f76e85623a88d7a82f24c34c94834f2501964ea123b7a2027013a2" } }, "MockVotingToken": { - "address": "0xc351628EB244ec633d5f21fBD6621e1a683B1181", - "blockNumber": 40 + "address": "0x4Ef697B1bE877384b0f205205a8EDA49E09b63ae", + "blockNumber": 10939934 } } } \ No newline at end of file diff --git a/examples/CRISP/packages/crisp-contracts/package.json b/examples/CRISP/packages/crisp-contracts/package.json index a4885f8210..ea7c674e62 100644 --- a/examples/CRISP/packages/crisp-contracts/package.json +++ b/examples/CRISP/packages/crisp-contracts/package.json @@ -1,6 +1,6 @@ { "name": "@crisp-e3/contracts", - "version": "0.9.0", + "version": "0.10.0", "type": "module", "files": [ "contracts", diff --git a/examples/CRISP/packages/crisp-sdk/package.json b/examples/CRISP/packages/crisp-sdk/package.json index 7c21a81e7d..79920ee425 100644 --- a/examples/CRISP/packages/crisp-sdk/package.json +++ b/examples/CRISP/packages/crisp-sdk/package.json @@ -1,6 +1,6 @@ { "name": "@crisp-e3/sdk", - "version": "0.9.0", + "version": "0.10.0", "type": "module", "author": { "name": "gnosisguild", diff --git a/examples/CRISP/packages/crisp-zk-inputs/package.json b/examples/CRISP/packages/crisp-zk-inputs/package.json index 4f4f0ab58c..975565df73 100644 --- a/examples/CRISP/packages/crisp-zk-inputs/package.json +++ b/examples/CRISP/packages/crisp-zk-inputs/package.json @@ -2,7 +2,7 @@ "name": "@crisp-e3/zk-inputs", "type": "module", "description": "Core logic to pre-compute CRISP ZK inputs (WASM/JavaScript bindings).", - "version": "0.9.0", + "version": "0.10.0", "license": "LGPL-3.0-only", "repository": { "type": "git", diff --git a/examples/CRISP/server/src/cli/commands.rs b/examples/CRISP/server/src/cli/commands.rs index 33148d9b6e..c76e3830a0 100644 --- a/examples/CRISP/server/src/cli/commands.rs +++ b/examples/CRISP/server/src/cli/commands.rs @@ -172,7 +172,6 @@ pub async fn initialize_crisp_round( ) .await?; let e3_program: Address = CONFIG.e3_program_address.parse()?; - ensure_e3_program_deployed(e3_program).await?; info!("Enabling E3 Program with address: {}", e3_program); match contract.is_e3_program_enabled(e3_program).await { diff --git a/examples/CRISP/test/crisp.spec.ts b/examples/CRISP/test/crisp.spec.ts index 713a2ece32..476a59944e 100644 --- a/examples/CRISP/test/crisp.spec.ts +++ b/examples/CRISP/test/crisp.spec.ts @@ -215,10 +215,10 @@ test('CRISP smoke test', async ({ context, page, metamaskPage, extensionId }) => const WAIT = E3_DURATION - DKG_DURATION + OUTPUT_DECRYPTION_WAIT log(`waiting ${WAIT}ms...`) await page.waitForTimeout(WAIT) - log(`clicking historic polls button...`) - await page.locator('a:has-text("Historic Polls")').click() - log(`asserting that Historic polls exists...`) - await expect(page.locator('h1')).toHaveText('Past polls') + log(`clicking all polls button...`) + await page.locator('a:has-text("All Polls")').click() + log(`asserting that All polls page exists...`) + await expect(page.locator('h1')).toHaveText('All polls') log(`asserting that result has 100% on the vote we clicked on...`) await expect(page.locator("[data-test-id='poll-0-0'] [data-test-id='poll-result-0'] .h2")).toHaveText('100%') log(`asserting that result has 0% on the vote we did not click on...`) diff --git a/packages/enclave-contracts/deployed_contracts.json b/packages/enclave-contracts/deployed_contracts.json index 2454b08a53..8dc23a00ac 100644 --- a/packages/enclave-contracts/deployed_contracts.json +++ b/packages/enclave-contracts/deployed_contracts.json @@ -1,38 +1,39 @@ { "sepolia": { "PoseidonT3": { - "blockNumber": 10697339, + "blockNumber": 10939899, "address": "0x3333333C0A88F9BE4fd23ed0536F9B6c427e3B93" }, "MockUSDC": { "constructorArgs": { "initialSupply": "1000000" }, - "blockNumber": 10697340, - "address": "0x9B1820D75bb09433D17C674A289fc6dD53e9c389" + "blockNumber": 10939865, + "address": "0x2721Cdf281d40744aD567cBf3e7100F60bcbAE79" }, "EnclaveToken": { "constructorArgs": { "owner": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B" }, - "blockNumber": 10697341, - "address": "0x62440E4b344D2A8aAf14c72b845F978eE615B7be" + "blockNumber": 10939866, + "address": "0xbAb3220FD04a193a192F07879673597Cd695Cb03" }, "EnclaveTicketToken": { "constructorArgs": { - "baseToken": "0x9B1820D75bb09433D17C674A289fc6dD53e9c389", + "baseToken": "0x2721Cdf281d40744aD567cBf3e7100F60bcbAE79", "registry": "0x0000000000000000000000000000000000000001", "owner": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B" }, - "blockNumber": 10697342, - "address": "0xD4BF670ABbf0849858dE08A3956B266D75aC52D5" + "blockNumber": 10939867, + "address": "0x2446f2AC9632f17af96053e48dEDff44b50711Ea" }, "SlashingManager": { "constructorArgs": { + "initialDelay": "172800", "admin": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B" }, - "blockNumber": 10697343, - "address": "0xd984728053ed3a17921fb3E27615cdcC796A8d9e" + "blockNumber": 10939868, + "address": "0x0553387EE0992Fe339579728B6c777164fD1de40" }, "CiphernodeRegistryOwnable": { "constructorArgs": { @@ -42,19 +43,19 @@ "proxyRecords": { "initData": "0xcd6dc6870000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b000000000000000000000000000000000000000000000000000000000000000a", "initialOwner": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B", - "proxyAddress": "0x497Feea9abB72229aab1584c22b5416ff128926B", - "proxyAdminAddress": "0x4Bb0e5034f86e913122E367Ed3A528B41c67C23b", - "implementationAddress": "0x06C0CF3936B6060c21dB43E1DEBa2F0D9Fa17E33" + "proxyAddress": "0x4D707127F72a216EA116AF0B4262dD7382F84259", + "proxyAdminAddress": "0x080DD900b6471f5850105E9023AEcbF5857B6bCB", + "implementationAddress": "0xE5E77dE44e71a535D8376dB650447ab9AB3ADE92" }, - "blockNumber": 10697344, - "address": "0x497Feea9abB72229aab1584c22b5416ff128926B" + "blockNumber": 10939869, + "address": "0x4D707127F72a216EA116AF0B4262dD7382F84259" }, "BondingRegistry": { "constructorArgs": { "owner": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B", - "ticketToken": "0xD4BF670ABbf0849858dE08A3956B266D75aC52D5", - "licenseToken": "0x62440E4b344D2A8aAf14c72b845F978eE615B7be", - "registry": "0x497Feea9abB72229aab1584c22b5416ff128926B", + "ticketToken": "0x2446f2AC9632f17af96053e48dEDff44b50711Ea", + "licenseToken": "0xbAb3220FD04a193a192F07879673597Cd695Cb03", + "registry": "0x4D707127F72a216EA116AF0B4262dD7382F84259", "slashedFundsTreasury": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B", "ticketPrice": "10000000", "licenseRequiredBond": "100000000000000000000", @@ -62,192 +63,66 @@ "exitDelay": "604800" }, "proxyRecords": { - "initData": "0x7333fa820000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b000000000000000000000000d4bf670abbf0849858de08a3956b266d75ac52d500000000000000000000000062440e4b344d2a8aaf14c72b845f978ee615b7be000000000000000000000000497feea9abb72229aab1584c22b5416ff128926b0000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b00000000000000000000000000000000000000000000000000000000009896800000000000000000000000000000000000000000000000056bc75e2d6310000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000093a80", + "initData": "0x7333fa820000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b0000000000000000000000002446f2ac9632f17af96053e48dedff44b50711ea000000000000000000000000bab3220fd04a193a192f07879673597cd695cb030000000000000000000000004d707127f72a216ea116af0b4262dd7382f842590000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b00000000000000000000000000000000000000000000000000000000009896800000000000000000000000000000000000000000000000056bc75e2d6310000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000093a80", "initialOwner": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B", - "proxyAddress": "0x788046999530304DDe121e19eD456180Aca6B7c1", - "proxyAdminAddress": "0x1E3A9B680bBdc75acA280D73eE03Fad96D3b48B4", - "implementationAddress": "0xD9DEDEBb322468DbF576AAe7556A30dd7b14FC0f" + "proxyAddress": "0xb9b64c5e0a30f38ed33760f299613087aAe87283", + "proxyAdminAddress": "0x2db58f52cA92516d079042Bc14D3C55c9839794e", + "implementationAddress": "0x871E4390995301A0918b1f559b0f97782063D682" }, - "blockNumber": 10697345, - "address": "0x788046999530304DDe121e19eD456180Aca6B7c1" + "blockNumber": 10939870, + "address": "0xb9b64c5e0a30f38ed33760f299613087aAe87283" }, "Enclave": { "constructorArgs": { "owner": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B", - "registry": "0x497Feea9abB72229aab1584c22b5416ff128926B", - "bondingRegistry": "0x788046999530304DDe121e19eD456180Aca6B7c1", + "registry": "0x4D707127F72a216EA116AF0B4262dD7382F84259", + "bondingRegistry": "0xb9b64c5e0a30f38ed33760f299613087aAe87283", "e3RefundManager": "0x0000000000000000000000000000000000000001", - "feeToken": "0x9B1820D75bb09433D17C674A289fc6dD53e9c389", + "feeToken": "0x2721Cdf281d40744aD567cBf3e7100F60bcbAE79", "maxDuration": "2592000", - "timeoutConfig": "{\"committeeFormationWindow\":3600,\"dkgWindow\":7200,\"computeWindow\":86400,\"decryptionWindow\":3600}" + "timeoutConfig": "{\"dkgWindow\":7200,\"computeWindow\":86400,\"decryptionWindow\":3600}" }, "proxyRecords": { - "initData": "0x4d600e5d0000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b000000000000000000000000497feea9abb72229aab1584c22b5416ff128926b000000000000000000000000788046999530304dde121e19ed456180aca6b7c100000000000000000000000000000000000000000000000000000000000000010000000000000000000000009b1820d75bb09433d17c674a289fc6dd53e9c3890000000000000000000000000000000000000000000000000000000000278d000000000000000000000000000000000000000000000000000000000000001c2000000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000000000000000e10", + "initData": "0x4d600e5d0000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b0000000000000000000000004d707127f72a216ea116af0b4262dd7382f84259000000000000000000000000b9b64c5e0a30f38ed33760f299613087aae8728300000000000000000000000000000000000000000000000000000000000000010000000000000000000000002721cdf281d40744ad567cbf3e7100f60bcbae790000000000000000000000000000000000000000000000000000000000278d000000000000000000000000000000000000000000000000000000000000001c2000000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000000000000000e10", "initialOwner": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B", - "proxyAddress": "0xB47B267876B60a06138Bc9dfCee7aa3E26907CCB", - "proxyAdminAddress": "0x24f01F6a6AbD1e011D585bd0C8bAde8A74788b66", - "implementationAddress": "0x5BcC26D32b6E6F0ACcb87ECDE43d7E8F74C55025" + "proxyAddress": "0x670eFE043d1D340148037b4b76c4F9dfED294309", + "proxyAdminAddress": "0xA2C502EaDeEa534A6a772656a339570381fCB9b5", + "implementationAddress": "0x2cb325A86A543A39752405588c9D59c23c0ea7B8" }, - "blockNumber": 10697349, - "address": "0xB47B267876B60a06138Bc9dfCee7aa3E26907CCB" + "blockNumber": 10939874, + "address": "0x670eFE043d1D340148037b4b76c4F9dfED294309" }, "E3RefundManager": { "constructorArgs": { "owner": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B", - "enclave": "0xB47B267876B60a06138Bc9dfCee7aa3E26907CCB", + "enclave": "0x670eFE043d1D340148037b4b76c4F9dfED294309", "treasury": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B" }, "proxyRecords": { - "initData": "0xc0c53b8b0000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b000000000000000000000000b47b267876b60a06138bc9dfcee7aa3e26907ccb0000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b", + "initData": "0xc0c53b8b0000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b000000000000000000000000670efe043d1d340148037b4b76c4f9dfed2943090000000000000000000000008837e47c4bb520ade83aab761c3b60679443af1b", "initialOwner": "0x8837e47c4Bb520ADE83AAB761C3B60679443af1B", - "proxyAddress": "0x91eebD89bb00CBE9E5Eabf2a01a22704f88AD098", - "proxyAdminAddress": "0x8a549f0Aa95Cf10576aD6c364183A0A2316AC5F3", - "implementationAddress": "0xaFB096E53C6c5eF18A96def5d842c2c2c82Fe28b" - }, - "blockNumber": 10697351, - "address": "0x91eebD89bb00CBE9E5Eabf2a01a22704f88AD098" - }, - "MockComputeProvider": { - "blockNumber": 10697354, - "address": "0xa0BB5B87A8cfbf59057F30E988010A08D984faA4" - }, - "MockDecryptionVerifier": { - "blockNumber": 10697355, - "address": "0x5875FaCfb96D4d60d0212fa1c84B65a36c1250DB" - }, - "MockPkVerifier": { - "blockNumber": 10697356, - "address": "0x18C81901c6Fd139e67647054Ebe593756e535185" - }, - "MockE3Program": { - "blockNumber": 10697357, - "address": "0x9D55635A78B96A72ee540bdE376722350e9B8B70" - } - }, - "localhost": { - "PoseidonT3": { - "blockNumber": 6, - "address": "0x3333333C0A88F9BE4fd23ed0536F9B6c427e3B93" - }, - "MockUSDC": { - "constructorArgs": { - "initialSupply": "1000000" - }, - "blockNumber": 7, - "address": "0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512" - }, - "EnclaveToken": { - "constructorArgs": { - "owner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266" - }, - "blockNumber": 8, - "address": "0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0" - }, - "EnclaveTicketToken": { - "constructorArgs": { - "baseToken": "0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512", - "registry": "0x0000000000000000000000000000000000000001", - "owner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266" - }, - "blockNumber": 10, - "address": "0xDc64a140Aa3E981100a9becA4E685f962f0cF6C9" - }, - "SlashingManager": { - "constructorArgs": { - "initialDelay": "172800", - "admin": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266" - }, - "blockNumber": 11, - "address": "0x5FC8d32690cc91D4c39d9d3abcBD16989F875707" - }, - "CiphernodeRegistryOwnable": { - "constructorArgs": { - "owner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", - "submissionWindow": "10" - }, - "proxyRecords": { - "initData": "0xcd6dc687000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb92266000000000000000000000000000000000000000000000000000000000000000a", - "initialOwner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", - "proxyAddress": "0xa513E6E4b8f2a923D98304ec87F64353C4D5C853", - "proxyAdminAddress": "0x9bd03768a7DCc129555dE410FF8E85528A4F88b5", - "implementationAddress": "0x0165878A594ca255338adfa4d48449f69242Eb8F" - }, - "blockNumber": 11, - "address": "0xa513E6E4b8f2a923D98304ec87F64353C4D5C853" - }, - "BondingRegistry": { - "constructorArgs": { - "owner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", - "ticketToken": "0xDc64a140Aa3E981100a9becA4E685f962f0cF6C9", - "licenseToken": "0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0", - "registry": "0xa513E6E4b8f2a923D98304ec87F64353C4D5C853", - "slashedFundsTreasury": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", - "ticketPrice": "10000000", - "licenseRequiredBond": "100000000000000000000", - "minTicketBalance": "1", - "exitDelay": "604800" - }, - "proxyRecords": { - "initData": "0x7333fa82000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb92266000000000000000000000000dc64a140aa3e981100a9beca4e685f962f0cf6c90000000000000000000000009fe46736679d2d9a65f0992f2272de9f3c7fa6e0000000000000000000000000a513e6e4b8f2a923d98304ec87f64353c4d5c853000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb9226600000000000000000000000000000000000000000000000000000000009896800000000000000000000000000000000000000000000000056bc75e2d6310000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000093a80", - "initialOwner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", - "proxyAddress": "0x8A791620dd6260079BF849Dc5567aDC3F2FdC318", - "proxyAdminAddress": "0x8aCd85898458400f7Db866d53FCFF6f0D49741FF", - "implementationAddress": "0x2279B7A0a67DB372996a5FaB50D91eAA73d2eBe6" - }, - "blockNumber": 12, - "address": "0x8A791620dd6260079BF849Dc5567aDC3F2FdC318" - }, - "Enclave": { - "constructorArgs": { - "owner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", - "registry": "0xa513E6E4b8f2a923D98304ec87F64353C4D5C853", - "bondingRegistry": "0x8A791620dd6260079BF849Dc5567aDC3F2FdC318", - "e3RefundManager": "0x0000000000000000000000000000000000000001", - "feeToken": "0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512", - "maxDuration": "2592000", - "timeoutConfig": "{\"committeeFormationWindow\":3600,\"dkgWindow\":7200,\"computeWindow\":86400,\"decryptionWindow\":3600}" - }, - "proxyRecords": { - "initData": "0x4d600e5d000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb92266000000000000000000000000a513e6e4b8f2a923d98304ec87f64353c4d5c8530000000000000000000000008a791620dd6260079bf849dc5567adc3f2fdc3180000000000000000000000000000000000000000000000000000000000000001000000000000000000000000e7f1725e7734ce288f8367e1bb143e90bb3f05120000000000000000000000000000000000000000000000000000000000278d000000000000000000000000000000000000000000000000000000000000001c2000000000000000000000000000000000000000000000000000000000000151800000000000000000000000000000000000000000000000000000000000000e10", - "initialOwner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", - "proxyAddress": "0xB7f8BC63BbcaD18155201308C8f3540b07f84F5e", - "proxyAdminAddress": "0x8dAF17A20c9DBA35f005b6324F493785D239719d", - "implementationAddress": "0x610178dA211FEF7D417bC0e6FeD39F05609AD788" - }, - "blockNumber": 15, - "address": "0xB7f8BC63BbcaD18155201308C8f3540b07f84F5e" - }, - "E3RefundManager": { - "constructorArgs": { - "owner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", - "enclave": "0xB7f8BC63BbcaD18155201308C8f3540b07f84F5e", - "treasury": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266" - }, - "proxyRecords": { - "initData": "0xc0c53b8b000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb92266000000000000000000000000b7f8bc63bbcad18155201308c8f3540b07f84f5e000000000000000000000000f39fd6e51aad88f6f4ce6ab8827279cfffb92266", - "initialOwner": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", - "proxyAddress": "0x0DCd1Bf9A1b36cE34237eEaFef220932846BCD82", - "proxyAdminAddress": "0x32467b43BFa67273FC7dDda0999Ee9A12F2AaA08", - "implementationAddress": "0xA51c1fc2f0D1a1b8494Ed1FE312d7C3a78Ed91C0" + "proxyAddress": "0xD327ec50C7a8909f90DE15fe53872e88B4948Ee0", + "proxyAdminAddress": "0x4CfC7BCA035bFA28be27fB5aeBc87bDA86E7e240", + "implementationAddress": "0xcfD77dB6899Df39969Db2B3f69eA755cFefAf68d" }, - "blockNumber": 17, - "address": "0x0DCd1Bf9A1b36cE34237eEaFef220932846BCD82" + "blockNumber": 10939876, + "address": "0xD327ec50C7a8909f90DE15fe53872e88B4948Ee0" }, "MockComputeProvider": { - "blockNumber": 19, - "address": "0x9E545E3C0baAB3E08CdfD552C960A1050f373042" + "blockNumber": 10939891, + "address": "0x1A5BFB6b2d26E2EBeA6fd92B29Ab392Ab961b04F" }, "MockDecryptionVerifier": { - "blockNumber": 20, - "address": "0xa82fF9aFd8f496c3d6ac40E2a0F282E47488CFc9" + "blockNumber": 10939892, + "address": "0x52E2e2d903d68d9611599d05bA9E856805bA563F" }, "MockPkVerifier": { - "blockNumber": 21, - "address": "0x1613beB3B2C4f22Ee086B2b38C1476A3cE7f78E8" + "blockNumber": 10939893, + "address": "0x3d9979A65A36B1A339f213f0Ae545555AebD16DD" }, "MockE3Program": { - "blockNumber": 22, - "address": "0x851356ae760d987E095750cCeb3bC6014560891C" + "blockNumber": 10939894, + "address": "0xB37D0DFc2967423786466489A5E44fe6b3b0c116" } } } \ No newline at end of file diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3721f96f2c..0cd3f4d710 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -149,7 +149,7 @@ importers: examples/CRISP/client: dependencies: '@crisp-e3/sdk': - specifier: 0.9.0 + specifier: 0.10.0 version: link:../packages/crisp-sdk '@emotion/babel-plugin': specifier: ^11.11.0 @@ -171,7 +171,7 @@ importers: version: 1.13.2 connectkit: specifier: ^1.9.0 - version: 1.9.1(@babel/core@7.28.5)(@tanstack/react-query@5.90.6(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(wagmi@2.19.2(@tanstack/query-core@5.90.6)(@tanstack/react-query@5.90.6(react@18.3.1))(@types/react@18.3.26)(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(immer@10.0.2)(react@18.3.1)(typescript@5.8.3)(utf-8-validate@5.0.10)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@4.1.12)) + version: 1.9.1(@babel/core@7.28.5)(@tanstack/react-query@5.90.6(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(wagmi@2.19.2(@tanstack/query-core@5.90.6)(@tanstack/react-query@5.90.6(react@18.3.1))(@types/react@18.3.26)(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(immer@10.0.2)(react@18.3.1)(typescript@5.8.3)(utf-8-validate@5.0.10)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(ws@8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@4.1.12)) ethers: specifier: ^6.12.0 version: 6.15.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) @@ -204,7 +204,7 @@ importers: version: 4.3.2(typescript@5.8.3)(vite@5.4.21(@types/node@22.7.5)) wagmi: specifier: ^2.14.16 - version: 2.19.2(@tanstack/query-core@5.90.6)(@tanstack/react-query@5.90.6(react@18.3.1))(@types/react@18.3.26)(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(immer@10.0.2)(react@18.3.1)(typescript@5.8.3)(utf-8-validate@5.0.10)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@4.1.12) + version: 2.19.2(@tanstack/query-core@5.90.6)(@tanstack/react-query@5.90.6(react@18.3.1))(@types/react@18.3.26)(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(immer@10.0.2)(react@18.3.1)(typescript@5.8.3)(utf-8-validate@5.0.10)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(ws@8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@4.1.12) devDependencies: '@tailwindcss/typography': specifier: ^0.5.12 @@ -639,7 +639,7 @@ importers: version: 2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12) wagmi: specifier: ^2.14.16 - version: 2.19.2(@tanstack/query-core@5.90.6)(@tanstack/react-query@5.90.6(react@18.3.1))(@types/react@18.3.26)(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(immer@10.0.2)(react@18.3.1)(typescript@5.8.3)(utf-8-validate@5.0.10)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(ws@8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@4.1.12) + version: 2.19.2(@tanstack/query-core@5.90.6)(@tanstack/react-query@5.90.6(react@18.3.1))(@types/react@18.3.26)(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(immer@10.0.2)(react@18.3.1)(typescript@5.8.3)(utf-8-validate@5.0.10)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@4.1.12) devDependencies: '@enclave-e3/config': specifier: workspace:* @@ -762,7 +762,7 @@ importers: version: 5.3.0 '@risc0/ethereum': specifier: file:lib/risc0-ethereum - version: risc0-ethereum@file:templates/default/lib/risc0-ethereum + version: file:templates/default/lib/risc0-ethereum '@types/chai': specifier: ^4.2.0 version: 4.3.20 @@ -3134,6 +3134,9 @@ packages: '@reown/appkit@1.7.8': resolution: {integrity: sha512-51kTleozhA618T1UvMghkhKfaPcc9JlKwLJ5uV+riHyvSoWPKPRIa5A6M1Wano5puNyW0s3fwywhyqTHSilkaA==} + '@risc0/ethereum@file:templates/default/lib/risc0-ethereum': + resolution: {directory: templates/default/lib/risc0-ethereum, type: directory} + '@rolldown/pluginutils@1.0.0-beta.27': resolution: {integrity: sha512-+d0F4MKMCbeVUJwG96uQ4SgAznZNSq93I3V+9NHA4OpvqG8mRCpGdKmK8l/dl02h2CCDHwW2FqilnTyDcAnqjA==} @@ -8817,9 +8820,6 @@ packages: resolution: {integrity: sha512-5Di9UC0+8h1L6ZD2d7awM7E/T4uA1fJRlx6zk/NvdCCVEoAnFqvHmCuNeIKoCeIixBX/q8uM+6ycDvF8woqosA==} engines: {node: '>= 0.8'} - risc0-ethereum@file:templates/default/lib/risc0-ethereum: - resolution: {directory: templates/default/lib/risc0-ethereum, type: directory} - robust-predicates@3.0.2: resolution: {integrity: sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==} @@ -10326,11 +10326,11 @@ snapshots: '@babel/helpers': 7.28.4 '@babel/parser': 7.28.5 '@babel/template': 7.27.2 - '@babel/traverse': 7.28.5 + '@babel/traverse': 7.28.5(supports-color@5.5.0) '@babel/types': 7.28.5 '@jridgewell/remapping': 2.3.5 convert-source-map: 2.0.0 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 @@ -10371,7 +10371,7 @@ snapshots: '@babel/helper-optimise-call-expression': 7.27.1 '@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.5) '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 - '@babel/traverse': 7.28.5 + '@babel/traverse': 7.28.5(supports-color@5.5.0) semver: 6.3.1 transitivePeerDependencies: - supports-color @@ -10388,7 +10388,7 @@ snapshots: '@babel/core': 7.28.5 '@babel/helper-compilation-targets': 7.27.2 '@babel/helper-plugin-utils': 7.27.1 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) lodash.debounce: 4.0.8 resolve: 1.22.11 transitivePeerDependencies: @@ -10411,14 +10411,7 @@ snapshots: '@babel/helper-member-expression-to-functions@7.28.5': dependencies: - '@babel/traverse': 7.28.5 - '@babel/types': 7.28.5 - transitivePeerDependencies: - - supports-color - - '@babel/helper-module-imports@7.27.1': - dependencies: - '@babel/traverse': 7.28.5 + '@babel/traverse': 7.28.5(supports-color@5.5.0) '@babel/types': 7.28.5 transitivePeerDependencies: - supports-color @@ -10433,9 +10426,9 @@ snapshots: '@babel/helper-module-transforms@7.28.3(@babel/core@7.28.5)': dependencies: '@babel/core': 7.28.5 - '@babel/helper-module-imports': 7.27.1 + '@babel/helper-module-imports': 7.27.1(supports-color@5.5.0) '@babel/helper-validator-identifier': 7.28.5 - '@babel/traverse': 7.28.5 + '@babel/traverse': 7.28.5(supports-color@5.5.0) transitivePeerDependencies: - supports-color @@ -10450,7 +10443,7 @@ snapshots: '@babel/core': 7.28.5 '@babel/helper-annotate-as-pure': 7.27.3 '@babel/helper-wrap-function': 7.28.3 - '@babel/traverse': 7.28.5 + '@babel/traverse': 7.28.5(supports-color@5.5.0) transitivePeerDependencies: - supports-color @@ -10459,13 +10452,13 @@ snapshots: '@babel/core': 7.28.5 '@babel/helper-member-expression-to-functions': 7.28.5 '@babel/helper-optimise-call-expression': 7.27.1 - '@babel/traverse': 7.28.5 + '@babel/traverse': 7.28.5(supports-color@5.5.0) transitivePeerDependencies: - supports-color '@babel/helper-skip-transparent-expression-wrappers@7.27.1': dependencies: - '@babel/traverse': 7.28.5 + '@babel/traverse': 7.28.5(supports-color@5.5.0) '@babel/types': 7.28.5 transitivePeerDependencies: - supports-color @@ -10483,7 +10476,7 @@ snapshots: '@babel/helper-wrap-function@7.28.3': dependencies: '@babel/template': 7.27.2 - '@babel/traverse': 7.28.5 + '@babel/traverse': 7.28.5(supports-color@5.5.0) '@babel/types': 7.28.5 transitivePeerDependencies: - supports-color @@ -10501,7 +10494,7 @@ snapshots: dependencies: '@babel/core': 7.28.5 '@babel/helper-plugin-utils': 7.27.1 - '@babel/traverse': 7.28.5 + '@babel/traverse': 7.28.5(supports-color@5.5.0) transitivePeerDependencies: - supports-color @@ -10528,7 +10521,7 @@ snapshots: dependencies: '@babel/core': 7.28.5 '@babel/helper-plugin-utils': 7.27.1 - '@babel/traverse': 7.28.5 + '@babel/traverse': 7.28.5(supports-color@5.5.0) transitivePeerDependencies: - supports-color @@ -10572,14 +10565,14 @@ snapshots: '@babel/core': 7.28.5 '@babel/helper-plugin-utils': 7.27.1 '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.28.5) - '@babel/traverse': 7.28.5 + '@babel/traverse': 7.28.5(supports-color@5.5.0) transitivePeerDependencies: - supports-color '@babel/plugin-transform-async-to-generator@7.27.1(@babel/core@7.28.5)': dependencies: '@babel/core': 7.28.5 - '@babel/helper-module-imports': 7.27.1 + '@babel/helper-module-imports': 7.27.1(supports-color@5.5.0) '@babel/helper-plugin-utils': 7.27.1 '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.28.5) transitivePeerDependencies: @@ -10619,7 +10612,7 @@ snapshots: '@babel/helper-globals': 7.28.0 '@babel/helper-plugin-utils': 7.27.1 '@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.5) - '@babel/traverse': 7.28.5 + '@babel/traverse': 7.28.5(supports-color@5.5.0) transitivePeerDependencies: - supports-color @@ -10633,7 +10626,7 @@ snapshots: dependencies: '@babel/core': 7.28.5 '@babel/helper-plugin-utils': 7.27.1 - '@babel/traverse': 7.28.5 + '@babel/traverse': 7.28.5(supports-color@5.5.0) transitivePeerDependencies: - supports-color @@ -10690,7 +10683,7 @@ snapshots: '@babel/core': 7.28.5 '@babel/helper-compilation-targets': 7.27.2 '@babel/helper-plugin-utils': 7.27.1 - '@babel/traverse': 7.28.5 + '@babel/traverse': 7.28.5(supports-color@5.5.0) transitivePeerDependencies: - supports-color @@ -10736,7 +10729,7 @@ snapshots: '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5) '@babel/helper-plugin-utils': 7.27.1 '@babel/helper-validator-identifier': 7.28.5 - '@babel/traverse': 7.28.5 + '@babel/traverse': 7.28.5(supports-color@5.5.0) transitivePeerDependencies: - supports-color @@ -10776,7 +10769,7 @@ snapshots: '@babel/helper-plugin-utils': 7.27.1 '@babel/plugin-transform-destructuring': 7.28.5(@babel/core@7.28.5) '@babel/plugin-transform-parameters': 7.27.7(@babel/core@7.28.5) - '@babel/traverse': 7.28.5 + '@babel/traverse': 7.28.5(supports-color@5.5.0) transitivePeerDependencies: - supports-color @@ -10859,7 +10852,7 @@ snapshots: dependencies: '@babel/core': 7.28.5 '@babel/helper-annotate-as-pure': 7.27.3 - '@babel/helper-module-imports': 7.27.1 + '@babel/helper-module-imports': 7.27.1(supports-color@5.5.0) '@babel/helper-plugin-utils': 7.27.1 '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.28.5) '@babel/types': 7.28.5 @@ -11074,23 +11067,11 @@ snapshots: '@babel/helper-split-export-declaration': 7.24.7 '@babel/parser': 7.28.5 '@babel/types': 7.28.5 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) globals: 11.12.0 transitivePeerDependencies: - supports-color - '@babel/traverse@7.28.5': - dependencies: - '@babel/code-frame': 7.27.1 - '@babel/generator': 7.28.5 - '@babel/helper-globals': 7.28.0 - '@babel/parser': 7.28.5 - '@babel/template': 7.27.2 - '@babel/types': 7.28.5 - debug: 4.4.3(supports-color@8.1.1) - transitivePeerDependencies: - - supports-color - '@babel/traverse@7.28.5(supports-color@5.5.0)': dependencies: '@babel/code-frame': 7.27.1 @@ -11292,7 +11273,7 @@ snapshots: '@emotion/babel-plugin@11.13.5': dependencies: - '@babel/helper-module-imports': 7.27.1 + '@babel/helper-module-imports': 7.27.1(supports-color@5.5.0) '@babel/runtime': 7.28.4 '@emotion/hash': 0.9.2 '@emotion/memoize': 0.9.0 @@ -11612,7 +11593,7 @@ snapshots: '@eslint/config-array@0.21.1': dependencies: '@eslint/object-schema': 2.1.7 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) minimatch: 3.1.2 transitivePeerDependencies: - supports-color @@ -11628,7 +11609,7 @@ snapshots: '@eslint/eslintrc@3.3.1': dependencies: ajv: 6.12.6 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) espree: 10.4.0 globals: 14.0.0 ignore: 5.3.2 @@ -12289,7 +12270,7 @@ snapshots: '@scure/base': 1.2.6 '@types/debug': 4.1.12 '@types/lodash': 4.17.20 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) lodash: 4.17.21 pony-cause: 2.1.11 semver: 7.7.3 @@ -12301,7 +12282,7 @@ snapshots: dependencies: '@ethereumjs/tx': 4.2.0 '@types/debug': 4.1.12 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) semver: 7.7.3 superstruct: 1.0.4 transitivePeerDependencies: @@ -12314,7 +12295,7 @@ snapshots: '@noble/hashes': 1.8.0 '@scure/base': 1.2.6 '@types/debug': 4.1.12 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) pony-cause: 2.1.11 semver: 7.7.3 uuid: 9.0.1 @@ -12328,7 +12309,7 @@ snapshots: '@noble/hashes': 1.8.0 '@scure/base': 1.2.6 '@types/debug': 4.1.12 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) pony-cause: 2.1.11 semver: 7.7.3 uuid: 9.0.1 @@ -12730,7 +12711,7 @@ snapshots: dependencies: '@nomicfoundation/hardhat-errors': 3.0.3 '@nomicfoundation/hardhat-utils': 3.0.5 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) ethereum-cryptography: 2.2.1 ethers: 6.15.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) hardhat: 3.0.11(bufferutil@4.0.9)(utf-8-validate@5.0.10) @@ -12759,7 +12740,7 @@ snapshots: '@nomicfoundation/ignition-core': 3.0.4(bufferutil@4.0.9)(utf-8-validate@5.0.10) '@nomicfoundation/ignition-ui': 3.0.4 chalk: 5.6.2 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) hardhat: 3.0.11(bufferutil@4.0.9)(utf-8-validate@5.0.10) json5: 2.2.3 prompts: 2.4.2 @@ -12776,7 +12757,7 @@ snapshots: '@nomicfoundation/hardhat-utils': 3.0.5 '@nomicfoundation/hardhat-zod-utils': 3.0.1(zod@3.25.76) chalk: 5.6.2 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) hardhat: 3.0.11(bufferutil@4.0.9)(utf-8-validate@5.0.10) zod: 3.25.76 transitivePeerDependencies: @@ -12879,7 +12860,7 @@ snapshots: '@nomicfoundation/hardhat-utils': 3.0.5 '@nomicfoundation/hardhat-zod-utils': 3.0.1(zod@3.25.76) '@typechain/ethers-v6': 0.5.1(ethers@6.15.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(typechain@8.3.2(typescript@5.8.3))(typescript@5.8.3) - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) ethers: 6.15.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) hardhat: 3.0.11(bufferutil@4.0.9)(utf-8-validate@5.0.10) typechain: 8.3.2(typescript@5.8.3) @@ -12891,7 +12872,7 @@ snapshots: '@nomicfoundation/hardhat-utils@3.0.5': dependencies: '@streamparser/json-node': 0.0.22 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) env-paths: 2.2.1 ethereum-cryptography: 2.2.1 fast-equals: 5.3.2 @@ -12909,7 +12890,7 @@ snapshots: '@nomicfoundation/hardhat-zod-utils': 3.0.1(zod@3.25.76) cbor2: 1.12.0 chalk: 5.6.2 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) hardhat: 3.0.11(bufferutil@4.0.9)(utf-8-validate@5.0.10) semver: 7.7.3 zod: 3.25.76 @@ -12931,7 +12912,7 @@ snapshots: '@nomicfoundation/hardhat-utils': 3.0.5 '@nomicfoundation/solidity-analyzer': 0.1.2 cbor2: 1.12.0 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) ethers: 6.15.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) immer: 10.0.2 lodash-es: 4.17.21 @@ -13275,6 +13256,8 @@ snapshots: - utf-8-validate - zod + '@risc0/ethereum@file:templates/default/lib/risc0-ethereum': {} + '@rolldown/pluginutils@1.0.0-beta.27': {} '@rollup/plugin-inject@5.0.5(rollup@4.52.5)': @@ -14149,7 +14132,7 @@ snapshots: '@depay/web3-mock-evm': 14.19.1(bufferutil@4.0.9)(utf-8-validate@5.0.10) '@playwright/test': 1.52.0 '@synthetixio/synpress-core': 0.0.13(@playwright/test@1.52.0) - viem: 2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10) + viem: 2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.22.4) transitivePeerDependencies: - '@depay/solana-web3.js' - '@depay/web3-blockchains' @@ -14621,7 +14604,7 @@ snapshots: '@typescript-eslint/types': 7.18.0 '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.8.3) '@typescript-eslint/visitor-keys': 7.18.0 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) eslint: 9.39.1(jiti@1.21.7) optionalDependencies: typescript: 5.8.3 @@ -14634,7 +14617,7 @@ snapshots: '@typescript-eslint/types': 8.47.0 '@typescript-eslint/typescript-estree': 8.47.0(typescript@5.8.3) '@typescript-eslint/visitor-keys': 8.47.0 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) eslint: 9.39.1(jiti@1.21.7) typescript: 5.8.3 transitivePeerDependencies: @@ -14644,7 +14627,7 @@ snapshots: dependencies: '@typescript-eslint/tsconfig-utils': 8.47.0(typescript@5.8.3) '@typescript-eslint/types': 8.47.0 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) typescript: 5.8.3 transitivePeerDependencies: - supports-color @@ -14667,7 +14650,7 @@ snapshots: dependencies: '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.8.3) '@typescript-eslint/utils': 7.18.0(eslint@9.39.1(jiti@1.21.7))(typescript@5.8.3) - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) eslint: 9.39.1(jiti@1.21.7) ts-api-utils: 1.4.3(typescript@5.8.3) optionalDependencies: @@ -14680,7 +14663,7 @@ snapshots: '@typescript-eslint/types': 8.47.0 '@typescript-eslint/typescript-estree': 8.47.0(typescript@5.8.3) '@typescript-eslint/utils': 8.47.0(eslint@9.39.1(jiti@1.21.7))(typescript@5.8.3) - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) eslint: 9.39.1(jiti@1.21.7) ts-api-utils: 2.1.0(typescript@5.8.3) typescript: 5.8.3 @@ -14695,7 +14678,7 @@ snapshots: dependencies: '@typescript-eslint/types': 7.18.0 '@typescript-eslint/visitor-keys': 7.18.0 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.5 @@ -14712,7 +14695,7 @@ snapshots: '@typescript-eslint/tsconfig-utils': 8.47.0(typescript@5.8.3) '@typescript-eslint/types': 8.47.0 '@typescript-eslint/visitor-keys': 8.47.0 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) fast-glob: 3.3.3 is-glob: 4.0.3 minimatch: 9.0.5 @@ -15910,7 +15893,7 @@ snapshots: dependencies: bytes: 3.1.2 content-type: 1.0.5 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) http-errors: 2.0.0 iconv-lite: 0.6.3 on-finished: 2.4.1 @@ -15924,7 +15907,7 @@ snapshots: dependencies: bytes: 3.1.2 content-type: 1.0.5 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) http-errors: 2.0.0 iconv-lite: 0.7.0 on-finished: 2.4.1 @@ -16376,26 +16359,6 @@ snapshots: ini: 1.3.8 proto-list: 1.2.4 - connectkit@1.9.1(@babel/core@7.28.5)(@tanstack/react-query@5.90.6(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(wagmi@2.19.2(@tanstack/query-core@5.90.6)(@tanstack/react-query@5.90.6(react@18.3.1))(@types/react@18.3.26)(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(immer@10.0.2)(react@18.3.1)(typescript@5.8.3)(utf-8-validate@5.0.10)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@4.1.12)): - dependencies: - '@tanstack/react-query': 5.90.6(react@18.3.1) - buffer: 6.0.3 - detect-browser: 5.3.0 - family: 0.1.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(wagmi@2.19.2(@tanstack/query-core@5.90.6)(@tanstack/react-query@5.90.6(react@18.3.1))(@types/react@18.3.26)(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(immer@10.0.2)(react@18.3.1)(typescript@5.8.3)(utf-8-validate@5.0.10)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@4.1.12)) - framer-motion: 6.5.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - qrcode: 1.5.4 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-transition-state: 1.1.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - react-use-measure: 2.1.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - resize-observer-polyfill: 1.5.1 - styled-components: 5.3.11(@babel/core@7.28.5)(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1) - viem: 2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12) - wagmi: 2.19.2(@tanstack/query-core@5.90.6)(@tanstack/react-query@5.90.6(react@18.3.1))(@types/react@18.3.26)(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(immer@10.0.2)(react@18.3.1)(typescript@5.8.3)(utf-8-validate@5.0.10)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@4.1.12) - transitivePeerDependencies: - - '@babel/core' - - react-is - connectkit@1.9.1(@babel/core@7.28.5)(@tanstack/react-query@5.90.6(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(wagmi@2.19.2(@tanstack/query-core@5.90.6)(@tanstack/react-query@5.90.6(react@18.3.1))(@types/react@18.3.26)(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(immer@10.0.2)(react@18.3.1)(typescript@5.8.3)(utf-8-validate@5.0.10)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(ws@8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@4.1.12)): dependencies: '@tanstack/react-query': 5.90.6(react@18.3.1) @@ -17179,7 +17142,7 @@ snapshots: ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.6 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) escape-string-regexp: 4.0.0 eslint-scope: 8.4.0 eslint-visitor-keys: 4.2.1 @@ -17462,7 +17425,7 @@ snapshots: content-type: 1.0.5 cookie: 0.7.2 cookie-signature: 1.2.2 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) encodeurl: 2.0.0 escape-html: 1.0.3 etag: 1.8.1 @@ -17494,7 +17457,7 @@ snapshots: content-type: 1.0.5 cookie: 0.7.2 cookie-signature: 1.2.2 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) depd: 2.0.0 encodeurl: 2.0.0 escape-html: 1.0.3 @@ -17534,13 +17497,6 @@ snapshots: eyes@0.1.8: {} - family@0.1.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(wagmi@2.19.2(@tanstack/query-core@5.90.6)(@tanstack/react-query@5.90.6(react@18.3.1))(@types/react@18.3.26)(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(immer@10.0.2)(react@18.3.1)(typescript@5.8.3)(utf-8-validate@5.0.10)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@4.1.12)): - optionalDependencies: - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - viem: 2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12) - wagmi: 2.19.2(@tanstack/query-core@5.90.6)(@tanstack/react-query@5.90.6(react@18.3.1))(@types/react@18.3.26)(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(immer@10.0.2)(react@18.3.1)(typescript@5.8.3)(utf-8-validate@5.0.10)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@4.1.12) - family@0.1.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(wagmi@2.19.2(@tanstack/query-core@5.90.6)(@tanstack/react-query@5.90.6(react@18.3.1))(@types/react@18.3.26)(bufferutil@4.0.9)(fastestsmallesttextencoderdecoder@1.0.22)(immer@10.0.2)(react@18.3.1)(typescript@5.8.3)(utf-8-validate@5.0.10)(viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@4.1.12))(ws@8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@4.1.12)): optionalDependencies: react: 18.3.1 @@ -17608,7 +17564,7 @@ snapshots: finalhandler@2.1.0: dependencies: - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) encodeurl: 2.0.0 escape-html: 1.0.3 on-finished: 2.4.1 @@ -17664,7 +17620,7 @@ snapshots: follow-redirects@1.15.11(debug@4.4.3): optionalDependencies: - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) for-each@0.3.5: dependencies: @@ -18027,7 +17983,7 @@ snapshots: axios: 0.21.4(debug@4.4.3) chalk: 4.1.2 chokidar: 3.6.0 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) enquirer: 2.4.1 ethers: 5.8.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) form-data: 4.0.4 @@ -18070,7 +18026,7 @@ snapshots: lodash: 4.17.21 markdown-table: 2.0.0 sha1: 1.1.1 - viem: 2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10) + viem: 2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.22.4) transitivePeerDependencies: - bufferutil - debug @@ -18089,7 +18045,7 @@ snapshots: adm-zip: 0.4.16 chalk: 5.6.2 chokidar: 4.0.3 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) enquirer: 2.4.1 ethereum-cryptography: 2.2.1 micro-eth-signer: 0.14.0 @@ -18115,7 +18071,7 @@ snapshots: adm-zip: 0.4.16 chalk: 5.6.2 chokidar: 4.0.3 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) enquirer: 2.4.1 ethereum-cryptography: 2.2.1 micro-eth-signer: 0.14.0 @@ -18773,7 +18729,7 @@ snapshots: dependencies: chalk: 5.6.2 commander: 13.1.0 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) execa: 8.0.1 lilconfig: 3.1.3 listr2: 8.3.3 @@ -19604,7 +19560,7 @@ snapshots: micromark@3.2.0: dependencies: '@types/debug': 4.1.12 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) decode-named-character-reference: 1.2.0 micromark-core-commonmark: 1.1.0 micromark-factory-space: 1.1.0 @@ -19626,7 +19582,7 @@ snapshots: micromark@4.0.2: dependencies: '@types/debug': 4.1.12 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) decode-named-character-reference: 1.2.0 devlop: 1.1.0 micromark-core-commonmark: 2.0.3 @@ -20138,21 +20094,6 @@ snapshots: transitivePeerDependencies: - zod - ox@0.9.6(typescript@5.8.3): - dependencies: - '@adraffy/ens-normalize': 1.11.1 - '@noble/ciphers': 1.3.0 - '@noble/curves': 1.9.1 - '@noble/hashes': 1.8.0 - '@scure/bip32': 1.7.0 - '@scure/bip39': 1.6.0 - abitype: 1.1.1(typescript@5.8.3)(zod@3.25.76) - eventemitter3: 5.0.1 - optionalDependencies: - typescript: 5.8.3 - transitivePeerDependencies: - - zod - ox@0.9.6(typescript@5.8.3)(zod@3.22.4): dependencies: '@adraffy/ens-normalize': 1.11.1 @@ -21000,8 +20941,6 @@ snapshots: hash-base: 3.1.2 inherits: 2.0.4 - risc0-ethereum@file:templates/default/lib/risc0-ethereum: {} - robust-predicates@3.0.2: {} rollup@4.52.5: @@ -21034,7 +20973,7 @@ snapshots: router@2.2.0: dependencies: - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) depd: 2.0.0 is-promise: 4.0.0 parseurl: 1.3.3 @@ -21125,7 +21064,7 @@ snapshots: send@1.2.0: dependencies: - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) encodeurl: 2.0.0 escape-html: 1.0.3 etag: 1.8.1 @@ -21847,7 +21786,7 @@ snapshots: cac: 6.7.14 chokidar: 4.0.3 consola: 3.4.2 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) esbuild: 0.25.12 fix-dts-default-cjs-exports: 1.0.1 joycon: 3.1.1 @@ -21901,7 +21840,7 @@ snapshots: typechain@8.3.2(typescript@5.8.3): dependencies: '@types/prettier': 2.7.3 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) fs-extra: 7.0.1 glob: 7.1.7 js-sha3: 0.8.0 @@ -22196,23 +22135,6 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.3 - viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10): - dependencies: - '@noble/curves': 1.9.1 - '@noble/hashes': 1.8.0 - '@scure/bip32': 1.7.0 - '@scure/bip39': 1.6.0 - abitype: 1.1.0(typescript@5.8.3)(zod@3.25.76) - isows: 1.0.7(ws@8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - ox: 0.9.6(typescript@5.8.3) - ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) - optionalDependencies: - typescript: 5.8.3 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - - zod - viem@2.38.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.22.4): dependencies: '@noble/curves': 1.9.1 @@ -22267,7 +22189,7 @@ snapshots: vite-node@1.6.1(@types/node@22.7.5): dependencies: cac: 6.7.14 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) pathe: 1.1.2 picocolors: 1.1.1 vite: 5.4.21(@types/node@22.7.5) @@ -22289,7 +22211,7 @@ snapshots: '@volar/typescript': 2.4.23 '@vue/language-core': 2.2.0(typescript@5.8.3) compare-versions: 6.1.1 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) kolorist: 1.8.0 local-pkg: 1.1.2 magic-string: 0.30.21 @@ -22341,7 +22263,7 @@ snapshots: vite-tsconfig-paths@4.3.2(typescript@5.8.3)(vite@5.4.21(@types/node@22.7.5)): dependencies: - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) globrex: 0.1.2 tsconfck: 3.1.6(typescript@5.8.3) optionalDependencies: @@ -22383,7 +22305,7 @@ snapshots: '@vitest/utils': 1.6.1 acorn-walk: 8.3.4 chai: 4.5.0 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.3(supports-color@5.5.0) execa: 8.0.1 local-pkg: 0.5.1 magic-string: 0.30.21