The frei0r plugin description says, “Unsharp masking (port from Mplayer).”
The mplayer man page says it does gaussian blur or a sharpen using an unsharp mask routine.
The underlying plugin code range is [-1.5, 3.5] where 0 is the switching point between blur and sharpen. Thus, 50% in Shotcut converts to 1.0 in the plugin code, and the switch point where there is no change is 30% in Shotcut.
The Size parameter controls the amount of blur just like nearly all blur filters have as a parameter. Sharpening still creates a blur, but it uses this as a mask to sort of subtract from the original. This also explains why it can also be used to blur and why many tools call this function “unsharp” or “unsharp mask.” However, I do not like to call it that in Shotcut because it is confusing and deceptive for non-advanced users who are generally looking to increase sharpness (while also not limiting it to that).