Skip to content

Share token refuses renounce_admin #169

Description

@hpmaxi

Priority

Medium — should be addressed soon

User story / Problem statement

Currently, the share token keeps OpenZeppelin's default renounce_admin, so its admin can remove itself. The vault and the oracle both refuse this with AdminRequired. On the token, pause, unpause and role management need the admin. A token paused when its admin renounces stays paused for good, and no new vault can ever be granted the manager role.

Expected outcome

The share token refuses renounce_admin the same way the vault and the oracle do. The admin can still hand over through transfer_admin_role and accept_admin_transfer.

Acceptance criteria

  • renounce_admin on the share token always fails.
  • A test shows the refusal, and that the admin is unchanged afterwards.
  • Admin handover in two steps still works on the token.
  • The renounce_admin row in docs/AUTHORIZATION_MATRIX.md (§5.2) names the refusal and its test.

Technical notes

The token has no error enum today, so the refusal needs one (for example ShareTokenError::AdminRequired), unless an existing error fits. The vault (contracts/async-vault/src/lib.rs) and the oracle (contracts/nav-oracle/src/lib.rs) show the override.

Additional context

Raised in review of #155.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions