8000 Comparing v2.6.2...v2.6.3 · mento-protocol/mento-core · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: mento-protocol/mento-core
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v2.6.2
Choose a base ref
...
head repository: mento-protocol/mento-core
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v2.6.3
Choose a head ref
  • 14 commits
  • 20 files changed
  • 12 contributors

Commits on Aug 26, 2024

  1. chore: reduce CI foundry test verbosity (#475)

    ### Description
    
    The verbosity setting for CI tests was set to `4`, which outputs full
    stack traces for all (even passed) tests. This leads to extremely
    verbose output that doesn't get fully displayed in GitHub UI (need to
    download a 52MB, 350k line log file). This makes it more time consuming
    to pinpoint what specific tests are causing the workflow to fail.
    [Example](https://github.com/mento-protocol/mento-core/actions/runs/9779856065/job/27000074200?pr=456).
    
    I propose we set verbosity to `3`, which should still output stack
    traces for failing tests. The one thing missing will be setup traces for
    failing tests, but this should still be a quality of life improvement.
    
    ### Other changes
    
    Nothing, this is a one byte change.
    
    ### Tested
    
    Will need to look at CI output for this PR.
    m-chrzan authored and bowd committed Aug 26, 2024
    Configuration menu
    Copy the full SHA
    6b3428d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2f7df80 View commit details
    Browse the repository at this point in the history
  3. feat: implement Chainlink relayer contract (#456)

    ### Description
    
    Adds a ChainlinkAdapter contract which can relay anwers from a Chainlink
    AggregatorV3 to SortedOracles.
    
    It assumes it is the only reporter for the given rate feed in
    SortedOracles (e.g. `greater`/`lesserKey` are not needed).
    
    Every rate feed that relies on this mechanism should have a separate
    ChainlinkAdapter deployed, with the appropriate parameters passed to the
    constructor. To save gas, the adapter is stateless, unupgradeable, and
    relies on immutable parameters set in the constructor.
    
    Next steps:
    
    * Integration test of the contract.
    * Off-chain component that can ping this adapter contract.
    * Deployment tooling/docs for setting up a rate feed with the
    ChainlinkAdapter.
    
    ### Tested
    
    Unit tests.
    
    ### Related issues
    
    - Fixes #458
    
    ---------
    
    Co-authored-by: chapati <philip.paetz@me.com>
    2 people authored and bowd committed Aug 26, 2024
    Configuration menu
    Copy the full SHA
    7fa0ffe View commit details
    Browse the repository at this point in the history
  4. feat: implement Chainlink relayer factory (#476)

    ### Description
    
    This implements a factory contract to deploy Chainlink relayers (see
    #456).
    
    TODO:
    - [x] Make the factory Ownable and set permissions for functions that
    affect state
    - [x] Add NatSpec documentation
    
    LATER (follow-up PR, see #481 ):
    - [x] Use a proxy for upgradability
    - [x] Add integration tests that test the Factory -> Relayer ->
    SortedOracles -> BreakerBox flow
    
    ### Other changes
    
    * export a `contractPath` helper function from `test/utils/Factory.sol`,
    it's useful for computing the `CREATE2` address in tests
    
    ### Tested
    
    Unit tests.
    
    ### Related issues
    
    - Fixes #459
    
    ---------
    
    Co-authored-by: chapati <philip.paetz@me.com>
    Co-authored-by: bowd <dumbogdan@gmail.com>
    3 people committed Aug 26, 2024
    Configuration menu
    Copy the full SHA
    9fc5420 View commit details
    Browse the repository at this point in the history
  5. feat: proxy ChainlinkRelayerFactory (#481)

    ### Description
    
    This PR sets up upgradeability for the ChainlinkRelayerFactory (see
    #476).
    
    TODO:
    
    * [x] integration test of the ChainlinkRelayerFactory
    
    ### Tested
    
    Integration tests that:
    
    - Setup a proxied ChainlinkRelayerFactory
    - Ensure the TransparentUpgradeableProxy/ProxyAdmin pattern works
    correctly
    - Sets up a new rate feed with an enabled circuit breaker
    - Tests that price reports coming from the relayer correctly
    trigger/reset the circuit breaker.
    
    ### Related issues
    
    - Fixes #459
    
    ---------
    
    Co-authored-by: chapati <philip.paetz@me.com>
    Co-authored-by: bowd <dumbogdan@gmail.com>
    Co-authored-by: boqdan <304771+bowd@users.noreply.github.com>
    Co-authored-by: baroooo <baranseltekin@gmail.com>
    5 people committed Aug 26, 2024
    Configuration menu
    Copy the full SHA
    15323ff View commit details
    Browse the repository at this point in the history
  6. feat: add PUSO + remove cPHP proxy contract (#497)

    adds the PSO Proxy contract + removes PHP
    denviljclarke authored and bowd committed Aug 26, 2024
    Configuration menu
    Copy the full SHA
    8593684 View commit details
    Browse the repository at this point in the history
  7. Feat: Make ChainlinkRelayer support implicit pairs (#487)

    ### Description
    
    Late last week it became apparent that Chainlink won't provide all
    derived rates that we need, and that we will need to compute implicit
    rates on-chain. This PR extends the relayer such that it can aggregate
    up to 4 chainlink date feeds into a single price. Each data feed can be
    inverted (1 / p) to make the dominos line up.
    
    ### Other changes
    
    Upgraded the tests to solidity 0.8 and fixed the issue with deploying
    SortedOracles via the factory by pre-deploying libraries as well because
    then factory links them automatically when calling `vm.getCode`.
    
    ### Tested
    
    Tests have been extended, and I've also used a slightly new pattern that
    I didn't use before which I like, and might not be evident from reading
    the code. Specifically for the relayer we have 4 scenarios depending on
    how many price feeds it aggregates, so I wrote test contracts that
    extend each other in such a way where test cases from N-1 price feeds
    get executed also in the test for N price feeds.
    
    ### Related issues
    
    N/A
    
    ### Backwards compatibility
    
    Not backwards compatible but not deployed yet.
    
    ### Documentation
    
    N/A
    
    ---------
    
    Co-authored-by: Marcin Chrzanowski <martin@clabs.co>
    Co-authored-by: Martin <marcin.j.chrzanowski@gmail.com>
    Co-authored-by: chapati <philip.paetz@me.com>
    Co-authored-by: Nelson Taveras <4562733+nvtaveras@users.noreply.github.com>
    Co-authored-by: baroooo <baranseltekin@gmail.com>
    6 people committed Aug 26, 2024
    Configuration menu
    Copy the full SHA
    33a07f9 View commit details
    Browse the repository at this point in the history
  8. feat/cosmetic: Move Proxy Contracts around (#498)

    ### Description
    
    When we restructured the repo a while ago I moved the proxy contracts to
    the legacy folder thinking that we might not deploy named proxies in the
    future, and maybe upgrade to a more modern Proxy implementation, but we
    have continued to add the proxies inside the `legacy` folder which
    doesn't feel great as that folder is meant to be removed (and probably
    can be at this point).
    
    So in order to embrace what we're doing I propose collocating the proxy
    contracts to the `contracts/tokens` directory. And as an addition to
    that, I propose collocating all proxies with their contracts like Martin
    also did in the `contracts/oracles` for the new ChainlinkRelayerFactory
    contract and proxy. So I also moved around the proxies in
    `contracts/proxies`.
    
    This shouldn't really effect anything else.
    
    ### Other changes
    
    - Renamed stabletokenPSO to stabletokenPHP
    
    ### Tested
    
    Ran tests, all is well.
    
    ### Related issues
    
    N/A
    
    ### Backwards compatibility
    
    YES
    
    ### Documentation
    
    N/A
    
    ---------
    
    Co-authored-by: Bayological <6872903+bayological@users.noreply.github.com>
    Co-authored-by: denviljclarke <60730266+denviljclarke@users.noreply.github.com>
    3 people committed Aug 26, 2024
    Configuration menu
    Copy the full SHA
    5e48485 View commit details
    Browse the repository at this point in the history
  9. feat: Add relayerDeployer ACL role to the factory (#499)

    ### Description
    
    We realised that it would be better operationally to separate the proxy
    ownership ACL from the deployer ACL, that way we can keep using the
    `mento-deployer` account for relayer deploy, and use the multisig only
    for proxy updates.
    
    ### Other changes
    
    N/A
    
    ### Tested
    
    Tests added
    
    ### Related issues
    
    N/A
    
    ### Backwards compatibility
    
    No, but no mainnet deployment yet.
    
    ### Documentation
    
    N/A
    bowd committed Aug 26, 2024
    Configuration menu
    Copy the full SHA
    87875b2 View commit details
    Browse the repository at this point in the history
  10. Revert "feat: remove maxTimestampSpread and only rely on expiry" (#504)

    This reverts commit ac1c540.
    
    ### Description
    
    Brings back the maxTimestampSpread setting. A visual explanation here:
    
    <img width="918" alt="image"
    src="https://github.com/user-attachments/assets/02dfaadb-f029-4f38-8bd5-965644b4a4b5">
    
    We need it because CELO/USD has a heartbeat of 24hr and PHP/USD
    5minutes, therefore we could be in a situation where the spread between
    reports is quite large, and if we rely only on max timestamp spread we
    could be reporting with stale data. The rule of thumb is:
    - Set `maxTimestampSpread` by considering the largest heartbeat
    frequency.
    - Set `tokenExpiry` in SortedOracles by considering the shortest
    heartbeat frequency.
    
    ### Other changes
    
    N/A
    
    ### Tested
    
    Yup
    
    ### Related issues
    
    N/A
    
    ### Backwards compatibility
    
    N/A
    
    ### Documentation
    
    N/A
    
    ---------
    
    Co-authored-by: chapati <philip.paetz@me.com>
    Co-authored-by: philbow61 <80156619+philbow61@users.noreply.github.com>
    3 people committed Aug 26, 2024
    Configuration menu
    Copy the full SHA
    56f9f94 View commit details
    Browse the repository at this point in the history

Commits on Dec 6, 2024

  1. Merge branch 'main' into release/2.6.0

    chore: resolve merge conflicts
    baroooo committed Dec 6, 2024
    Configuration menu
    Copy the full SHA
    fb659b7 View commit details
    Browse the repository at this point in the history
  2. Release v2.6.0 (#564)

    ### Description
    
    - cCOP Stable Token
    - cGHS Pilot Stable Token
    - GoodDollar 
    - Celo contracts are replaced by @celo/contracts NPM package
    - Refactoring and various small improvements
    bowd authored Dec 6, 2024
    Configuration menu
    Copy the full SHA
    1979c6a View commit details
    Browse the repository at this point in the history

Commits on Feb 20, 2025

  1. Release v2.6.2 (#578)

    nvtaveras authored Feb 20, 2025
    Configuration menu
    Copy the full SHA
    13a385b View commit details
    Browse the repository at this point in the history

Commits on Mar 11, 2025

  1. Release v2.6.3 (#581)

    ### Description
    
    New release after adding the new StableTokenXXX proxy contracts so that
    we can use them in mento-deployment
    #580
    
    It seems like I messed up the release when I did v2.6.2 since the diff
    shows some commits that should have been merged as part of
    #578. Actual diff
    should only be
    0ca0676
    
    ---------
    
    Co-authored-by: baroooo <baranseltekin@gmail.com>
    Co-authored-by: philbow61 <philip.raetsch@gmail.com>
    Co-authored-by: Ryan Noble <ryanjnoble@gmail.com>
    Co-authored-by: Bayological <6872903+bayological@users.noreply.github.com>
    5 people authored Mar 11, 2025
    Configuration menu
    Copy the full SHA
    321b087 View commit details
    Browse the repository at this point in the history
Loading
0