Audited by Pashov Audit Group.

A time-boxed security review of every PARE contract, 7 to 10 September 2026, by eight researchers from Pashov Audit Group. Every finding was answered, fixed where a fix was warranted, and re-reviewed by the auditors before this report was issued. The full report is below, unedited.

Read the full report (PDF)See the accountants live

01Summary

Critical
0
none found
High
0
none found
Medium
6
6 fixed
Low
11
11 fixed
Informational
24
18 fixed · 6 acknowledged

41 findings in total. Every medium and low severity finding was fixed and the fix was reviewed by Pashov. Six informational findings were acknowledged with a written reason, reproduced in the report and summarised in section 04 below. No finding was disputed.

02Scope

AuditorPashov Audit Group
Review window7 – 10 September 2026
In scopeevery contract under src/: StripVault, MultiplierAccountant, PareMorphoOracle, principal and yield tokens, deployment factory
Reviewed commit2e780ae78beba72b8342ee9ef590ce420cb4356f
Fixes reviewed at3dfa4a421d5d9d1fc2849f1847619e3b7dbf2ddb
Researchers0x37, 0xApple, 0xbrivan, Auditor-Nate, farismaulana, LoopGhost, Playboi, Valves Security

The review repository is a private mirror shared with the auditors, so the commit links inside the PDF are not public. The source of every deployed contract is verified on Blockscout, and the audited build is identified by the commit hash above.

03What happens next

NOW

The contracts live on mainnet today are the reviewed build. Four series have run on them since launch. Merge is permissionless and always open on every vault, before and after maturity.

NEXT

The fixed build goes live. New vaults, accountants and oracle at the fixes commit, verified on chain. Addresses are swapped in on every page of this site and published on the oracle page, and existing positions can merge out of the old vaults at any time.

THEN

Lending opens and the series cap comes off. The Morpho market is treasury-only until the fixed oracle is deployed. Deeper pools and new series follow.

04Acknowledged findings

Six informational findings were acknowledged rather than changed. The auditors' reasoning and ours are in the report; the short version of each is here.

I-04 · I-06 · I-12 — feed freshness during trading hours

The Morpho oracle accepts a Chainlink stock price up to four days old so that weekends and market holidays do not freeze the market. That single window is wider than the feed's heartbeat during trading hours, so a feed that halts mid-session would not be caught by the age check alone. There is no second stock price feed or market-status feed on Robinhood Chain to corroborate against today. Mitigated by the 62.5% LLTV buffer and documented as an operational risk. A liveness check is planned for a follow-up review once a corroborating feed exists on the chain.

I-09 — split ratio tolerance

A residual inside the split tolerance (one millionth of the ratio) is attributed to the split, not to yield. The smallest real dividend on a covered stock is about a thousand times larger than the tolerance, so a genuine split combined with a real dividend cannot pass the clean-ratio check and goes to guardian decomposition instead. Kept as designed and documented.

I-15 · I-20 — rounding at the eighteenth decimal

Both redemption legs round down independently, which can strand one raw unit (10⁻¹⁸ of a stock token) per matched redemption, and each dividend classification floors once, drifting the index by a few units at the same scale over a series' life. Both round in the vault's favour so it can never owe more than it holds. Kept; the alternatives add arithmetic to the core index for an attowei-level gain.

05All 41 findings

IDFindingSeverityStatus
M-01Two `unsynced` multiplier applies are recorded as one non-collapsed composite stamped at the LAST action's `effectiveAt`, same YT wipe, a distinct root causeMEDIUMFIXED
M-02USD-denominated feed is used as loan-token value without a loan-token/USD conversionMEDIUMFIXED
M-03Guardian resolution commitment can be reused after pending endpoints cycleMEDIUMFIXED
M-04Collapsed multiplier changes reuse the first update timestamp for all decomposed actionsMEDIUMFIXED
M-05Manipulable Uniswap V3 TWAP can force premature PT liquidationsMEDIUMFIXED
M-06Settled PT oracle lacks a redemption-value floorMEDIUMFIXED
L-01Holiday holds cross the immutable 4-day staleness gate because the feed stops printing hours before every close, freezing every Morpho market this oracle prices through the reopenLOWFIXED
L-02Magnitude-only dividend classification force-tags value-neutral in-band multiplier changes, permanently shifting PT principal to YT holdersLOWFIXED
L-03Oracle accepts a feed during the L2 sequencer recovery windowLOWFIXED
L-04Oracle resumes PT valuation before the post-dividend TWAP reflects the PT repricingLOWFIXED
L-05Oracle scaling is incorrect when stock and PT base-unit decimals differLOWFIXED
L-06Pending guardian resolution becomes stale when sync collapses a later multiplier updateLOWFIXED
L-07Pending multiplier endpoint equality hides intermediate updatesLOWFIXED
L-08Per-call fee truncation permits fee-free micro-splits and YT redemptionsLOWFIXED
L-09Per-call split-fee rounding permits fee-free fragmented depositsLOWFIXED
L-10Per-call YT fee rounding allows yield-fee avoidance through fragmented redemptionsLOWFIXED
L-11YT redemption fee can be bypassed through fragmented redemptionsLOWFIXED
I-01Multiplier processing can become unavailable because deployment accepts a zero administratorINFOFIXED
I-02Fees remain trapped and the deposit cap can be exceeded because the vault accepts itself as treasuryINFOFIXED
I-03Guardian recovery can be delayed because malformed proposals overwrite valid resolutionsINFOFIXED
I-04Timestamp freshness accepts economically stale feed answersINFOACKNOWLEDGED
I-05Immutable feed-decimal snapshot becomes stale after same-address feed migrationINFOFIXED
I-06Chainlink feed can remain stale while the onchain stock market remains activeINFOACKNOWLEDGED
I-07Accountant sync can clear while the Robinhood price feed remains deliberately pausedINFOFIXED
I-08The oracle can bypass the PT vault's synchronization gate because its accountant is independently configuredINFOFIXED
I-09Split tolerance can absorb a real dividend without crediting YTINFOACKNOWLEDGED
I-10Shape-only split classification routes value-additive clean-ratio events entirely into splitFactor, zeroing the YT drip at settlementINFOFIXED
I-11Immediate Multiplier Updates Can Be Missed at the Maturity BoundaryINFOFIXED
I-12Four-Day Feed Freshness Window Accepts Stale Prices During Active TradingINFOACKNOWLEDGED
I-13accruedDripFactor exposes unsynchronized live index instead of a settlement-compatible valueINFOFIXED
I-14Disabled feed-age validation accepts unfinished Chainlink roundsINFOFIXED
I-15Independent PT and YT redemption rounding strands matched-position dustINFOACKNOWLEDGED
I-16No recovery path for residual stock after all PT and YT liabilities are extinguishedINFOFIXED
I-17Oracle Constructor Does Not Validate That the Pool Contains the Accountant's Stock TokenINFOFIXED
I-18Oracle does not unconditionally reject incomplete Chainlink roundsINFOFIXED
I-19Post-maturity accountant changes can block settlement of an otherwise mature vaultINFOFIXED
I-20Repeated dividend classification introduces cumulative downward index rounding driftINFOACKNOWLEDGED
I-21Split classification stores the rounded observed ratio instead of the validated clean ratioINFOFIXED
I-22Unsettled accruedDripFactor includes dividends occurring after maturityINFOFIXED
I-23Untracked token donations can permanently exhaust StripVault deposit capacityINFOFIXED
I-24Zero guardian delay removes the configured resolution reaction windowINFOFIXED

Titles as written by the auditors. Each finding in the PDF carries a summary, impact, exploit path where applicable, the recommendation and our resolution.

06Pool helper review

A second review, 23 to 24 September 2026, of the pool helper contract (DividendLP): it splits stock and places the pToken in the pool with USDG in one transaction. Eight findings, none critical, high or medium. All eight were fixed and the fixes re-reviewed by the auditors.

Read the pool helper report (PDF)
Critical
0
none found
High
0
none found
Medium
0
none found
Low
2
2 fixed
Informational
6
6 fixed
Review window23 – 24 September 2026
In scopesrc/periphery/: DividendLP
Reviewed commitf14bb7164ccc24d20a3efa5e557f300e0e79af90
Fixes reviewed at51542756b56a29b0111e5d72884cc6ef5042bd4d
Live contract0x7b2c60384Ce0BF33fAF6e0883DcfaBb84c61bF47, the fixed build, verified
Researchers0x37, 0xApple, Auditor-Nate, Digital Forensic, farismaulana, Mladenov, Playboi, Valves Security
IDFindingSeverityStatus
L-01Caller-selected vault can retain stock spending authorityLOWFIXED
L-02Caller-supplied vault can redirect stock refunds to an arbitrary tokenLOWFIXED
I-01DividendLP mints pToken liquidity positions against arbitrary tokens instead of the intended USDGINFOFIXED
I-02YT holders lose accrued yield because a classifier can stamp one dividend after maturityINFOFIXED
I-03PT claims can exceed backing because guardian reattribution can decrease the dividend indexINFOFIXED
I-04YT holders lose pre-maturity dividends because stale split classification falsely advances finalityINFOFIXED
I-05PT holders lose pre-series value because new vaults snapshot a pre-fold indexINFOFIXED
I-06Zero-liquidity ternary selection bypasses withdrawal minima and burns the position NFTINFOFIXED

I-02 to I-05 were raised against the core accountant and vault during this review. They are fixed in the code for the next series; the series live today run on the earlier build, from before these four fixes. The pool helper fixes are live at the address above.