Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
5d302b3
First draft
sunbreak1211 Dec 11, 2025
ad963d8
Stop burning on redeem, allow partial withdraw, whitelist gated NFAT …
Feb 17, 2026
4ca2de5
Make fund permissionless & remove redundant view func
Feb 17, 2026
a03cfb0
Update CI
Feb 17, 2026
f955638
Remove totalDeposits
Feb 17, 2026
7d127b1
Remove notStopped from ops other than claim
Feb 17, 2026
531ba5d
Make stop roleAuth
Feb 17, 2026
9e7e009
Pass (from, to) to whitelist
Feb 17, 2026
977c35b
Minor fixes
Feb 17, 2026
81078a3
Remove unnecessary transfer requires
Feb 17, 2026
7720765
Add funder address to Fund event
Feb 18, 2026
16d4d7c
Use IdentityNetwork nomenclature
Feb 18, 2026
ac46513
Remove {principal, depositor, mintedAt}
Feb 19, 2026
16baa6c
Minor nits
Feb 19, 2026
a380664
Merge Redeemer with Facillity
Feb 19, 2026
f5773c9
Rename susds to gem
Feb 19, 2026
1a36efa
Add README
Feb 19, 2026
f846f97
Add deploy scripts + nits
Feb 19, 2026
4df7bc9
Add tests
Feb 20, 2026
3109be5
Add dss-test
Feb 20, 2026
c4d9cff
Improve README
Feb 20, 2026
9914e43
Remove role system
Feb 23, 2026
b911357
Check membership in redeem
Feb 23, 2026
63ec75f
Rename claim -> issue
Feb 23, 2026
c9716d3
Clarify README
Feb 23, 2026
9cb25ec
Inherit ERC721 from OZ
Feb 23, 2026
d2e53e7
Pick tokenId offchain
Feb 24, 2026
9be8ed8
Allow mint with no deposit claimed
Feb 24, 2026
88327a4
Add rescue functions
Feb 25, 2026
4040cb1
Strip natspec and unnecessary comments
Feb 25, 2026
1f3f7c4
Use generic recipient var name
Feb 26, 2026
128e725
Address review nits
Feb 26, 2026
e4accf5
Improve comments
Feb 26, 2026
ef9759d
Add simple terms mailbox
Feb 26, 2026
e71b1ed
Use emitted data in subscribe
Feb 26, 2026
f99761d
Make other operations stoppable
Feb 26, 2026
abb172f
Add LICENSE
Feb 26, 2026
44e74bc
Make baseURL fileable
Feb 26, 2026
96cc1f1
Make recipient fileable + address review nits
Feb 27, 2026
9eb21a1
Rename ops
Feb 27, 2026
c487371
Address review comments
Feb 27, 2026
a4624f9
Address more review comments
Mar 2, 2026
45fe114
Add issue note
Mar 2, 2026
4684359
Add collect note
Mar 2, 2026
b66d51d
Add rescue note
Mar 2, 2026
967d34f
Add L1 note
Mar 2, 2026
a32520f
Improve tests
Mar 2, 2026
22792ef
Minor test changes
Mar 2, 2026
e61db77
Improve tests
Mar 3, 2026
cfb97fc
Remove spec deviation list
Mar 3, 2026
9ba02c0
Update comments
Mar 4, 2026
ad19ea0
Improve first README paragraph
Mar 4, 2026
b9eaaec
Minor README tweak
Mar 4, 2026
4a085bf
Add Certora specs (#3)
sunbreak1211 Mar 17, 2026
530a5e3
Address audit suggestions (#4)
telome Mar 17, 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
41 changes: 41 additions & 0 deletions .github/workflows/certora.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: Certora

on: [push, pull_request]

jobs:
certora:
name: Certora
runs-on: ubuntu-latest
strategy:
fail-fast: false

steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive

- uses: actions/setup-java@v2
with:
distribution: 'zulu'
java-version: '11'
java-package: jre

- name: Set up Python 3.13
uses: actions/setup-python@v5
with:
python-version: '3.13'

- name: Install solc-select
run: pip3 install solc-select

- name: Solc Select 0.8.24
run: solc-select install 0.8.24

- name: Install Certora
run: pip3 install certora-cli-beta

- name: Verify nfat
run: make certora-nfat results=1
env:
CERTORAKEY: ${{ secrets.CERTORAKEY }}
39 changes: 17 additions & 22 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -1,38 +1,33 @@
name: CI
name: test

permissions: {}

on:
push:
pull_request:
workflow_dispatch:

env:
FOUNDRY_PROFILE: ci
on: [push, pull_request]

jobs:
check:
strategy:
fail-fast: true

name: Foundry project
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v3
with:
persist-credentials: false
submodules: recursive

- name: Install Foundry
uses: foundry-rs/foundry-toolchain@v1

- name: Show Forge version
run: forge --version

- name: Run Forge fmt
run: forge fmt --check
with:
version: stable

- name: Run Forge build
run: forge build --sizes
run: |
forge --version
forge build --sizes
id: build

- name: Run Forge tests
run: forge test -vvv
run: |
forge test -vvv
id: test
env:
ETH_RPC_URL: ${{ secrets.ETH_RPC_URL }}
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,6 @@ docs/

# Dotenv file
.env

# Certora
.certora_internal
9 changes: 6 additions & 3 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
[submodule "lib/forge-std"]
path = lib/forge-std
url = https://github.com/foundry-rs/forge-std
[submodule "lib/dss-test"]
path = lib/dss-test
url = https://github.com/makerdao/dss-test
[submodule "lib/openzeppelin-contracts"]
path = lib/openzeppelin-contracts
url = https://github.com/OpenZeppelin/openzeppelin-contracts
Loading
Loading