How would you describe an ADSR circuit? To borrow a term from programming (and more specifically, computational modelling), ADSR envelopes are state machines. They have a finite number of states, and each state is able to transition to other states based on inputs or events. To make this useful, each state will also generally have some other impact—in this case, on the overall output level of the envelope generator.
I think of ADSRs as having 3 to 5 states: Attack, Decay, Release, and sometimes Sustain and/or Idle. What the first four do is likely apparent if you’ve used an ADSR before, and ‘Idle’ can be thought of a subdivision of the release state that the envelope transitions to from Release once the output finishes falling. Digital envelopes are more likely to use 4 or 5, whereas analog circuits can often get away with just the first 3.
ADSR circuits (and programs) differ somewhat as to how and when states transition, even when operating normally. For the purposes of this explanation, I’m using “normal operation” to mean a mode where there is only one variable input (the ‘gate’) which can be either OFF or ON; we’ll treat the settings of the Attack, Decay, Sustain, and Release controls to be fixed prior to an envelope being generated. In Eurorack terminology, OFF would be when there’s no input gate connection or when there is a connection but its voltage is LOW; ON would be when there is a connection and its voltage is HIGH.