step is the output quantization, itās guaranteed that the control output is always a multiple of this, whether you adjust the control via the PARAMS menu or from calling params:delta / params:set in your script. So one use for this might be controlling something that is ultimately discrete ā for instance if your script outputs midi CCs you could use a controlspec with an output range of 0-127 and a step of 1.
quantum instead controls the input quantization, which affects the step size when adjusting via the menu or mapped params, but has no effect on calls to params:delta / params:set ā you can pass any value to these and the controlās output value will be adjusted accordingly, and quantized to a multiple of step.