connect
connect copied to clipboard
Support Disputable Forwarding Path
Description
Support transaction paths as mentioned in the Agreement spec.
On a conceptual level, the current transaction pathing algorithm should be able to find transaction paths with a disputable app at the beginning. This path should even be executable if the Agreement and Disputable have been configured to not require any collateral/fees.
Approach
We should use the latest deployed organization to try sending an app intent. Currently, the org's permissions allow for Finance and Agent transfers to happen via a disputable vote.
- [ ] Decide if any API changes are required
- Theoretically, a user can figure out that the path we gave them is disputable
The API currently do not work because the forward()
API has changed.
DisputableVoting's forward now includes an extra parameter in its forward()
function: https://github.com/aragon/aragon-apps/blob/disputable_voting_app/apps/voting-disputable/contracts/DisputableVoting.sol#L236
We can detect which forwarding version is implemented via forwarderType()
: https://github.com/aragon/aragonOS/blob/next/contracts/forwarding/IAbstractForwarder.sol#L16-L20
Which should be checked after verifying isForwarder()
.