Skip to content

feat(spoke): expose ownership interface on TreasurySpoke#1311

Open
alerodriargui wants to merge 1 commit into
aave:mainfrom
alerodriargui:main
Open

feat(spoke): expose ownership interface on TreasurySpoke#1311
alerodriargui wants to merge 1 commit into
aave:mainfrom
alerodriargui:main

Conversation

@alerodriargui

Copy link
Copy Markdown

Add IOwnable to ITreasurySpoke and verify owner() is available through the interface.

Fixes #1283

Add IOwnable to ITreasurySpoke and verify owner() is available through the interface.
Copilot AI review requested due to automatic review settings June 16, 2026 23:36

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

This PR updates the ITreasurySpoke interface to expose ownership methods and adds a regression assertion in the upgradeable proxy test to verify the owner is visible through the ITreasurySpoke type.

Changes:

  • Added an IOwnable interface and made ITreasurySpoke extend it.
  • Extended upgradeability tests to assert owner() via the ITreasurySpoke interface.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
tests/contracts/treasury-spoke/TreasurySpoke.Upgradeable.t.sol Adds an assertion that owner() is callable through ITreasurySpoke on the proxy.
src/spoke/interfaces/ITreasurySpoke.sol Introduces IOwnable and extends ITreasurySpoke with ownership functions.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +7 to +16
interface IOwnable {
/// @notice Returns the current owner.
function owner() external view returns (address);

/// @notice Transfers ownership to a new owner.
function transferOwnership(address newOwner) external;

/// @notice Renounces ownership of the contract.
function renounceOwnership() external;
}
function renounceOwnership() external;
}

interface ITreasurySpoke is IOwnable {
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.

ITreasurySpoke does not inherit IOwnable

2 participants