Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
d5306e9
Create MULTICHAIN_EXPANSION_PROPOSAL.md
fretchen Jan 25, 2026
cf4733b
Update MULTICHAIN_EXPANSION_PROPOSAL.md
fretchen Jan 25, 2026
0eef461
Update MULTICHAIN_EXPANSION_PROPOSAL.md
fretchen Jan 25, 2026
1155482
Created a share-utils
fretchen Jan 25, 2026
88034d3
Start cleaning out scw_js
fretchen Jan 25, 2026
0d5407f
Further cleaning in scw_js
fretchen Jan 25, 2026
81270c1
More cleaning
fretchen Jan 25, 2026
a2307b9
Further cleaning with shared...
fretchen Jan 25, 2026
9025d87
Merge branch 'main' into multichain_img
fretchen Jan 25, 2026
32c424c
Update package-lock.json
fretchen Jan 25, 2026
1dabd8c
Update test-scw-js.yml
fretchen Jan 25, 2026
f928324
Update genimg_x402_token.js
fretchen Jan 25, 2026
5910e8e
Clean the problems
fretchen Jan 25, 2026
a07937e
Create README.md
fretchen Jan 25, 2026
d1c992a
Further cleaning
fretchen Jan 25, 2026
441f429
Cleaning the chain-utils a bit more
fretchen Jan 25, 2026
1c4e0f5
Update test-scw-js.yml
fretchen Jan 25, 2026
c539d5c
Merge branch 'main' into multichain_img
fretchen Jan 25, 2026
40dcf5b
Update MULTICHAIN_EXPANSION_PROPOSAL.md
fretchen Jan 25, 2026
10dcf0a
Start the transition
fretchen Jan 25, 2026
e49c4ec
Further simplification
fretchen Jan 25, 2026
ee7b388
More cleaning
fretchen Jan 26, 2026
e14471b
Move the facilitator to typescript and enable base
fretchen Jan 26, 2026
ac0b9af
More work with two networks
fretchen Jan 27, 2026
b6ce3f5
Update x402_facilitator_demo.ipynb
fretchen Jan 28, 2026
95280eb
Fix the tests and npm run check
fretchen Jan 28, 2026
6339d15
Clean up mode
fretchen Jan 28, 2026
fc604ee
Merge branch 'main' into multichain_img
fretchen Jan 28, 2026
25ceaec
Update MULTICHAIN_EXPANSION_PROPOSAL.md
fretchen Jan 28, 2026
ba520f7
Set up the useAutoNetwork hook
fretchen Jan 28, 2026
c587fbd
Did majore updates to the GenImg
fretchen Jan 28, 2026
ca19a0b
Clean
fretchen Jan 28, 2026
5547cc5
Cleaning
fretchen Jan 29, 2026
5c86b14
Add basic tests for useAutoNetwork
fretchen Jan 29, 2026
0a91e2f
Update PublicNFTList.test.tsx
fretchen Jan 29, 2026
f56f7fb
Cleaner tests
fretchen Jan 29, 2026
92bbce8
All test now run through
fretchen Jan 29, 2026
512da77
fix the testing
fretchen Jan 30, 2026
7f20abe
Test the problems.
fretchen Jan 30, 2026
a3a3e88
Update ImageGenerator.tsx
fretchen Jan 30, 2026
f1a59b2
clean console logs
fretchen Jan 30, 2026
5c36bfd
Further cleaning
fretchen Jan 30, 2026
c01819e
Lint
fretchen Jan 30, 2026
b6fc8ce
Proper build
fretchen Jan 30, 2026
97b4352
Update ImageGenerator.test.tsx
fretchen Jan 30, 2026
99f1b7f
Clean it up
fretchen Jan 30, 2026
d368b7c
Clean the tests
fretchen Jan 30, 2026
a5c331e
Update codeql.yml
fretchen Jan 30, 2026
7463db6
Prettier
fretchen Jan 30, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,13 @@ jobs:
with:
node-version: "22"

# Build shared chain-utils first (required by website)
- name: Build chain-utils
run: |
cd shared/chain-utils
npm ci
npm run build

# Install website dependencies
- name: Install website dependencies
run: |
Expand Down
7 changes: 7 additions & 0 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,9 +39,16 @@ jobs:
node-version: "22"
cache: "npm"
cache-dependency-path: |
shared/chain-utils/package-lock.json
website/package-lock.json
scw_js/package-lock.json

- name: Build chain-utils (local dependency)
working-directory: ./shared/chain-utils
run: |
npm ci
npm run build

- name: Install dependencies (website)
working-directory: ./website
run: npm ci
Expand Down
6 changes: 6 additions & 0 deletions .github/workflows/pages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,12 @@ jobs:

- name: Install and Build 🔧 # This example project is built using npm and outputs the result to the 'build' folder. Replace with the commands required to build your project, or remove this step entirely if your site is pre-built.
run: |
# Build shared chain-utils first (required by website)
cd shared/chain-utils
npm ci
npm run build
cd ../..
# Build website
cd website
npm ci
npm run build
Expand Down
37 changes: 23 additions & 14 deletions eth/DEPLOY_SUPPORT_V2_GUIDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ This guide explains how to deploy the SupportV2 contract to Optimism and Base ma

SupportV2 is an evolution of the original Support contract with these key changes:

| Feature | Support (v1) | SupportV2 |
|---------|--------------|-----------|
| Feature | Support (v1) | SupportV2 |
| -------------------- | ------------- | ------------------------ |
| `donate()` signature | `donate(url)` | `donate(url, recipient)` |

| Upgradeability | None | UUPS proxy |
Expand Down Expand Up @@ -82,17 +82,17 @@ networks: {

### Testnets ✅

| Network | Proxy Address | Implementation | Verified |
|---------|---------------|----------------|----------|
| Optimism Sepolia | `0x9859431b682e861b19e87Db14a04944BC747AB6d` | - | ✅ |
| Base Sepolia | `0xaB44BE78499721b593a0f4BE2099b246e9C53B57` | - | ✅ |
| Network | Proxy Address | Implementation | Verified |
| ---------------- | -------------------------------------------- | -------------- | -------- |
| Optimism Sepolia | `0x9859431b682e861b19e87Db14a04944BC747AB6d` | - | ✅ |
| Base Sepolia | `0xaB44BE78499721b593a0f4BE2099b246e9C53B57` | - | ✅ |

### Mainnets ✅

| Network | Proxy Address | Implementation | Verified |
|---------|---------------|----------------|----------|
| Optimism | `0x4ca63f8A4Cd56287E854f53E18ca482D74391316` | `0x011881999565F10aB2C62912878050Fb5deC10ac` | ✅ |
| Base | `0xB70EA4d714Fed01ce20E93F9033008BadA1c8694` | `0x314B07fBd33A7343479e99E6682D5Ee1da7F17c1` | ✅ |
| Network | Proxy Address | Implementation | Verified |
| -------- | -------------------------------------------- | -------------------------------------------- | -------- |
| Optimism | `0x4ca63f8A4Cd56287E854f53E18ca482D74391316` | `0x011881999565F10aB2C62912878050Fb5deC10ac` | ✅ |
| Base | `0xB70EA4d714Fed01ce20E93F9033008BadA1c8694` | `0x314B07fBd33A7343479e99E6682D5Ee1da7F17c1` | ✅ |

## Configuration File

Expand Down Expand Up @@ -135,10 +135,13 @@ Edit `scripts/deploy-support-v2.config.json`:
}
}
```

"environment": "mainnet"
}

}
```
}

````

### Configuration Options

Expand Down Expand Up @@ -175,9 +178,10 @@ cd eth

# Edit config: set validateOnly: true
npx hardhat run scripts/deploy-support-v2.ts --network optimisticEthereum
```
````

**What happens:**

- ✅ Validates contract compiles successfully
- ✅ Checks OpenZeppelin upgrade patterns
- ✅ Verifies UUPS proxy compatibility
Expand All @@ -192,6 +196,7 @@ npx hardhat run scripts/deploy-support-v2.ts --network optimisticEthereum
```

**What happens:**

- ✅ Shows deployment parameters
- ✅ Validates configuration
- ✅ Simulates deployment flow
Expand All @@ -205,6 +210,7 @@ npx hardhat run scripts/deploy-support-v2.ts --network optimisticEthereum
```

**For Base Mainnet:**

```bash
npx hardhat run scripts/deploy-support-v2.ts --network base
```
Expand Down Expand Up @@ -282,11 +288,13 @@ npx hardhat run scripts/verify-contract.ts --network base
```

The script will:

1. Verify the implementation contract
2. Attempt proxy verification with multiple strategies
3. Handle "Already Verified" gracefully

**Alternative (simple):**

```bash
npx hardhat verify --network optimisticEthereum <IMPLEMENTATION_ADDRESS>
```
Expand All @@ -302,7 +310,7 @@ const SUPPORT_V2_ADDRESSES: Record<number, `0x${string}`> = {
[baseSepolia.id]: "0xaB44BE78499721b593a0f4BE2099b246e9C53B57",
// Mainnets - ADD THESE AFTER DEPLOYMENT
[optimism.id]: "0x...", // ← Optimism Mainnet proxy address
[base.id]: "0x...", // ← Base Mainnet proxy address
[base.id]: "0x...", // ← Base Mainnet proxy address
};

// Update default chain for production
Expand Down Expand Up @@ -369,6 +377,7 @@ Ensure `scripts/deploy-support-v2.config.json` exists.
### "OpenZeppelin upgrade validation failed"

Check the contract for:

- Missing `__gap` arrays in base contracts
- Storage layout incompatibilities

Expand Down
Loading
Loading