In the Solidity IPC contracts we had to introduce the concept of worker addresses. Mir validators doesn't support the use of ethereum addresses, so when we join a new subnet, we store two addresses, the msg.sender and the workerAddr for the sender. This worker address will be the one used by the Mir validator, and the one used in the membership set.
We should include the same concept of worker address as an optional parameter when joining FVM-based subnets.
This would require changes all over the stack:
ValidatorSet in go-state-types should also include the worker-addr field.
In the IPC agent we should pass, both, the worker address as part of the query_validatorSet response. We are currently only sending the owner address for FVM and the worker address for FEVM subnets in the addr field.
In Lotus, the mir-validator should update how it determines the address that owns the validator. We should edit the type of the response from query_validatorSet so it includes both addresses.
In the Solidity IPC contracts we had to introduce the concept of worker addresses. Mir validators doesn't support the use of ethereum addresses, so when we
join
a new subnet, we store two addresses, themsg.sender
and theworkerAddr
for the sender. This worker address will be the one used by the Mir validator, and the one used in the membership set.We should include the same concept of worker address as an optional parameter when joining FVM-based subnets.
This would require changes all over the stack:
ValidatorSet
ingo-state-types
should also include theworker-addr
field.query_validatorSet
response. We are currently only sending the owner address for FVM and the worker address for FEVM subnets in theaddr
field.query_validatorSet
so it includes both addresses.