
1 finding
One finding is included in the updated report.
High severity
The reported impact is classified as High.
Acknowledged
The finding has been acknowledged in the audit report.
Download the complete V12 report
Download the original Markdown report, including source locations, proof of concept, remediation patch, and validation output.
The report download contains the complete source supplied by V12. The “Findings marked invalid” section remains excluded from this summary page.
Audit record
Source locations in the report cover CtrlLaunchHookV2, CtrlFeeVault, protocol security documentation, and architecture documentation.
Review the Protocol and Contracts page for the current component and upgradeability model.
#228865 — Treasury Rotation Redirects Accrued Bounty Reserves
Description
Pre-graduation bounty fees accumulate in launch.bountyAccrued and reservedBountyEthForToken, but those records do not retain a fallback-recipient identity. When a graduation swap has no beneficiary, the hook reads the vault’s current treasury and releases the complete reserve to that address. If the vault owner changes the treasury after bounty accrual but before graduation, the fallback recipient changes for bounty value that accrued under the previous treasury.Root cause
The bounty reserve stores amounts without snapshotting the treasury active at accrual. A zero-beneficiary graduation resolves its fallback recipient from mutable treasury state at release time.Reported impact
A replacement treasury can become entitled to a token’s earlier pre-graduation bounty reserve. Once the reserve is released, the previous treasury has no claimable entry for that amount.Proof of concept
The supplied report includes a Foundry proof of concept that:- accrues a bounty reserve through a generic V4 buy with empty hook data;
- rotates the vault treasury;
- crosses the graduation threshold with another zero-beneficiary buy; and
- verifies that the replacement treasury receives the earlier reserve.
Remediation included in the report
The report proposes snapshotting each token’s fallback bounty by the treasury active when the bounty accrues. On a zero-beneficiary graduation, each snapshotted portion is released to its original treasury. Explicit beneficiaries continue to receive the complete bounty under the existing behavior. The proposed patch affects:- src/interfaces/ICtrlProtocol.sol
- src/CtrlFeeVault.sol
- src/v2/CtrlLaunchHookV2.sol
This page summarizes the supplied report. Download the complete export above for the full source excerpts, test case, patch, and validation logs.
How to interpret this audit
- An audit is a point-in-time review and does not guarantee the absence of vulnerabilities.
- The export does not identify its exact audited commit or audit date.
- Acknowledged records the report’s validity status; production remediation must be verified independently.
- Future code, deployments, or configuration changes may alter the security assumptions described here.
