Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Testnet 9.2 #307

Merged
merged 152 commits into from
Oct 7, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
152 commits
Select commit Hold shift + click to select a range
ff29609
Add Bitcoin signet support
mappum Mar 27, 2024
bebf220
Add babylon module
mappum Mar 27, 2024
de3fc45
Move Babylon params into Params struct
mappum Mar 28, 2024
478d09c
Create babylon module
mappum Apr 3, 2024
850a2f3
Add Babylon to InnerApp
mappum Apr 3, 2024
5d969cb
Orgafy Babylon and Delegation types
mappum Apr 3, 2024
dceec07
Add babylon proto definitions
mappum Apr 3, 2024
3016583
Upgrade orga dependency
mappum Apr 4, 2024
fc8c55c
Start implementing Babylon signer
mappum Apr 4, 2024
ee4a88c
Update max_target for signet
mappum Apr 4, 2024
587833e
Add wait_to_collect_fees to bitcoin::checkpoint::Config
mappum Apr 5, 2024
b59d123
Start implementing Babylon relayer
mappum Apr 5, 2024
fab4458
Start imeplementing babylon-relayer, babylon-signer, and stake-nbtc C…
mappum Apr 5, 2024
2037835
Point orga to branch with subclient fixes
mappum Apr 5, 2024
a3f9170
Add swap-based stake/unstake
mappum Apr 5, 2024
ac55aad
Add Frost module
keppel Apr 5, 2024
4df1ba7
Add Frost field to Babylon
keppel Apr 5, 2024
3df615d
Add staking/unstaking queue test
mappum Apr 6, 2024
4ce14d0
Split Delegation signing phases into one for bbn signature, and one f…
mappum Apr 6, 2024
1bc2393
Add Frost signing in Babylon
keppel Apr 6, 2024
3f70abc
Add sigs to delegation
keppel Apr 6, 2024
412cbb1
Create initial frost group
keppel Apr 6, 2024
f158817
Advance frost signing with timeout
keppel Apr 6, 2024
7b23217
Readd babylon key as argument to Delegation and make Frost usage opti…
mappum Apr 6, 2024
d6d41a9
Omit absent validators from frost DKG
keppel Apr 6, 2024
04a72de
Fix proof generation and move into relayer module
mappum Apr 6, 2024
2fc1827
Start delegation walkthrough test
mappum Apr 6, 2024
5a1e8e2
Add frost signer cmd
keppel Apr 6, 2024
95a7927
Merge branch 'babylon' of https://github.com/mappum/nomic into babylon
keppel Apr 6, 2024
afbe59c
Add frost signer cmd
keppel Apr 6, 2024
5ce6690
Change frost interval
keppel Apr 6, 2024
3500018
Add frost group creation check
keppel Apr 6, 2024
9e20ef5
Use simple wallet in frost signer
keppel Apr 8, 2024
4044aee
Add user-facing calls and queries for babylon
mappum Apr 8, 2024
7fbf6dc
Add SDK call conversions for babylon calls
mappum Apr 8, 2024
8997e4c
Add secret store for frost signer
keppel Apr 8, 2024
fab6157
Remove unnecessary fee exemption
keppel Apr 8, 2024
ad2872e
Exempt babylon sign call from fee
mappum Apr 8, 2024
56060a4
Fix sig action required index
keppel Apr 8, 2024
47eced7
Remove in-progress signing package at frost sig iteration advance
keppel Apr 8, 2024
f69902d
Improve frost participation requirement checking
keppel Apr 8, 2024
19d7d97
Fix DKG action requirement checking
keppel Apr 8, 2024
d93616b
Adjust frost params
keppel Apr 8, 2024
0ea6e43
Adjust babylon staking period to 3 weeks
mappum Apr 8, 2024
76afad0
Feature-flag babylon and frost components which don't need to be buil…
mappum Apr 8, 2024
698f887
Fix WebClient for added bounds in client system
mappum Apr 8, 2024
4357145
Update network config
mappum Apr 9, 2024
7916cfc
Update for UI
cwlittle Apr 9, 2024
b097779
Merge branch 'ui' into babylon
keppel Apr 9, 2024
f9b3f7c
Pay nBTC fees for babylon calls
mappum Apr 9, 2024
8d72e63
Only push a maximum of 1 delegation output per checkpoint
mappum Apr 9, 2024
17c4ab1
Add frost signer logging
keppel Apr 9, 2024
f45a0e2
Remove amount field from withdraw_unstaked_nbtc call and exempt from fee
mappum Apr 9, 2024
ab9820f
Add pay_stbtc_fee call and use in MsgUnstakeNbtc conversion
mappum Apr 9, 2024
4a2a56a
Fix warnings
mappum Apr 10, 2024
11bebfe
Update slashing rate
mappum Apr 16, 2024
df4825c
Update wasm
cwlittle Apr 9, 2024
288ff99
Remove frost sig expiration step
keppel Apr 16, 2024
8d62de4
Update babylon params for testnet 4
mappum May 28, 2024
0562a84
Clear babylon delegation and frost states at given height
mappum May 28, 2024
910929f
Update babylon slashing tx fixtures
mappum Jun 27, 2024
d72667c
Add Babylon OP_RETURN output
mappum Jun 27, 2024
3caa0a8
Update babylon multisig script comparison opcodes
mappum Jul 12, 2024
86d4ac7
Add Delegation::staking_taproot method for creating spends
mappum Jul 12, 2024
eb2b0d2
Generalized babylon unbonding sighash generation
mappum Jul 12, 2024
e70e25b
Add ORGA_WALLET envvar to CLI
mappum Jul 12, 2024
fab5d07
Remove babylon remote chain logic
mappum Jul 12, 2024
b21bc61
Add babylon delegation unbonding state
mappum Jul 15, 2024
16228ee
Trigger unbonding of delegations and add signatures once complete
mappum Jul 19, 2024
5ccd98c
Pay unbonded delegations into checkpoint and renew remaining stake
mappum Jul 19, 2024
93b961d
Verify proof in unbond relay
mappum Jul 23, 2024
7f2612c
Add top-level unbonding tx relay call
mappum Jul 23, 2024
ce135b3
Merge branch 'develop' into babylon
mappum Sep 23, 2024
73cd25e
Relay ethereum signatures in correct order
mappum Sep 22, 2024
acf1746
Support multiple networks in Ethereum module
mappum Sep 24, 2024
8676693
Create separate transactions for Babylon staking
mappum Sep 24, 2024
f9a2dc2
Fix ethereum relayer
mappum Sep 24, 2024
441be55
Change Frost group interval to 10 minutes
mappum Sep 25, 2024
d505a3f
Change absent validator handling for frost group creation
keppel Sep 25, 2024
0a72bde
Bump testnet legacy_version and CONSENSUS_VERSION
mappum Sep 25, 2024
53ee8d0
Revert to storing OutMessageArgs unencoded in state
mappum Sep 25, 2024
0bacfa2
Enable Frost signature timeouts
keppel Sep 25, 2024
d9583fb
Remove Dest and IbcDest migrations
mappum Sep 25, 2024
3516e57
Add holesky and berachain to migration
mappum Sep 25, 2024
d72e441
v9.1.0
mappum Sep 25, 2024
380b06b
Enable legacy-bin feature
mappum Sep 25, 2024
4060cbe
v9.1.1
mappum Sep 25, 2024
4261baf
Fix to_sign query for invalid connections
mappum Sep 25, 2024
fb1c702
Fix ethereum signer
mappum Sep 26, 2024
3b7bba1
v9.1.3
mappum Sep 26, 2024
d2e15ba
Remove debug logging
mappum Sep 26, 2024
4c76779
v9.1.4
mappum Sep 26, 2024
7a8c304
Fix tests
mappum Sep 27, 2024
40435bc
Fix clippy warnings
mappum Sep 27, 2024
222a4be
Fix REST Cargo.lock
mappum Sep 27, 2024
1a68304
Format
mappum Sep 27, 2024
31ac233
Disable 'legacy-bin' feature
mappum Sep 27, 2024
40b189f
Keep track of sender for nBTC transfers
mappum Sep 27, 2024
ba8d161
Add owner and return_dest to Delegation
mappum Sep 27, 2024
2079c75
Add connection creation call
keppel Sep 27, 2024
43d912c
Add returnSenders array to bridge contract storage and include it in …
mappum Sep 28, 2024
4cb39f4
Handle bounceback for failed Ethereum -> Nomic transfers
mappum Sep 28, 2024
0ccfcbf
Merge pull request #308 from nomic-io/babylon-ownership
mappum Sep 28, 2024
cccfcad
Merge pull request #310 from nomic-io/eth-conn-creation
mappum Sep 28, 2024
46b7f8d
Key delegations by owner
mappum Sep 28, 2024
baf3406
Add unstake dest for remote triggering of unbonding
mappum Sep 28, 2024
04b21a9
Add Delegation unbond flow
mappum Sep 28, 2024
763981c
Move hardcoded constants into babylon::Params, and add to Babylon state
mappum Sep 28, 2024
3e3912f
Return error for invalid status in unbond() call rather than panicking
mappum Sep 28, 2024
044671e
Merge pull request #311 from nomic-io/babylon-unbond
mappum Sep 28, 2024
255cfff
Add contract call destinations
mappum Sep 28, 2024
5799940
Handle errors in remote contract calls in bridge contract
mappum Sep 28, 2024
1a6a052
Add unstake() function to Babylon staking contract
mappum Sep 28, 2024
42dd75a
Track Babylon delegation indices and owners
mappum Sep 28, 2024
0320c06
Add Babylon unbonding tx relaying
mappum Sep 28, 2024
368cb39
Add max_gas field in relay args
mappum Sep 28, 2024
dc401fc
Add babylon relayer loops in babylon-relayer subcommand
mappum Sep 28, 2024
438152d
Check transfers and contract calls for necessary fees and pay them to…
mappum Sep 28, 2024
caf073a
Pay to fallback address for failed contract calls
mappum Sep 28, 2024
407edb1
Fix relayer gas fee units
mappum Sep 28, 2024
e3a90ef
Merge pull request #312 from nomic-io/eth-fees
mappum Sep 28, 2024
da23a29
Add automatic withdrawal to unbonding Babylon delegations
mappum Sep 29, 2024
d09096e
Automatically unbond and renew delegations older than max_age
mappum Sep 29, 2024
7e7fcdb
Validate state in request_unbond
mappum Sep 29, 2024
6ce9afa
Get Babylon unbonding period and unbond fee from params
mappum Sep 29, 2024
fdb3d50
Add Babylon dest validation and fix Eth account sender bounceback
mappum Sep 29, 2024
df9d1a3
Add adjustEmergencyDisbursalBalance function to bridge contract
mappum Sep 29, 2024
e1a98be
Handle adjusting emergency disbursal balances from Ethereum senders
mappum Sep 29, 2024
41fc736
Clean up eth->network->connection accesses
mappum Sep 29, 2024
ddcd5ee
Add Ethereum dest validation
mappum Sep 29, 2024
b5cf936
Move Ethereum dest validation into module
mappum Sep 29, 2024
e1c64f4
Add 'babylon' feature, and fix existing features
mappum Sep 29, 2024
34281aa
Fix alloy dependencies for WASM build
mappum Sep 29, 2024
779b954
Specify sigset index in connection creation call
mappum Sep 30, 2024
ccff2f3
Use chainid and contract address in signing bytes rather than stored id
mappum Sep 30, 2024
0522538
Fix build
mappum Sep 30, 2024
ada91f2
Update rust-toolchain
mappum Sep 30, 2024
6e9c832
Add conversions for helios consensus-core types
mappum Sep 30, 2024
39cd8d2
Add consensus Update type and RPC client
mappum Sep 30, 2024
d448795
Add basic Ethereum consensus verification
mappum Sep 30, 2024
66cd188
Add real consensus light client constructor and add test fixtures
mappum Sep 30, 2024
c3ae1c0
Add Ethereum account and storage proofs
keppel Oct 1, 2024
19dde60
Add Ethereum consensus relaying
mappum Oct 1, 2024
37da3a7
Fix build
mappum Sep 30, 2024
c8a6a2f
Merge branch 'testnet-9.2' into eth-consensus
mappum Oct 1, 2024
507ef0c
Make eth relayer helper public
mappum Oct 1, 2024
ceb49e7
Fix clippy warnings
keppel Oct 7, 2024
8a96b75
Update CI
keppel Oct 7, 2024
59ec6ef
Update frost-secp256k1-tr dependency
keppel Oct 7, 2024
90e2cb8
Format
keppel Oct 7, 2024
d5e1a7a
Update CI
keppel Oct 7, 2024
5cee19b
Update Bitcoin test
keppel Oct 7, 2024
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
36 changes: 18 additions & 18 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
- name: Use Nightly
uses: actions-rs/toolchain@v1
with:
toolchain: nightly-2024-04-25
toolchain: nightly-2024-07-21
override: true
- name: Cache
uses: actions/cache@v4
Expand All @@ -38,32 +38,32 @@ jobs:
uses: actions-rs/cargo@v1
with:
command: test
args: --verbose --no-default-features --features=full,feat-ibc,testnet
args: --verbose --no-default-features --features=full

test-all-features:
test-testnet:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Use Nightly
uses: actions-rs/toolchain@v1
with:
toolchain: nightly-2024-04-25
toolchain: nightly-2024-07-21
override: true
- name: Cache
uses: actions/cache@v4
with:
path: |
~/.cargo
./target
key: ${{ runner.os }}-test-all-features-${{ hashFiles('Cargo.lock') }}
key: ${{ runner.os }}-test-testnet-${{ hashFiles('Cargo.lock') }}
restore-keys: |
${{ runner.os }}-test-all-features-
${{ runner.os }}-test-testnet-
- name: Test
uses: actions-rs/cargo@v1
with:
command: test
args: --verbose --all-features
args: --verbose --no-default-features --features=full,testnet

test-bitcoin:
runs-on: ubuntu-latest
Expand All @@ -73,24 +73,24 @@ jobs:
- name: Use Nightly
uses: actions-rs/toolchain@v1
with:
toolchain: nightly-2024-04-25
toolchain: nightly-2024-07-21
override: true
- name: Cache
uses: actions/cache@v4
with:
path: |
~/.cargo
./target
key: ${{ runner.os }}-test-all-features-${{ hashFiles('Cargo.lock') }}
key: ${{ runner.os }}-test-testnet-${{ hashFiles('Cargo.lock') }}
restore-keys: |
${{ runner.os }}-test-all-features-
${{ runner.os }}-test-testnet-
- name: Test
env:
RUST_LOG: info
uses: actions-rs/cargo@v1
with:
command: test
args: --verbose --all-features bitcoin -- --ignored
args: --verbose --features=devnet bitcoin -- --ignored

check-rest:
runs-on: ubuntu-latest
Expand All @@ -100,7 +100,7 @@ jobs:
- name: Use Nightly
uses: actions-rs/toolchain@v1
with:
toolchain: nightly-2024-04-25
toolchain: nightly-2024-07-21
override: true
- name: Check Rest
uses: actions-rs/cargo@v1
Expand All @@ -116,7 +116,7 @@ jobs:
- name: Use Nightly
uses: actions-rs/toolchain@v1
with:
toolchain: nightly-2024-04-25
toolchain: nightly-2024-07-21
override: true
- name: Install
run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh
Expand All @@ -132,7 +132,7 @@ jobs:
- name: Use Nightly
uses: actions-rs/toolchain@v1
with:
toolchain: nightly-2024-04-25
toolchain: nightly-2024-07-21
components: llvm-tools-preview
override: true
- name: Cache
Expand All @@ -155,7 +155,7 @@ jobs:
uses: actions-rs/cargo@v1
with:
command: llvm-cov
args: --no-cfg-coverage-nightly --no-default-features --features=full,feat-ibc,testnet --workspace --lcov --output-path lcov.info
args: --no-cfg-coverage-nightly --workspace --lcov --output-path lcov.info
- name: Upload to codecov.io
uses: codecov/codecov-action@v1
with:
Expand All @@ -171,7 +171,7 @@ jobs:
- name: Use Nightly
uses: actions-rs/toolchain@v1
with:
toolchain: nightly-2024-04-25
toolchain: nightly-2024-07-21
components: rustfmt
override: true
- name: Check
Expand All @@ -188,7 +188,7 @@ jobs:
- name: Use Nightly
uses: actions-rs/toolchain@v1
with:
toolchain: nightly-2024-04-25
toolchain: nightly-2024-07-21
components: clippy
override: true
- name: Cache
Expand All @@ -204,4 +204,4 @@ jobs:
uses: actions-rs/clippy-check@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
args: --no-default-features --features=full,feat-ibc,testnet -- -D warnings
args: -- -D warnings
Loading
Loading