entropy-tss /info
route to get account ID cannot be used until a connection to chain has been made
#1203
Milestone
/info
route to get account ID cannot be used until a connection to chain has been made
#1203
In #1128 we remove the ability to pass in a pre-generated mnemonic to entropy-tss. Instead, it is generated internally and the public key / account ID can be retrieved via the
/info
http route.This does not effects our tests because we can still use the built-in development mnemonics. But for testnet the workflow has to be changed.
There was a proposal to still include these public keys in the testnet chainspec, by starting the tss nodes and getting the public keys before compiling the chain.
There is a chicken and egg problem here, because entropy-tss does not start its http server until a successful connection to the chain has been made - it calls the
check_node_prerequisites
function before starting a TCP listener:entropy-core/crates/threshold-signature-server/src/main.rs
Line 112 in d192cdc
There are a number of possible ways around this, eg: starting the server before making that check, or starting a simpler version of the server with only the
/info
endpoint, or reading the account ID out from the logs.But personally i would like to move away from having TSS servers pre-configured at genesis, as id like to keep things as close to production conditions as possible.
@HCastano made a proposal to have an extrinsic which allows us to add TSS details to an existing validator after genesis. I think this is a good move, but we need to be careful about how we handle validators with no associated TSS node - the jump start extrinsic handler would need some changes as it currently picks initial signers from the session pallet's
validators()
getter, not the staking extension's list of TSS nodes.entropy-core/pallets/registry/src/lib.rs
Line 227 in d192cdc
I expect there may be similar issues with picking a new signer for reshare in the new session handler, but we could add a jumpstart requirement that all validators must have an associated TSS node at that point.
The text was updated successfully, but these errors were encountered: