Forcerelay is now in active development stage and has a lot of things to do.
Currently we accomplished the creation of connection and channel layer between Axon and Ckb in CI, and so dose the creation of packet layer only in Ckb, so here is the further TODO checklist in both of relayer, contract, document and acceptance components:
In the relayer of Forcerelay/Axon
features
[x] add sUDT escrow contract into packet test in Ckb @ashuralyk @blckngm
[x] add Axon and Ckb compatible secret keys management logic in forcerelay keys command
[x] check Axon and Ckb's unimplemented methods in Endpoint trait, some of them might not to be completed because of the unnecessary telemetry query requirements @jjyr
164
[x] #316 @ashuralyk
[x] test-framework will create another mock connection id in creating IBC connection, which will cause an error print while running CI test
[x] implement header mpt-proof in Axon once the hard-fork feature has finished
264
[x] collect light client verification parameters from CKB to send with for IBC messages to Axon
[ ] (P-Medium) handle Timeout packet in both of Axon and Ckb #272
[ ] (P-Low) complete the CI test of IBC communication between Axon and Cosmos
[ ] (P-Low) complete the CI test of IBC communication between Ckb and Cosmos
[ ] (P-Low) merge latest Hermes version v1.6.0 #255 ~~
[x] integrate cell-emitter runtime in Ckb monitor and relay Ckb headers and filtered cells to Axon system contract
issues
[x] (P-Medium) relayer only prints hex-encoded error message while execution failed in Solidity contract, which brings barrier in contract debug #274
[x] write script to send message to business module contract (done forcerelay-ckb-sdk sudt-transfer example) @blckngm @ashuralyk
[x] implement cell-existence proof check in Ckb light client once Ckb integrated live-cell mpt root in its header (work with Axon system contract)
replaced by Axon precomplied contracts: ckb_blake2b & verify_mmr_proof
[ ] (to be discussed) design and accomplish Client and Port contracts to transform client_id and port_id from h256 to arbitrary string, which increases the compatibility of Ckb with IBC protocol https://github.com/synapseweb3/ckb-ics/issues/7
[ ] (to be discussed) design and accomplish TypeId contract to use different type hash to mark a group of IBC cells (coming up with IBC Utility contract in the future, maybe)
add type id script into ckb contracts to generate a unique IBC-ID to eliminate fake cells attack(optional)
-> See also Forcerealy IBC state(SMT) rollup solution
Acceptance of Forcerelay/Axon
[x] deploy solidity contracts and ckb contracts manually and start a standalone forcerelay server to test the message relay in the real world
[ ] (P-Medium) check the security of the design of Ckb contracts, which contains but not limited by the fake IBC cells and fake light client proofs, etc
[ ] (P-Low) concurrently create connection, channel and packet to test the stability of forcerelay
[ ] (P-Low) check the case of insufficient ckb of forcerelay
Construct a test scenario and try to spend all the CKB of the relayer
Done
## In the document of Forcerelay/Axon
- [x] #327
- [x] `README.md` for solidity contract
- [x] `README.md` for ckb contract
- [x] Deployment docs: https://github.com/synapseweb3/forcerelay/issues/285
- How to run a new Forcerelay/Axon relayer as a third party?
> operation instructions that introduce how to config forcerelay and deploy solidity and ckb contracts
- [x] `README.md` for forcerelay-ckb-sdk @blckngm
https://github.com/synapseweb3/forcerelay-ckb-sdk/issues/6
Forcerelay is now in active development stage and has a lot of things to do.
Currently we accomplished the creation of connection and channel layer between Axon and Ckb in CI, and so dose the creation of packet layer only in Ckb, so here is the further TODO checklist in both of relayer, contract, document and acceptance components:
In the relayer of Forcerelay/Axon
In the Solidity contract of Forcerelay/Axon
In the CKB contract of Forcerelay/Axon
Acceptance of Forcerelay/Axon
Done
## In the document of Forcerelay/Axon - [x] #327 - [x] `README.md` for solidity contract - [x] `README.md` for ckb contract - [x] Deployment docs: https://github.com/synapseweb3/forcerelay/issues/285 - How to run a new Forcerelay/Axon relayer as a third party? > operation instructions that introduce how to config forcerelay and deploy solidity and ckb contracts - [x] `README.md` for forcerelay-ckb-sdk @blckngm https://github.com/synapseweb3/forcerelay-ckb-sdk/issues/6