Repository navigation
Merge main into release/v3.x-new in order to prepare for v3.6.18 release - #456
Merged
Merged
Conversation
* Record the EVM InflowVault high-water mark after the fee mint accrueFees() stored the pre-mint share price as the high-water mark, so every accrual left the share price below the mark by the dilution of its own fee mint and the vault had to re-earn it before fees resumed. Store assets / (supply + sharesToMint) instead. Add resetHighWaterMark(), a whitelist-gated reinitializer(2) that lowers the mark of a version-1 vault to its current share price, to be called through upgradeToAndCall. initialize() now takes a new proxy straight to version 2, so the reset is unavailable on fresh deployments and after its single use. Add script/UpgradeInflowVaultResetHwm.s.sol, which simulates the upgrade from the whitelisted Safe and prints its transaction (dry run by default). * Make resetHighWaterMark a no-op when the mark is not above the share price The reset reverted when the share price was at or above the high-water mark, which made the whole upgradeToAndCall revert: a Safe transaction waiting for signatures could fail on price drift, and a vault whose mark needs no correction could only be upgraded with empty data, leaving the one-shot available to its whitelist. It now lowers the mark when it sits above the share price and otherwise does nothing, consuming the reinitializer version in both cases. A vault without shares counts as priced at WAD, the mark a new vault starts from. HighWaterMarkReset is emitted only when the mark is lowered. The upgrade script no longer divides by zero on a vault without shares and reports whether the reset lowers the mark or is a no-op. The changelog notes that FeesAccrued.sharePrice stays the pre-mint price.
…454) * Record the Inflow control-center high-water mark after the fee mint Store total_pool_value / (total_shares_issued + shares_to_mint) as the high-water mark instead of the pre-mint share price, so the pool sits at its high-water mark once the MintFeeShares messages execute. Report the stored value as a high_water_mark_price attribute on AccrueFees and SubmitDeployedAmount.
Review: v3.6.18 release merge (main into release/v3.x-new)This brings #453, #454 and the release prep #455 into the release branch. I reviewed the non-artifact changes. I did not rebuild the wasm artifacts or run the test suites. Release hygiene
Control center (#454,
|
p-offtermatt
approved these changes
Oct 8, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Brings
mainintorelease/v3.x-newfor the v3.6.18 release, perRELEASE_PROCESS.md(same as #452 for v3.6.17). It carries #453, #454 and the release preparation #455.Merge with "Create a merge commit", not "Squash and merge", so the release branch keeps the history and can be reused for future releases.
After the merge: create the tag
v3.6.18fromrelease/v3.x-newand publish the GitHub release.