AIP: Nova Fee Router Proposal

Constitutional Proposal

Abstract / Motivation

Currently, the DAO receives transaction fees on Nova at an address accessible via the core governance system. This means that any time the DAO wishes to transfer these funds, it must pass a constitution proposal. We propose instead a system in which these funds are “automatically” (permissionlessly) sent from Nova to the Arbitrum DAO Treasury on Arbitrum One. This gives the DAO faster, easier accessibility to these funds, and should make bookkeeping simpler.


Currently, the portion of the Nova transaction fees that the DAO collects are sent via the fund distributor contracts to 0xf7951D92B0C345144506576eC13Ecf5103aC905a, the address alias of the core governance l1 timelock. This allows the DAO to spend the funds via a round-trip core proposal initiated from the core governor on Arbitrum One.

A system in which these funds were sent to the DAO Treasury without the DAO needing to take action is preferable for several reasons:

  • Spending from the DAO treasury requires a lower quorum (3% vs. 5%)
  • Spending from the DAO treasury is faster (doesn’t impose the additional ~ 2 weeks of delay
  • Keeping all fees in a single location makes bookkeeping simpler and easier to reason about.

We propose an update in which all Nova fund distributors that distribute to the timelock alias are updated to instead distribute to a system of “fee routers”, via which permissionless transactions will allow the funds to be routed to the Arbitrum Treasury.

The lifecycle works as follows:

  1. A distributeRewards is called on a RewardDistributor contract, sending funds to a ChildToParentRouter contract.
  2. Either upon receiving funds or via a call to routeFunds, the ChildToParentRouter creates an L2-to-L1 message which sends the contract’s full Ether balance.
  3. The L2-to-L1 message is executed, transferring the Ether to a ParentToChildRouter contract on L1.
  4. routeFunds is called on ParentToChildRouter, creating a retryable ticket which transfers its full Ether balance to the DAO Treasury on Arbitrum One.


Additional Action

Sometime after this proposal action, an additional proposal can be submitted to transfer the funds remaining in the timelock’s address alias to the fee router.

Thanks for flagging. I’m in favor of an automatic/permissionless system to make this transfer.

Hey everyone, a reminder that we’ll be hosting a short governance call later today (Monday, 29 April) at 14:30 UTC to walkthrough this proposal, and answer questions if any.

Link to join:

Hey everyone, here’s the recording of the governance call - Gov Call for RIP7212 and Nova Fee Router proposals (2024-04-29 22:35 GMT+8) - Google Drive