Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Timelock authorizer: adaptor support #2557

Draft
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

jubeira
Copy link
Contributor

@jubeira jubeira commented Dec 21, 2023

Description

Add the notion of an entrypoint for schedule for actions behind the authorizer adaptor.

Timelocked actions behind the authorizer adaptor (e.g. those in the LM system) cannot be called directly by the executor. Therefore, the notion of where is not enough for schedule:

  • If where is the actual action (e.g. a function in the GaugeController), schedule will work for timelocked actions, but execute will revert as the msg.sender won't match the authorizer adaptor.
  • If where is performAction in the adaptor entrypoint, schedule will fail as performAction should not be timelocked.

TODO:

  • Test timelocked action behind the adaptor
  • Double check that attempting to use the entrypoints incorrectly doesn't cause issues (e.g. call a regular permissioned action via adaptor and vice-versa)
  • Double check grant delays for actions behind the adaptor (probably fine)
  • performAction shouldn't be able to be scheduled and used directly. Otherwise everything behind the adaptor can be executed in that delay.

Type of change

  • Bug fix
  • New feature
  • Breaking change
  • Dependency changes
  • Code refactor / cleanup
  • Documentation or wording changes
  • Other

Checklist:

  • The diff is legible and has no extraneous changes
  • Complex code has been commented, including external interfaces
  • Tests are included for all code paths
  • The base branch is either master, or there's a description of how to merge

Issue Resolution

N/A

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant