encointer / encointer-parachain Goto Github PK
View Code? Open in Web Editor NEWThe common good parachain for Kusama
Home Page: https://encointer.org
License: GNU General Public License v3.0
The common good parachain for Kusama
Home Page: https://encointer.org
License: GNU General Public License v3.0
check how to do that here (pretty exactly like here. see python test script too): integritee-network/integritee-node#41
This will be a high priority update and will bring teleporter trust for encointer
in order to really look like KSM in js/apps, we need to adjust this runtime constant to 2
instead of 42
in order for the app to work with the parachain, we need to expose the same rpc methods and test --enable-offchain-indexing
Add build/release process to github actions
although llvm 10 is available, we get this:
= note: /usr/local/bin/ld: /home/abrenzikofer/integritee-parachain/target/release/deps/libring-047a7a5d3bde103a.rlib(vpaes-x86_64-elf.o): in function `GFp_vpaes_encrypt':
/home/abrenzikofer/.cargo/registry/src/github.com-1ecc6299db9ec823/ring-0.16.19/pregenerated/vpaes-x86_64-elf.S:607: multiple definition of `GFp_vpaes_encrypt'; /home/abr
enzikofer/integritee-parachain/target/release/deps/libring-6cd9d9a5e3f06fc6.rlib(vpaes-x86_64-elf.o):/home/abrenzikofer/integritee-parachain/target/release/build/ring-4d107b347f459
69e/out/vpaes-x86_64-elf.S:427: first defined here
/usr/local/bin/ld: /home/abrenzikofer/integritee-parachain/target/release/deps/libring-047a7a5d3bde103a.rlib(vpaes-x86_64-elf.o): in function `GFp_vpaes_set_encrypt_key':
/home/abrenzikofer/.cargo/registry/src/github.com-1ecc6299db9ec823/ring-0.16.19/pregenerated/vpaes-x86_64-elf.S:588: multiple definition of `GFp_vpaes_set_encrypt_key'; /
home/abrenzikofer/integritee-parachain/target/release/deps/libring-6cd9d9a5e3f06fc6.rlib(vpaes-x86_64-elf.o):/home/abrenzikofer/integritee-parachain/target/release/build/ring-4d107
b347f45969e/out/vpaes-x86_64-elf.S:408: first defined here
/usr/local/bin/ld: /home/abrenzikofer/integritee-parachain/target/release/deps/libring-047a7a5d3bde103a.rlib(aes_nohw.o): in function `GFp_aes_nohw_encrypt':
/home/abrenzikofer/.cargo/registry/src/github.com-1ecc6299db9ec823/ring-0.16.19/crypto/fipsmodule/aes/aes_nohw.c:896: multiple definition of `GFp_aes_nohw_encrypt'; /home
/abrenzikofer/integritee-parachain/target/release/deps/libring-6cd9d9a5e3f06fc6.rlib(aes-x86_64-elf.o):/home/abrenzikofer/integritee-parachain/target/release/build/ring-4d107b347f4
5969e/out/aes-x86_64-elf.S:194: first defined here
/usr/local/bin/ld: /home/abrenzikofer/integritee-parachain/target/release/deps/libring-047a7a5d3bde103a.rlib(aes_nohw.o): in function `GFp_aes_nohw_set_encrypt_key':
/home/abrenzikofer/.cargo/registry/src/github.com-1ecc6299db9ec823/ring-0.16.19/crypto/fipsmodule/aes/aes_nohw.c:884: multiple definition of `GFp_aes_nohw_set_encrypt_key
'; /home/abrenzikofer/integritee-parachain/target/release/deps/libring-6cd9d9a5e3f06fc6.rlib(aes-x86_64-elf.o):/home/abrenzikofer/integritee-parachain/target/release/build/ring-4d1
07b347f45969e/out/aes-x86_64-elf.S:277: first defined here
collect2: error: ld returned 1 exit status
trying to send balances.transfer
2022-02-23 13:55:20 RPC-CORE: submitAndWatchExtrinsic(extrinsic: Extrinsic):
ExtrinsicStatus:: 1002: Verification Error: Runtime error: Execution failed:
Other("Wasm execution trapped: wasm trap: wasm `unreachable` instruction executed\n
wasm backtrace:\n
0: 0x23d8 - <unknown>!rust_begin_unwind\n
1: 0x204b - <unknown>!core::panicking::panic_fmt::h8f11323637b4db3b\n
2: 0x1c5ae1 - <unknown>!TaggedTransactionQueue_validate_transaction\n
"): RuntimeApi, Execution failed:
Other, \"Wasm execution trapped: wasm trap: wasm `unreachable` instruction executed\\n
wasm backtrace:\\n
0: 0x23d8 - <unknown>!rust_begin_unwind\\n
1: 0x204b - <unknown>!core::panicking::panic_fmt::h8f11323637b4db3b\\…
The initial runtime that will be registered on Kusama and then voted on to become a common-good parachain.
Unlike Statemine, the shell will not really be empty.
Implement and test “launch release” runtime with all dispatchables filtered. (With KSM as native token, but no teleport, only untrusted down-/upward reserve transfer. See #4)
The goal is to have a safe starting point where only sudo can send extrinsics, upgrade code and transfer a first stash of KSM to the parachain that can be distributed to onboard participants, so they can pay fees. Once setup, the call filters can be lifted.
CL EDIT:
I will break this task into subtasks for smaller PRs:
I did not do them in #68 due to time constraints
submitAndWatchExtrinsic(extrinsic: Extrinsic): ExtrinsicStatus:: 1002: Verification Error: Runtime error: Execution failed: ApiError(FailedToConvertParameter { function: "validate_transaction", parameter: "tx", error: Error { cause: None, desc: "Could not decode `MultiAddress`, variant doesn't exist" } }): RuntimeApi, Execution failed: ApiError, FailedToConvertParameter { function: \"validate_transaction\", parameter: \"tx\", error: Error { cause: None, desc: \"Could not decode `MultiAddress`, variant doesn't exist\" } }
As js/apps doesn't show the developer
tab anymore, where custom types could be set, this issue actually blocks testing
It turned out that the updward-/downward cross chain token tx was tested with the relay-chain being on v0.9.10 instead of v0.9.12.
With v0.9.10 it worked fine, but with v0.9.12 the transfer fails with:
Execution of an XCM message was attempted.
XcmV2TraitsOutcome
{
Incomplete: [
1,000,000,000
DestinationUnsupported
]
}
depends on #21
The specs are still using alice etc. as authorities
I thought this will be a minor thing. However, #61 does not produce parachain blocks; hence I will merge in the statemine upgrades incrementally and test block production with each pr.
this is an unfortunate leftover from an intermediate integration state
It used to work with polkadot-v0.9.10, only upgrading the Polkadot binary made this fail. Downward token tx does still work.
Observations:
Barrier
is returned.Edit:
LimitedReserveTransferAsset
and set weightbound to Unlimited
, if we use the XcmVersion 1, which we currently do. However, we get a new error now: UntrustedReserveLocation
Trying to upgrade parachain code from the relaychain like this:
The chain stalls:
The only suspicious line in this log to me is Collation wasn't advertised to any validator
2021-11-07 09:00:18 [Relaychain] ✨ Imported #135 (0x913d…50dc)
2021-11-07 09:00:18 [Parachain] Starting collation. relay_parent=0x913d873349e2eab31ba4a9b1dcdfa071586effe0043a89c7e097ede6e5ff50dc at=0x2cdf37e45350944db533f8b79eef21c33cf10ba9545c8045ce43121c0c7c26bd
2021-11-07 09:00:18 [Parachain] 🙌 Starting consensus session on top of parent 0x2cdf37e45350944db533f8b79eef21c33cf10ba9545c8045ce43121c0c7c26bd
2021-11-07 09:00:18 [Parachain] 🎁 Prepared block for proposing at 60 [hash: 0x7fa56d0a8d29ffdc4f092beed3de0b5735ed6acefa541cedb9d63ff551c2e3f7; parent_hash: 0x2cdf…26bd; extrinsics (2): [0xd1d4…3151, 0x7f34…95e5]]
2021-11-07 09:00:18 [Parachain] 🔖 Pre-sealed block for proposal at 60. Hash now 0xaad5a477e06ffe5c95d534e5a80225d3a4fd1d41c1566165ea5afd1225848cfc, previously 0x7fa56d0a8d29ffdc4f092beed3de0b5735ed6acefa541cedb9d63ff551c2e3f7.
2021-11-07 09:00:18 [Parachain] ✨ Imported #60 (0xaad5…8cfc)
2021-11-07 09:00:18 [Parachain] PoV size { header: 0.1787109375kb, extrinsics: 2.400390625kb, storage_proof: 4.5185546875kb }
2021-11-07 09:00:18 [Parachain] Produced proof-of-validity candidate. block_hash=0xaad5a477e06ffe5c95d534e5a80225d3a4fd1d41c1566165ea5afd1225848cfc
2021-11-07 09:00:18 [Relaychain] 👴 Applying authority set change scheduled at block #131
2021-11-07 09:00:18 [Relaychain] 👴 Applying GRANDPA set change to new set [(Public(88dc3417d5058ec4b4503e0c12ea1a0a89be200fe98922423d4334014fa6b0ee (5FA9nQDV...)), 1), (Public(d17c2d7823ebf260fd138f2d7e27d114c0145d968b5ff5006125f2414fadae69 (5GoNkf6W...)), 1), (Public(439660b36c6c03afafca027b910b4fecf99801834c62a5e6006f27d978de234f (5DbKjhNL...)), 1)]
2021-11-07 09:00:20 [Parachain] 💤 Idle (0 peers), best: #59 (0x2cdf…26bd), finalized #57 (0x7c6b…5ba2), ⬇ 0 ⬆ 0
2021-11-07 09:00:20 [Relaychain] 💤 Idle (3 peers), best: #135 (0x913d…50dc), finalized #131 (0xff7d…e43b), ⬇ 1.5kiB/s ⬆ 2.7kiB/s
2021-11-07 09:00:24 [Relaychain] ✨ Imported #136 (0xbde0…281b)
2021-11-07 09:00:24 [Parachain] Starting collation. relay_parent=0xbde03a3805ed05a21a62f95271ae442650372ca22abee5036b2b907a6ca5281b at=0x2cdf37e45350944db533f8b79eef21c33cf10ba9545c8045ce43121c0c7c26bd
2021-11-07 09:00:24 [Parachain] 🙌 Starting consensus session on top of parent 0x2cdf37e45350944db533f8b79eef21c33cf10ba9545c8045ce43121c0c7c26bd
2021-11-07 09:00:24 [Parachain] 🎁 Prepared block for proposing at 60 [hash: 0xfa00818ca1c2254227d419a9787b839ab0441b925861896d60870e184b4c1d07; parent_hash: 0x2cdf…26bd; extrinsics (2): [0x90cc…c53d, 0x8719…ba41]]
2021-11-07 09:00:24 [Parachain] 🔖 Pre-sealed block for proposal at 60. Hash now 0xc844a66f0856bd4a4f9441704010d76e81446203297af7b4fc73cce26045b105, previously 0xfa00818ca1c2254227d419a9787b839ab0441b925861896d60870e184b4c1d07.
2021-11-07 09:00:24 [Parachain] ✨ Imported #60 (0xc844…b105)
2021-11-07 09:00:24 [Parachain] PoV size { header: 0.1787109375kb, extrinsics: 2.400390625kb, storage_proof: 4.5185546875kb }
2021-11-07 09:00:24 [Parachain] Produced proof-of-validity candidate. block_hash=0xc844a66f0856bd4a4f9441704010d76e81446203297af7b4fc73cce26045b105
2021-11-07 09:00:25 [Parachain] 💤 Idle (0 peers), best: #59 (0x2cdf…26bd), finalized #57 (0x7c6b…5ba2), ⬇ 0 ⬆ 0
2021-11-07 09:00:25 [Relaychain] 💤 Idle (3 peers), best: #136 (0xbde0…281b), finalized #132 (0xd353…671d), ⬇ 1.6kiB/s ⬆ 2.3kiB/s
2021-11-07 09:00:30 [Relaychain] ✨ Imported #137 (0x6878…b16b)
2021-11-07 09:00:30 [Parachain] 💤 Idle (0 peers), best: #59 (0x2cdf…26bd), finalized #58 (0x5ea3…e01a), ⬇ 0 ⬆ 0
2021-11-07 09:00:30 [Relaychain] 💤 Idle (3 peers), best: #137 (0x6878…b16b), finalized #134 (0xd659…1cae), ⬇ 419.6kiB/s ⬆ 210.5kiB/s
2021-11-07 09:00:35 [Parachain] 💤 Idle (0 peers), best: #59 (0x2cdf…26bd), finalized #59 (0x2cdf…26bd), ⬇ 0 ⬆ 0
2021-11-07 09:00:35 [Relaychain] 💤 Idle (3 peers), best: #137 (0x6878…b16b), finalized #135 (0x913d…50dc), ⬇ 1.0kiB/s ⬆ 0.9kiB/s
2021-11-07 09:00:36 [Relaychain] ✨ Imported #138 (0x53d5…948e)
2021-11-07 09:00:36 [Parachain] Starting collation. relay_parent=0x53d5fee2bdcf9d532c7134b4915b86d79ff745b12d9be2824464bf2a6ba3948e at=0xc844a66f0856bd4a4f9441704010d76e81446203297af7b4fc73cce26045b105
2021-11-07 09:00:36 [Parachain] 🙌 Starting consensus session on top of parent 0xc844a66f0856bd4a4f9441704010d76e81446203297af7b4fc73cce26045b105
2021-11-07 09:00:36 [Parachain] 🎁 Prepared block for proposing at 61 [hash: 0x86df83b2f389b0f33c5eb71e5cb13afd55487225d945a8fc8fe854fbb4bddca5; parent_hash: 0xc844…b105; extrinsics (2): [0x62f9…3b66, 0x9b10…dcee]]
2021-11-07 09:00:36 [Parachain] 🔖 Pre-sealed block for proposal at 61. Hash now 0x1024b5500f8cf0f2cf07efb0b7c0bdc041ffd4fef65f4b47168dda0ce2e78547, previously 0x86df83b2f389b0f33c5eb71e5cb13afd55487225d945a8fc8fe854fbb4bddca5.
2021-11-07 09:00:36 [Parachain] ✨ Imported #61 (0x1024…8547)
2021-11-07 09:00:36 [Parachain] PoV size { header: 0.1787109375kb, extrinsics: 2.49609375kb, storage_proof: 4.4794921875kb }
2021-11-07 09:00:36 [Parachain] Produced proof-of-validity candidate. block_hash=0x1024b5500f8cf0f2cf07efb0b7c0bdc041ffd4fef65f4b47168dda0ce2e78547
2021-11-07 09:00:40 [Parachain] 💤 Idle (0 peers), best: #60 (0xc844…b105), finalized #59 (0x2cdf…26bd), ⬇ 0 ⬆ 0
2021-11-07 09:00:40 [Relaychain] 💤 Idle (3 peers), best: #138 (0x53d5…948e), finalized #135 (0x913d…50dc), ⬇ 1.3kiB/s ⬆ 2.3kiB/s
2021-11-07 09:00:42 [Relaychain] ✨ Imported #139 (0x5955…ebe2)
2021-11-07 09:00:42 [Parachain] Starting collation. relay_parent=0x5955b9c5cdbf19efc9d2b1995bfef510967094e0997a46f3531e361bf984ebe2 at=0xc844a66f0856bd4a4f9441704010d76e81446203297af7b4fc73cce26045b105
2021-11-07 09:00:42 [Parachain] 🙌 Starting consensus session on top of parent 0xc844a66f0856bd4a4f9441704010d76e81446203297af7b4fc73cce26045b105
2021-11-07 09:00:42 [Parachain] 🎁 Prepared block for proposing at 61 [hash: 0x782f3c3a5825033349ab3a3520f45da0d30c60d851bfb594c0d5c08ee34cb7d8; parent_hash: 0xc844…b105; extrinsics (2): [0xb685…a138, 0xaffa…0d71]]
2021-11-07 09:00:42 [Parachain] 🔖 Pre-sealed block for proposal at 61. Hash now 0x87322ea5db060364f157d1b2b354cb4ddc1acc172b71412746fc34f38268954e, previously 0x782f3c3a5825033349ab3a3520f45da0d30c60d851bfb594c0d5c08ee34cb7d8.
2021-11-07 09:00:42 [Parachain] ✨ Imported #61 (0x8732…954e)
2021-11-07 09:00:42 [Parachain] PoV size { header: 0.1787109375kb, extrinsics: 2.49609375kb, storage_proof: 4.4794921875kb }
2021-11-07 09:00:42 [Parachain] Produced proof-of-validity candidate. block_hash=0x87322ea5db060364f157d1b2b354cb4ddc1acc172b71412746fc34f38268954e
2021-11-07 09:00:45 [Parachain] 💤 Idle (0 peers), best: #60 (0xc844…b105), finalized #59 (0x2cdf…26bd), ⬇ 0 ⬆ 0
2021-11-07 09:00:45 [Relaychain] 💤 Idle (2 peers), best: #139 (0x5955…ebe2), finalized #135 (0x913d…50dc), ⬇ 1.1kiB/s ⬆ 0.6kiB/s
2021-11-07 09:00:48 [Relaychain] ✨ Imported #140 (0xd112…7e34)
2021-11-07 09:00:48 [Parachain] Starting collation. relay_parent=0xd11213e13d0e573bc97611f03279ca118bceaf1909a1ed37fae5926446007e34 at=0xc844a66f0856bd4a4f9441704010d76e81446203297af7b4fc73cce26045b105
2021-11-07 09:00:48 [Parachain] 🙌 Starting consensus session on top of parent 0xc844a66f0856bd4a4f9441704010d76e81446203297af7b4fc73cce26045b105
2021-11-07 09:00:48 [Parachain] 🎁 Prepared block for proposing at 61 [hash: 0x4c634a0fbf941467fbfa950506886a46b4e46bd3f34944f5e24bf5fbec286ad3; parent_hash: 0xc844…b105; extrinsics (2): [0x37f4…1c33, 0xeff2…4dd0]]
2021-11-07 09:00:48 [Parachain] 🔖 Pre-sealed block for proposal at 61. Hash now 0x8a0738f74492f787fb9388100d96eb184c33b345d55dcf8680c69a7008dce28b, previously 0x4c634a0fbf941467fbfa950506886a46b4e46bd3f34944f5e24bf5fbec286ad3.
2021-11-07 09:00:48 [Parachain] ✨ Imported #61 (0x8a07…e28b)
2021-11-07 09:00:48 [Parachain] PoV size { header: 0.1787109375kb, extrinsics: 2.49609375kb, storage_proof: 4.4794921875kb }
2021-11-07 09:00:48 [Parachain] Produced proof-of-validity candidate. block_hash=0x8a0738f74492f787fb9388100d96eb184c33b345d55dcf8680c69a7008dce28b
2021-11-07 09:00:50 [Parachain] 💤 Idle (0 peers), best: #60 (0xc844…b105), finalized #60 (0xc844…b105), ⬇ 0 ⬆ 0
2021-11-07 09:00:50 [Relaychain] 💤 Idle (3 peers), best: #140 (0xd112…7e34), finalized #138 (0x53d5…948e), ⬇ 2.6kiB/s ⬆ 1.8kiB/s
2021-11-07 09:00:54 [Relaychain] 👶 New epoch 14 launching at block 0x1295…d666 (block slot 272712009 >= start slot 272712009).
2021-11-07 09:00:54 [Relaychain] 👶 Next epoch starts at slot 272712019
2021-11-07 09:00:54 [Relaychain] ✨ Imported #141 (0x1295…d666)
2021-11-07 09:00:54 [Relaychain] Advanced session window for approvals update=Advanced { prev_window_start: 8, prev_window_end: 13, new_window_start: 9, new_window_end: 14 }
2021-11-07 09:00:54 [Parachain] Starting collation. relay_parent=0x12951a7d56ad10692eea850904f330fb29157eb13ec1c10ac56985b835dad666 at=0xc844a66f0856bd4a4f9441704010d76e81446203297af7b4fc73cce26045b105
2021-11-07 09:00:54 [Parachain] 🙌 Starting consensus session on top of parent 0xc844a66f0856bd4a4f9441704010d76e81446203297af7b4fc73cce26045b105
2021-11-07 09:00:54 [Parachain] 🎁 Prepared block for proposing at 61 [hash: 0x0ad59f76172e623e3a3384f0202a468c21a7ed2f4195ff6fd51b83ba9c2c041e; parent_hash: 0xc844…b105; extrinsics (2): [0xd945…46c6, 0x87bb…5370]]
2021-11-07 09:00:54 [Parachain] 🔖 Pre-sealed block for proposal at 61. Hash now 0xfa51e98f55a9d3355271cc413a44e59568ce7fc9cc8bbb2af2704a3ea1b22188, previously 0x0ad59f76172e623e3a3384f0202a468c21a7ed2f4195ff6fd51b83ba9c2c041e.
2021-11-07 09:00:54 [Parachain] ✨ Imported #61 (0xfa51…2188)
2021-11-07 09:00:54 [Parachain] PoV size { header: 0.1787109375kb, extrinsics: 2.49609375kb, storage_proof: 4.4794921875kb }
2021-11-07 09:00:54 [Parachain] Produced proof-of-validity candidate. block_hash=0xfa51e98f55a9d3355271cc413a44e59568ce7fc9cc8bbb2af2704a3ea1b22188
2021-11-07 09:00:55 [Parachain] 💤 Idle (0 peers), best: #60 (0xc844…b105), finalized #60 (0xc844…b105), ⬇ 0 ⬆ 0
2021-11-07 09:00:55 [Relaychain] 💤 Idle (3 peers), best: #141 (0x1295…d666), finalized #138 (0x53d5…948e), ⬇ 1.2kiB/s ⬆ 2.4kiB/s
2021-11-07 09:01:00 [Relaychain] ✨ Imported #142 (0xf8b6…d982)
2021-11-07 09:01:00 [Relaychain] Collation wasn't advertised to any validator. candidate_hash=0xcae98dd36ff35fd14f5843350997299ab471fa6012c8b4516b4ab5d0ef031796 pov_hash=0xddb03fa5cebdc555d3fc9a95e90c803a1748648cdf32e935c5388c02d937af46
2021-11-07 09:01:00 [Parachain] Starting collation. relay_parent=0xf8b69c70efd8da5971cd67b8068494080dc22df29713c780eee3141a6a7dd982 at=0xc844a66f0856bd4a4f9441704010d76e81446203297af7b4fc73cce26045b105
2021-11-07 09:01:00 [Parachain] 🙌 Starting consensus session on top of parent 0xc844a66f0856bd4a4f9441704010d76e81446203297af7b4fc73cce26045b105
2021-11-07 09:01:00 [Parachain] 🎁 Prepared block for proposing at 61 [hash: 0x2d0e90dd586a78c962e57e130f4b0f931512631cd115eb8d30fff78091bf736f; parent_hash: 0xc844…b105; extrinsics (2): [0xe198…f133, 0xd1ea…fe5b]]
2021-11-07 09:01:00 [Parachain] 🔖 Pre-sealed block for proposal at 61. Hash now 0xd80fc73eb07b2d36801a09af37b8a3ee5bd62419597fec72dca2524a49496c16, previously 0x2d0e90dd586a78c962e57e130f4b0f931512631cd115eb8d30fff78091bf736f.
2021-11-07 09:01:00 [Parachain] ✨ Imported #61 (0xd80f…6c16)
2021-11-07 09:01:00 [Parachain] PoV size { header: 0.1787109375kb, extrinsics: 2.49609375kb, storage_proof: 4.4794921875kb }
2021-11-07 09:01:00 [Parachain] Produced proof-of-validity candidate. block_hash=0xd80fc73eb07b2d36801a09af37b8a3ee5bd62419597fec72dca2524a49496c16
2021-11-07 09:01:00 [Parachain] 💤 Idle (0 peers), best: #60 (0xc844…b105), finalized #60 (0xc844…b105), ⬇ 0 ⬆ 0
2021-11-07 09:01:00 [Relaychain] 💤 Idle (2 peers), best: #142 (0xf8b6…d982), finalized #139 (0x5955…ebe2), ⬇ 1.5kiB/s ⬆ 1.4kiB/s
2021-11-07 09:01:05 [Parachain] 💤 Idle (0 peers), best: #60 (0xc844…b105), finalized #60 (0xc844…b105), ⬇ 0 ⬆ 0
2021-11-07 09:01:05 [Relaychain] 💤 Idle (3 peers), best: #142 (0xf8b6…d982), finalized #140 (0xd112…7e34), ⬇ 1.8kiB/s ⬆ 2.8kiB/s
2021-11-07 09:01:06 [Relaychain] ✨ Imported #143 (0x20d8…f4ec)
We have a working xcm config for facilitating downwards/upwards token tx. However, we should:
(or maybe rococo-reloaded by then?)
do not yet test sybil-defense as we won't have a matching parachain for that. collaborations will be needed for this
Chain-specs to be added:
With launch-runtime:
launch-kusama (loaded from json, generated by kusama-fresh)
launch-kusama-fresh (encointer-keys, encointer-root is not endowed)
launch-kusama-local (encointer-keys, encointer-root is endowed)
launch-kusama-local-dev (use well-known keys)
launch-westend (loaded from json generated by westend-fresh)
launch-westend-fresh (encointer-keys, encointer-root is not endowed)
launch-westend-local (encointer-keys, encointer-root is endowed)
launch-westend-local-dev (wellknown keys)
@brenzi suggestions?
do NOT wait for upgraded encointer pallets (pallets#69)
Priority is the launch runtime, which does not include any encointer pallets (#19)
A code review revealed that this is wrong:
We need:
polkadot-v0.9.12 has introduced a new crate that unifies some type and constant definitions. However, we still have the redundant definitions inside the runtime (partly because they are still there in upstream too). We should remove the runtime definitions favoring the ones from the parachain-commons
crate and. However, we should re-export them there!
parachain-commons
Test afterwards that sybil demo works, such that we ensure that xcmp works in general before tackling #4.
There are still some cumulus/polkadot remnants that should be renamed. Double check everywhere.
Potentially more.
Acala has put great effort into running integration tests natively in cargo test. I think we can benefit here.
• Integration TestNets: https://github.com/AcalaNetwork/Acala/blob/0a028bd69a715b508b93f3efb46ff3248b3ada1c/runtime/integration-tests/src/relaychain/kusama_test_net.rs
• Homa Module: Interact with relay chain: https://github.com/AcalaNetwork/Acala/blob/fbe0507da942da1d3d19a030374ecdcc5ea92122/modules/homa-lite/src/lib.rs
• integration-test setup: https://github.com/AcalaNetwork/Acala/blob/0a028bd69a715b508b93f3efb46ff3248b3ada1c/runtime/integration-tests/src/setup.rs
• KusamaRelayChainMock: https://github.com/AcalaNetwork/Acala/blob/53b7fee2f69f675fc289f0c173d06a05b69ee2a5/modules/relaychain/src/lib.rs
• Transfer to RelayChain: https://github.com/AcalaNetwork/Acala/blob/0a028bd69a715b508b93f3efb46ff3248b3ada1c/runtime/integration-tests/src/relaychain/kusama_cross_chain_transfer.rs
The script's documentation explains outdated cli args
we should do the same integration like we do for encointer-node
Difficulty:
new-community
and next-phase
won't work like they do now (faucet
is fine because Alice is endowed in the dev setup. but on live rococo we'll need to initialize Alice with a teleport)add new runtime encointer-dev-runtime
which is exactly the same as encointer-runtime
plus sudo
pallet
👎 this means more maintenance and potential for confusion. Moreover, we're not really guaranteed to be testing what we're deploying
make helper scripts more flexible and sudo through relaychain XCM
--relay-chain-ws-port <port>
is present, use relaychain sudothe privileged function that should be executed: take encoded call from here:
and execute a sudo call on relaychain:
use council/collective for new-community
and next_phase
calls.
upside: we're really testing what we'd do on the parachain itself
In general , we'd need 5 extrinsics for that
collective.propose(encointer_scheduler.netx_phase
, ...)` and read proposal hash from eventscollective.vote(<proposal-hash>)
by Alice, Bob, Charliecollective.close(<proposal-hash>, index ....)
But if council has only one member, every proposal will be executed directly, without voting, so we just need to replace
sudo.sudo()
with
collective.propose()
in this case.
as we have no root-origin as encointer parachain council, we specifically need to allow treasury spends through council motions
although llvm 10 is available, we get this:
= note: /usr/local/bin/ld: /home/abrenzikofer/integritee-parachain/target/release/deps/libring-047a7a5d3bde103a.rlib(vpaes-x86_64-elf.o): in function `GFp_vpaes_encrypt':
/home/abrenzikofer/.cargo/registry/src/github.com-1ecc6299db9ec823/ring-0.16.19/pregenerated/vpaes-x86_64-elf.S:607: multiple definition of `GFp_vpaes_encrypt'; /home/abr
enzikofer/integritee-parachain/target/release/deps/libring-6cd9d9a5e3f06fc6.rlib(vpaes-x86_64-elf.o):/home/abrenzikofer/integritee-parachain/target/release/build/ring-4d107b347f459
69e/out/vpaes-x86_64-elf.S:427: first defined here
/usr/local/bin/ld: /home/abrenzikofer/integritee-parachain/target/release/deps/libring-047a7a5d3bde103a.rlib(vpaes-x86_64-elf.o): in function `GFp_vpaes_set_encrypt_key':
/home/abrenzikofer/.cargo/registry/src/github.com-1ecc6299db9ec823/ring-0.16.19/pregenerated/vpaes-x86_64-elf.S:588: multiple definition of `GFp_vpaes_set_encrypt_key'; /
home/abrenzikofer/integritee-parachain/target/release/deps/libring-6cd9d9a5e3f06fc6.rlib(vpaes-x86_64-elf.o):/home/abrenzikofer/integritee-parachain/target/release/build/ring-4d107
b347f45969e/out/vpaes-x86_64-elf.S:408: first defined here
/usr/local/bin/ld: /home/abrenzikofer/integritee-parachain/target/release/deps/libring-047a7a5d3bde103a.rlib(aes_nohw.o): in function `GFp_aes_nohw_encrypt':
/home/abrenzikofer/.cargo/registry/src/github.com-1ecc6299db9ec823/ring-0.16.19/crypto/fipsmodule/aes/aes_nohw.c:896: multiple definition of `GFp_aes_nohw_encrypt'; /home
/abrenzikofer/integritee-parachain/target/release/deps/libring-6cd9d9a5e3f06fc6.rlib(aes-x86_64-elf.o):/home/abrenzikofer/integritee-parachain/target/release/build/ring-4d107b347f4
5969e/out/aes-x86_64-elf.S:194: first defined here
/usr/local/bin/ld: /home/abrenzikofer/integritee-parachain/target/release/deps/libring-047a7a5d3bde103a.rlib(aes_nohw.o): in function `GFp_aes_nohw_set_encrypt_key':
/home/abrenzikofer/.cargo/registry/src/github.com-1ecc6299db9ec823/ring-0.16.19/crypto/fipsmodule/aes/aes_nohw.c:884: multiple definition of `GFp_aes_nohw_set_encrypt_key
'; /home/abrenzikofer/integritee-parachain/target/release/deps/libring-6cd9d9a5e3f06fc6.rlib(aes-x86_64-elf.o):/home/abrenzikofer/integritee-parachain/target/release/build/ring-4d1
07b347f45969e/out/aes-x86_64-elf.S:277: first defined here
collect2: error: ld returned 1 exit status
https://docs.substrate.io/v3/runtime/randomness/ says:
"The first implementation provided by Substrate is the Randomness Collective Flip Pallet. This pallet is based on collective coin flipping. It is quite performant, but not very secure. This pallet should be used only when testing randomness-consuming pallets, not it production."
Is there a plan to move to something more secure than randomness collective flip or alternatively is there a good justification as to why it is adequate for this use case?
In order to qualify as a common-good, the parachain may not have a root origin. Chain code upgrades will be initiated by the relay-chain governance
remove sudo pallet #68
add council using collective pallet #68
optional add communities pallet and require council origin for all dispatchables (make origin configurable from runtime with EnsureOneOf
Should we fork statemine directly? (remove assets & uniques and add council pallets)
Do we need to start with a shell at all in this case? I'd rather add communities directly to demonstrate how governance is planned to work
EDIT CL: We postpone teleport upward as statemine does not have it either.
For some reason I can't launch live chains (westend, kusama, rococo without any suffix) with polkadot-launch. All other chain-specs work.
I can run these chain-specs with the polkadot binary directly. The issue only exists with polkadot-launch.
Edit: This happens when we launch live chains in our polkadot-launch config:
🧹 Resolving parachain id...
2021-11-01 03:37:08 Low open file descriptor limit configured for the process. Current value: 4096, recommended value: 10000.
2021-11-01 03:37:08 Building chain spec
Killing all processes...
....
DOT = the relay chain's native token, can be ROC, KSM too
scenario:
resources
Add a new node for subscan in Tokyo
encointer-parachain/.github/workflows/ci.yml
Line 227 in 3b560a8
this may cause trouble, because on westend, the paraid isn't 2014
this line is also problematic:
encointer-parachain/.github/workflows/ci.yml
Line 228 in 3b560a8
benchmarking pallet_pallet_membership...
Error: Input("No benchmarks found which match your input.")
Before tackling #21, we should first bump the pallets separately because there will be some runtime changes due to:
Things to do:
Runtime constants were added removed and need changes in the runtime, e.g.:
(maybe bad example that does not need a change, but this is a runtime constant)Genesis fields were added/removed and this needs some changes there:
Most changes can be copy-pasted from this PR: encointer/encointer-node#186
and one public node with wss://
https://github.com/encointer/encointer-parachain/blob/master/typedefs.json
This typedef is missing for example the bazaartype definition.
Should we update the file or is this file anyway not necessary anymore?
I'm assuming that the fees are less than the relay chain on encointer.
It looks like the same issue we found on statemine will apply here:
paritytech/cumulus#920
I would think the fix would be pretty similar.
depends on: encointer/pallets#56
Because the parachain template still doesn't use MultiAddress, we need to adapt substrate-api-client as well as encointer-client to work with the encointer-collator
The strategy:
Address
type)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.