Releases: morpho-org/midnight
Releases · morpho-org/midnight
2026-05-29
What's Changed
- [Certora] Optional fix confs that sometime timeout by @lilCertora in #913
- test: Dummy ratifier in test by @peyha in #811
- test: cover wExp monotonicity by @prd-carapulse[bot] in #900
- correct offset and unit test by @QGarchery in #920
- justify 2^95-1 re-approval (Spearbit 1) by @MathisGD in #921
- [Certora] liquidation profitability fix timeout by @lilCertora in #918
- style bundles (Spearbit 1-bis) by @MathisGD in #919
- tests only: more callback arguments by @adhusson in #902
- Update comment on token approval usability by @MathisGD in #925
- docs: same offer.buy in same group (Spearbit 1) by @MathisGD in #923
- Fix ordering (events & onLiquidate) by @QGarchery in #914
- test: assert liquidation callback caller and receiver by @prd-carapulse[bot] in #926
- update max collat per borrower by @MathisGD in #928
- readme update by @MathisGD in #938
- naming settlement fee by @MathisGD in #931
- test: use vm.getBlockTimestamp() in tests by @prd-carapulse[bot] in #937
- docs: document roundings by @MathisGD in #936
- [Certora] TickLib by @QGarchery in #880
- [Certora] Readme by @QGarchery in #930
- Update liquidation modes documentation in Midnight.sol by @MathisGD in #939
- [Certora] Fix timeout continuousFee by @lilCertora in #947
- fix: cleaner no-op prevention by @MathisGD in #942
- style: rename healthy path -> post maturity mode by @MathisGD in #945
- document max lif in bad debt by @QGarchery in #943
- fix: return uint128 from Midnight amount getters by @prd-carapulse[bot] in #935
- fix: prevent debt increase after maturity more strictly by @MathisGD in #940
- docs: remove useless line in bundles by @MathisGD in #949
- docs: no-ops and zero checks in bundles by @MathisGD in #950
- docs: wording in bundler by @MathisGD in #948
- typo by @adhusson in #955
- bundles: custom error in safeApprove by @MathisGD in #951
- docs: clarify TakeAmountsLib doesn't return the best units by @MathisGD in #952
- readme update by @MathisGD in #953
- More precise
maxRepaidcomputation by @QGarchery in #944
Full Changelog: 2026-05-21...2026-05-29
2026-05-21
What's Changed
- fix payer in repay event by @QGarchery in #909
- fix: emit continuousFeeCredit on liquidation by @prd-carapulse[bot] in #908
- [Certora] prove token pulls have an explicit payer by @prd-carapulse[bot] in #638
- [Certora] Document reentrancy by @QGarchery in #885
- rcf for unhealthy liq post maturity by @MathisGD in #911
Full Changelog: 2026-05-19...2026-05-21
2026-05-19
What's Changed
- test: fix sig by @peyha in #871
- [Certora] small refactor by @QGarchery in #878
- [Certora] Split not-created market Certora spec by @prd-carapulse[bot] in #881
- document withdraw race (spearbit-8 and blackthorn-34) by @MathisGD in #872
- minor docs updates by @MathisGD in #884
- [Certora] Fix ContinuousFee by @lilCertora in #887
- [hash ordering] leaf index by @prd-carapulse[bot] in #875
- callback parameters order by @MathisGD in #889
- [Certora] mulDiv overflow conditions by @MathisGD in #615
- fix: derive ratifier height from proof length by @prd-carapulse[bot] in #883
- docs: approval edge case by @MathisGD in #888
- fix: bind bundles to midnight at construction by @prd-carapulse[bot] in #886
- docs: fix Midnight comments by @prd-carapulse[bot] in #897
- increasing wExp by @QGarchery in #882
- minor changes by @MathisGD in #890
- pass more args to callback by @MathisGD in #894
- small refactor take by @MathisGD in #895
- batch state updates by @MathisGD in #896
- add callback parameters by @adhusson in #901
- params order by @MathisGD in #905
- Increase optimizer runs from 300 to 800 by @MathisGD in #906
Full Changelog: 2026-05-13...2026-05-19
2026-05-13
What's Changed
- check size in ci by @MathisGD in #680
- test: fix testReturnJumps by @MathisGD in #683
- Allow ApprovalRatifier approvals to be delegated by @prd-carapulse[bot] in #686
- [Certora] onlyAuthorizedCanChange liquidate by @QGarchery in #492
- Missing tests for full coverage by @peyha in #687
- naming: is ratified by @MathisGD in #695
- Custom error with commit fix by @peyha in #701
- cvl context by @MathisGD in #698
- update position returns more values by @adhusson in #690
- use IMidnight interface by @adhusson in #691
- Small tweaks by @QGarchery in #703
- [Certora] Refactor division by zero by @QGarchery in #702
- test with an old version of foundry by @MathisGD in #696
- minor naming changes by @MathisGD in #697
- Rename fee -> trading fee by @peyha in #705
- separate callbacks by @adhusson in #704
- no solc metadata by @MathisGD in #706
- refactor take bundler by @MathisGD in #710
- arbitrary callback targets by @MathisGD in #688
- test: cover missing require sites for ObligationNotCreated by @prd-carapulse[bot] in #708
- ci: pin GitHub Actions refs to commit SHAs by @prd-carapulse[bot] in #707
- Remove problematic jq by @QGarchery in #720
- bundler: remove useless average checks by @MathisGD in #721
- bundler: supply/withdraw collateral batch by @MathisGD in #713
- [Certora] fix healthiness by @lilCertora in #726
- bundler: remove average price check by @MathisGD in #727
- [Certora] new property on ObligationCreated by @bhargavbh in #672
- move authorizer by @MathisGD in #723
- [Certora] takeBuyerEffects and takeSellerEffects by @bhargavbh in #728
- bundler: referral fees by @MathisGD in #717
- Wallet decodable signatures by @QGarchery in #715
- bundler: pull transfers by @MathisGD in #716
- docs: document new opcodes used (Spearbit #15) by @MathisGD in #737
- Minor issues (typos, comments, ...) (Spearbit #1) by @MathisGD in #736
- Ratifier is tied to an instance (Spearbit #18 & #19) by @QGarchery in #744
- document hardfork scenario (Spearbit #23) by @MathisGD in #738
- docs: rcf by @MathisGD in #747
- perf: constructor (Blackthorn-21) by @MathisGD in #748
- [Certora] role safety by @lilCertora in #733
- docs: LLTV=1 (Blackthorn-22) by @MathisGD in #749
- document id mismatch takeAmountsLib (Blackthorn-25) by @MathisGD in #755
- [Certora] Liveness Properties (AND liveness docs fix) by @lilCertora in #685
- document trading fee offer price (Blackthorn-32) by @MathisGD in #757
- [Certora] ContinuousFee Protections by @bhargavbh in #633
- store initialChainId (Blackthorn-19) by @MathisGD in #756
- [Certora] liquidation is profitable and bounded by LIF by @lilCertora in #497
- verif fix merge issue by @MathisGD in #763
- document no-op callback (Blackthorn-39) by @MathisGD in #761
- document stale values (Blackthorn-41) by @MathisGD in #762
- [Certora] Loss index properties by @lilCertora in #570
- docs: liveness tokens (Blackthorn-30) by @MathisGD in #751
- fix: use per-offer obligation id in TakeBundler by @prd-carapulse[bot] in #771
- Verif fix: ContinuousFee.spec timing out by @bhargavbh in #773
- misc smallupdates by @adhusson in #768
- document price overflow (Blackthorn-31) by @MathisGD in #752
- Multi token flashloan by @peyha in #732
- test: normalize price-zero test names by @prd-carapulse[bot] in #780
- remove isHealthy short circuit by @MathisGD in #774
- test callback caller not sender by @adhusson in #765
- fmt by @adhusson in #782
- docs: authorization considerations by @MathisGD in #741
- Increase timeout from 3600 to 7200 seconds by @MathisGD in #781
- takeAmountLib reverts if offer is untakeable (Blackthorn-26) by @MathisGD in #754
- Clean up wallet decodable signature tests by @adhusson in #766
- [Certora] Fix CI (Reverts) by @QGarchery in #788
- chore: restore optimizer runs by @MathisGD in #787
- inline isLiquidatable by @MathisGD in #772
- document computation in TakeAmountsLib by @MathisGD in #789
- Update constants for liquidation slot and callback success by @MathisGD in #786
- Add clarification to liquidate function documentation (Spearbit-5) by @MathisGD in #785
- naming collateralBitmap by @MathisGD in #791
- require obligation's TTM<100y (Spearbit-3) by @MathisGD in #742
- refactor: rename loss index to loss factor by @prd-carapulse[bot] in #783
- document push0 dependancy by @MathisGD in #797
- ci: unpin foundry nightly and ignore new lints by @prd-carapulse[bot] in #794
- bundler forces same obligation by @MathisGD in #793
- backquotes and clean formatting by @MathisGD in #805
- handle max loss index (spearbit-9) by @QGarchery in #743
- syntax highlight certora by @MathisGD in #798
- Multicollat documentation by @bhargavbh in #767
- Clarify documentation on creditOf and related values by @MathisGD in #803
- comment bundler liveness by @MathisGD in #806
- Revise documentation for _forceApproveMax function by @MathisGD in #812
- style lastLossFactor by @MathisGD in #814
- repay bundle by @MathisGD in #807
- Document up to date values by @QGarchery in #819
- Average price for bundler by @QGarchery in #808
- fmt by @MathisGD in #827
- Tree out of midnight (in ratifier) by @peyha in #809
- rename bundles functions by @adhusson in #826
- [Certora] collateralBitMap Improvement by @lilCertora in #778
- view ratifier callback by @adhusson in #831
- repay bundler referral fee by @MathisGD in #838
- Optimize hash offer by @adhusson in #829
- Add comment for the same obligation by @QGarchery in #837
- [Certora] tweaks of MakerProtection by @QGarchery in #776
- Easier CI for fetching solc by @QGarchery in #842
- Perf: hash collaterals by @QGarchery in #843
- show special consumed offer take case by @adhusson in https://github.com/morpho-or...
2026-04-07
Merge pull request #676 from morpho-org/errors-string errors string