Skip to content

Commit 874329e

Browse files
init
0 parents  commit 874329e

107 files changed

Lines changed: 20448 additions & 0 deletions

File tree

Some content is hidden

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

.env.example

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# Required for scripts
2+
PRIVATE_KEY=
3+
SALT=
4+
ENTRYPOINT_ADDRESS=0x0000000071727De22E5E9d8BAf0edAc6f37da032
5+
MULTISIG_DELEGATOR_IMPLEMENTATION_ADDRESS=
6+
7+
# Required for verifying contracts
8+
ETHERSCAN_API_KEY=
9+
10+
# RPC URLs
11+
MAINNET_RPC_URL=https://mainnet.infura.io/v3/
12+
LINEA_RPC_URL=https://linea-mainnet.infura.io/v3/

.gas-snapshot

Lines changed: 395 additions & 0 deletions
Large diffs are not rendered by default.

.github/ISSUE_TEMPLATE/feature.md

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
---
2+
name: Feature
3+
about: For new features
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
### **Description**
11+
12+
Describe the task. What does this aim to implement?
13+
14+
### **Technical Details**
15+
16+
- Implementation details
17+
- Insight to what needs to be done
18+
- Etc.
19+
20+
### **Acceptance Criteria**
21+
22+
- Are metrics required?
23+
- Are translations required?
24+
- Cases to satisfy
25+
- XYZ should work
26+
- Etc.
27+
28+
Scenario: xxxx
29+
- GIVEN a user is in x state
30+
- WHEN a user does x
31+
- AND a user does x
32+
- THEN x should occur
33+
34+
### **References**
35+
36+
- References go here.
37+
- Issue numbers. Links.
38+
- Slack threads.
39+
- Etc.

.github/pull_request_template.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
### **What?**
2+
3+
-
4+
5+
### **Why?**
6+
7+
-
8+
9+
### **How?**
10+
11+
-

.github/workflows/test.yml

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: Tests
2+
3+
on: [push, pull_request]
4+
5+
jobs:
6+
pre_job:
7+
continue-on-error: true
8+
runs-on: ubuntu-latest
9+
permissions:
10+
actions: "read"
11+
outputs:
12+
should_skip: ${{ steps.skip_check.outputs.should_skip }}
13+
steps:
14+
- id: skip_check
15+
uses: MetaMask/skip-duplicate-actions@v5
16+
with:
17+
concurrent_skipping: same_content_newer
18+
19+
tests:
20+
needs: pre_job
21+
if: needs.pre_job.outputs.should_skip != 'true'
22+
runs-on: ubuntu-latest
23+
steps:
24+
- uses: actions/checkout@v2
25+
26+
- name: Install Foundry
27+
uses: MetaMask/foundry-toolchain@v1
28+
with:
29+
version: nightly
30+
31+
- name: Run Forge Install
32+
run: forge install
33+
34+
- name: Check contract sizes
35+
run: forge build --sizes --skip test --skip script
36+
37+
- name: Run tests
38+
run: forge test -vvv

.gitignore

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# Compiler files
2+
cache/
3+
out/
4+
5+
# Ignores development broadcast logs
6+
/broadcast/**/dry-run/
7+
8+
report/
9+
10+
# Docs
11+
docs/
12+
13+
# Dotenv file
14+
*.env
15+
16+
# Files
17+
*.log
18+
.DS_Store
19+
20+
# Coverage
21+
coverage/
22+
filtered-lcov.info
23+
24+
# Node Modules
25+
node_modules/

.gitmodules

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
[submodule "lib/forge-std"]
2+
path = lib/forge-std
3+
url = https://github.com/foundry-rs/forge-std
4+
[submodule "lib/solidity-bytes-utils"]
5+
path = lib/solidity-bytes-utils
6+
url = https://github.com/GNSPS/solidity-bytes-utils
7+
[submodule "lib/solidity-stringutils"]
8+
path = lib/solidity-stringutils
9+
url = https://github.com/Arachnid/solidity-stringutils
10+
[submodule "lib/FreshCryptoLib"]
11+
path = lib/FreshCryptoLib
12+
url = https://github.com/rdubois-crypto/FreshCryptoLib
13+
[submodule "lib/openzeppelin-contracts"]
14+
path = lib/openzeppelin-contracts
15+
url = https://github.com/OpenZeppelin/openzeppelin-contracts
16+
[submodule "lib/account-abstraction"]
17+
path = lib/account-abstraction
18+
url = https://github.com/eth-infinitism/account-abstraction

.solhint.json

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
{
2+
"extends": "solhint:recommended",
3+
"rules": {
4+
"code-complexity": "off",
5+
"compiler-version": ["error", "0.8.23"],
6+
"const-name-snakecase": "off",
7+
"contract-name-camelcase": "off",
8+
"func-name-mixedcase": "off",
9+
"func-visibility": ["error", { "ignoreConstructors": true }],
10+
"max-line-length": ["error", 132],
11+
"no-console": "off",
12+
"no-global-import": "off",
13+
"no-inline-assembly": "off",
14+
"not-rely-on-time": "off",
15+
"var-name-mixedcase": "off"
16+
}
17+
}

.vscode/extensions.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{ "recommendations": ["NomicFoundation.hardhat-solidity"] }

.vscode/settings.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"editor.formatOnSave": true,
3+
"[solidity]": {
4+
"editor.defaultFormatter": "NomicFoundation.hardhat-solidity"
5+
},
6+
"npm.exclude": "**/lib/**",
7+
"solidity.formatter": "forge"
8+
}

0 commit comments

Comments
 (0)