Fix the way gRPC runner handles remove proposals
mulmarta opened this issue · comments
Currently the MLS test client gets state_id
of the removed member. This way, it's impossible to remove clients of other implementations because the test client doesn't know the leaf node of that state_id
.
Using leaf_index
instead of client's name in the script config is also confusing because the script writer doesn't know where actors land in the tree if there are multiple adds per commit.
One solution (apart from disallowing multiple adds in one commit) : when a member joins, it tells the test runner its index and the runner sends the index of the removed client.
I don't think the premise here is right. In RemoveProposalRequest
, state_id
is the state of the proposal creator, and removed_id
is the leaf index of the removed node. At least that's what the code in test_runner.go
does. If anything, we should change removed_id
to removed_index
.
I think it's a stale issue from before we removed by identity. In any case, doesn't make sense now.