connect icon indicating copy to clipboard operation
connect copied to clipboard

Support Disputable Forwarding Path

Open 0xGabi opened this issue 3 years ago • 0 comments

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().

0xGabi avatar Aug 21 '20 15:08 0xGabi