[ARFC] Upgrade PT Risk Oracle to Protocol-Owned Infrastructure on CRE

Summary

The PT Risk Oracle stack that this ARFC proposed is deployed on Ethereum and ready for activation. This note covers the deployed addresses, the Chainlink CRE workflows behind them, and the bounds the activation AIP will set.

The stack maintains two things for PT-srUSDe-22OCT2026 on Aave V3 Ethereum Core: the discount rate on the reserve’s existing PendlePriceCapAdapter, and the risk parameters of the two eMode categories that contain the reserve. It does not replace the reserve’s price feed. Every update travels through Aave’s AgentHub, which enforces the market allowlist, minimum delay, expiration and absolute range bounds before an agent can write, and governance can disable either agent at any time.

Specification

The activation AIP registers two predeployed agents on the Aave-owned AgentHub, grants them the role they need to write, and sets the bound on every parameter each one can move. Route registration on the Router happens after execution, because the routes reference the agent ids the AgentHub assigns.

Deployed contracts

Deployed 21 August 2026 on Ethereum, read back from mainnet.

Existing Aave and Chainlink addresses the stack reads or writes through:

Chainlink CRE workflows

AAVE and Certora has reviewed the three production workflows.

Workflow Workflow id Publishes
EMA 0x0091413fc6ddedb789e424421fd18cd18b4a64fe139eaa9e10759a68a5cae583 EMA of the PT rate, read back as an input by the other two
Discount rate 0x0030df3e67d349d2100820d1de934c111f7b005718993b3e4d43d087753cc6fe PendleDiscountRateUpdate
Risk parameters 0x00c672ab84adbd3c64d17c7dd3fe67860b7a4da4f7d0d952d46989ce109b1933 EModeCategoryUpdate for eModes 47 and 48

What the AIP does

The AIP performs the following actions:
- Registers the predeployed AaveDiscountRateAgent and AaveEModeAgent on the AgentHub and enables them

- Grants RISK_ADMIN roles to both agents on the ACLManager

- Sets the range bounds for the two new agent ids on the RangeValidationModule

Bounds and cadence

Agent registration:

Agent updateType Minimum delay Expiration Allowed markets
Discount PendleDiscountRateUpdate 48 hours 48 hours 0x59bC9FaE5D62B19d4f8d07D758047aCb9EE19d34
eMode EModeCategoryUpdate 72 hours 72 hours eModes 47 and 48

Range bounds, absolute in both directions, matching the values already in use on the existing agent ids:

Agent updateType Max increase Max decrease
Discount PendleDiscountRateUpdate 100 bps 100 bps
eMode EModeLTV 50 bps 50 bps
eMode EModeLiquidationThreshold 50 bps 50 bps
eMode EModeLiquidationBonus 50 bps 50 bps

Ownership and controls

Registration is governance-only. registerAgent and setAgentAdmin on the AgentHub are owner-gated, and the owner is the Aave Ethereum executor, so no agent can be added or repointed outside a governance vote.

Both registrations name the Aave Protocol Guardian as agent admin, which lets a misbehaving agent be disabled without waiting for a governance cycle. Re-enabling it is governance-only. The Router is pausable by the Guardian on the same principle, with unpausing reserved to the executor.

The publishing path is closed at both ends: the RiskOracle accepts writes only from the Router, and the Router accepts only reports delivered by the Chainlink forwarder for a workflow whose owner and name match a registered route. No LlamaRisk EOA holds a governance-level role in this stack.

Roles and their holders are listed in the Aave permissions book.

Auditing

The agent implementations are the stock Risk Agents contracts from aave-dao/aave-risk-agents, audited by Certora. The LlamaGuard periphery (Router, RiskOracle, parameter registry, EMA oracle) has been audited by Certora as well.