Code Monkey home page Code Monkey logo

Comments (5)

aparnakr avatar aparnakr commented on July 21, 2024

I like this split, emergency vs system

from gammaprotocol.

haythemsellami avatar haythemsellami commented on July 21, 2024

For me I wrote it that way thinking that a paused system, is when user can settle their vaults/exercise and a shutdown is when all system is not functional.
But just to make sure I understand, the functions names u wrote are not functions, they are just events.

So currently there are two privileged addresses:

  • pauser
  • terminator

Functions:

  • setSystemPaused by pauser (pause functions only settle/exercise)
  • setEmergencyShutdown by terminator (shutdown all functions). I think we can update this to setSystemShutdown and change the event name also from EmergencyShutdown to SystemShutdown.

from gammaprotocol.

aleone avatar aleone commented on July 21, 2024

Yeah, so there were a couple things that maybe I wasn't so clear about.

  1. Its clear to me that pauser corresponds to the person that can setSystemPaused. Its not clear to me that the terminator corresponds to the setEmergencyShutdown. Not sure if there is a better name for the terminator role or if we call the function setSystemTerminated
  2. I agree that we should unify the names for system/emergency shutdown to be one or other across variables, functions/events.
  3. I equate pause with a temporary disruption in the protocol. I equate systemShutdown or emergencyShutdown with a more permanent shutdown of the protocol. Currently pausing is a permanent shutdown (wait till expiry and withdraw proceeds only). Currently emergency/system shutdown is a temporary freeze of all protocol functionality (likely to deploy a fix) before the protocol is resumed. The naming just seems reversed with what I would naturally think a pause is (temporary, no functionality) vs shutdown (more permanent).

Happy to go with whatever people think is best though.

from gammaprotocol.

haythemsellami avatar haythemsellami commented on July 21, 2024

Yeah, so there were a couple things that maybe I wasn't so clear about.

  1. Its clear to me that pauser corresponds to the person that can setSystemPaused. Its not clear to me that the terminator corresponds to the setEmergencyShutdown. Not sure if there is a better name for the terminator role or if we call the function setSystemTerminated
  2. I agree that we should unify the names for system/emergency shutdown to be one or other across variables, functions/events.
  3. I equate pause with a temporary disruption in the protocol. I equate systemShutdown or emergencyShutdown with a more permanent shutdown of the protocol. Currently pausing is a permanent shutdown (wait till expiry and withdraw proceeds only). Currently emergency/system shutdown is a temporary freeze of all protocol functionality (likely to deploy a fix) before the protocol is resumed. The naming just seems reversed with what I would naturally think a pause is (temporary, no functionality) vs shutdown (more permanent).

Happy to go with whatever people think is best though.

Yeah I got u, happy to go with either also. For me I got the opposite thinking for pause and shutdown. Yeah better to make it clear, also in both cases I think none of them is permanent action, as both just temporary until deploying a fix, but the usage differ based on where the error/bug is.

from gammaprotocol.

aparnakr avatar aparnakr commented on July 21, 2024

I like the slack decisions we made

from gammaprotocol.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.