Skip to content

feat: monetary policy with rate smoothening for mint markets#107

Closed
AlbertoCentonze wants to merge 30 commits intomasterfrom
ema-monetary-policy
Closed

feat: monetary policy with rate smoothening for mint markets#107
AlbertoCentonze wants to merge 30 commits intomasterfrom
ema-monetary-policy

Conversation

@AlbertoCentonze
Copy link
Collaborator

@AlbertoCentonze AlbertoCentonze commented Dec 8, 2025

This PR scope creeped a bit and contains two main scopes:

House Keeping

  • Document all mint market deployments to add clarity on which monetary policy is used where.
  • Remove old monetary policies and document where to find them using permalinks to github source.
  • Rename the new monetary policy to MintMonetaryPolicy as it will be the main one used by all mint markets.

New monetary policy for mint markets

The new monetary policy applies an EMA to the rate to smooth it and make it more predictable and less agressive towards lenders.

A strong design decision of this PR is to actually use the sub-optimal candle base monetary policy also for mint markets that could support a more precise one (see this doc for more info). The rationale is that actually all mint markets have been using a candle based monetary policy untill now! And according to my researches this is not the source of the rate spikeness. By doing this I'm unifying all monetary policies to use the same contract which makes things more managable given the big diversity of mint markets implementations in town.

  • separate candles system into its own module to better encapsulate implementation details that should be ejected in the future
  • simplify candle system as discussed offline
  • use curve-std ema lib
  • remove rate bumps
  • migrate old tests if any is good
  • unit testing
  • fork testing

@AlbertoCentonze AlbertoCentonze changed the title ema-monetary-policy feat: monetary policy with rate smoothening for mint markets Dec 8, 2025
@AlbertoCentonze
Copy link
Collaborator Author

/oc can you bump mamushi in precommit to 0.0.9? The current version has a bug that doesn't let me get the CI to pass. Make it in a separate PR to master please.

@opencode-agent
Copy link
Contributor

opencode-agent bot commented Dec 9, 2025

Perfect! I've successfully bumped mamushi to 0.0.9 in a separate branch. Here's what I did:

  1. Created a new branch: chore/bump-mamushi-0.0.9 from master
  2. Updated the version: Changed mamushi from v0.0.8 to v0.0.9 in .pre-commit-config.yaml
  3. Committed the change: With a clear commit message chore: bump mamushi to v0.0.9
  4. Pushed to remote: Branch is now available on GitHub

You can create the PR by visiting: https://github.com/curvefi/curve-stablecoin/pull/new/chore/bump-mamushi-0.0.9

The PR will be directed to the master branch with the mamushi version bump, which should resolve the CI issues you've been experiencing.

New%20session%20-%202025-12-09T15%3A00%3A39.271Z
opencode session  |  github run

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants