-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
116 lines (90 loc) · 3.62 KB
/
Makefile
File metadata and controls
116 lines (90 loc) · 3.62 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
# Load environment variables from .env
include .env
export $(shell sed 's/=.*//' .env)
.SILENT:
install-ts:
npm install viem dotenv permissionless tslib
check-code:
cast code $(ADDRESS_OPENFORT_USER_ADDRESS_7702) --rpc-url $(SEPOLIA_RPC_URL)
openzeppelin:
forge install openzeppelin/openzeppelin-contracts
account-abstraction:
forge install eth-infinitism/account-abstraction
solady:
forge install Vectorized/solady
install-forge: openzeppelin account-abstraction solady
test-keys:
forge test --mp test/unit/Keys.t.sol -vv --rpc-url $(SEPOLIA_RPC_URL)
test-upgrade-addresses:
forge test --mp test/unit/UpgradeAddresses.t.sol -vv --rpc-url $(SEPOLIA_RPC_URL)
test-P256:
npx tsx --experimental-global-webcrypto script/P256_Single_Mint.ts && forge test --mp test/unit/P256.t.sol -vv --rpc-url $(SEPOLIA_RPC_URL)
test-registartion:
forge test --mp test/unit/Registartion.t.sol -vv --rpc-url $(SEPOLIA_RPC_URL)
test-eth:
npx tsx --experimental-global-webcrypto script/P256_ETH.ts && forge test --mp test/unit/DepositAndTransferETH.t.sol -vv --rpc-url $(SEPOLIA_RPC_URL)
test-execution:
npx tsx --experimental-global-webcrypto script/P256_Single_Mint.ts && npx tsx --experimental-global-webcrypto script/P256.ts && forge test --mp test/unit/Execution.t.sol -vv --rpc-url $(SEPOLIA_RPC_URL)
test-recovery:
forge test --mp test/unit/Recoverable.t.sol --rpc-url $(SEPOLIA_RPC_URL) -vv
test-all:
npx tsx --experimental-global-webcrypto script/P256_Single_Mint.ts && npx tsx --experimental-global-webcrypto script/P256_ETH.ts && npx tsx --experimental-global-webcrypto script/P256.ts && forge test -vv --rpc-url $(SEPOLIA_RPC_URL)
coverage:
forge coverage --ir-minimum --rpc-url $(SEPOLIA_RPC_URL) >> coverage.txt
gas:
forge test --gas-report --rpc-url $(SEPOLIA_RPC_URL)
storage:
forge clean && forge inspect src/core/OPFMain.sol:OPFMain storageLayout
deploy-webauthn:
forge create src/utils/WebAuthnVerifier.sol:WebAuthnVerifier \
--rpc-url $(SEPOLIA_RPC_URL) \
--account BURNER_KEY \
--verify \
--etherscan-api-key $(ETHERSCAN_KEY) \
--broadcast
deploy-webauthnv2:
forge create src/utils/WebAuthnVerifierV2.sol:WebAuthnVerifierV2 \
--rpc-url $(SEPOLIA_RPC_URL) \
--account BURNER_KEY \
--verify \
--etherscan-api-key $(ETHERSCAN_KEY) \
--broadcast
deploy-7702-base:
forge create src/core/OPF7702Recoverable.sol:OPF7702Recoverable \
--rpc-url $(SEPOLIA_BASE_RPC_URL) \
--account BURNER_KEY \
--verify \
--etherscan-api-key $(ETHERSCAN_KEY_BASE) \
--broadcast \
--constructor-args 0x4337084D9E255Ff0702461CF8895CE9E3b5Ff108 0xeD43b3a3D00d791BC0B353666b5780B0F9245CC1 172800 604800 129600 43200
# 0xDCeaC68C8463Ed6b1026a47fe935dBC41392490f
deploy-7702-mainnet:
forge create src/core/OPFMain.sol:OPFMain \
--rpc-url $(SEPOLIA_RPC_URL) \
--account BURNER_KEY \
--verify \
--etherscan-api-key $(ETHERSCAN_KEY) \
--broadcast \
--constructor-args 0x4337084D9E255Ff0702461CF8895CE9E3b5Ff108 0xeD43b3a3D00d791BC0B353666b5780B0F9245CC1 172800 604800 129600 43200
simple-mainnet:
forge create src/mocks/SimpleContract.sol:SimpleContract \
--rpc-url $(SEPOLIA_RPC_URL) \
--account BURNER_KEY \
--verify \
--etherscan-api-key $(ETHERSCAN_KEY) \
--broadcast \
--constructor-args 0x4337084D9E255Ff0702461CF8895CE9E3b5Ff108
script-deploy-upgradeable:
forge script script/DeployUpgradeable.s.sol:DeployUpgradeable \
--rpc-url $(SEPOLIA_RPC_URL) \
--account BURNER_KEY \
--verify \
--etherscan-api-key $(ETHERSCAN_KEY) \
--broadcast
script-init:
forge script script/InitProxy.s.sol:InitProxy \
--rpc-url $(SEPOLIA_RPC_URL) \
--private-key $(PRIVATE_KEY_PROXY) \
-vvvv
push:
git push -u origin OPF7702_PROXY_After_Audit_Gas_Policy_Module