High brightness values are read back at a different scale
Example:
$ xrandr --output eDP1 --brightness 5 ; xrandr --verbose | grep Brightness
Brightness: 5.2
$ xrandr --output eDP1 --brightness 10 ; xrandr --verbose | grep Brightness
Brightness: 11.
$ xrandr --output eDP1 --brightness 20 ; xrandr --verbose | grep Brightness
Brightness: 26.
It looks like the value goes through a transformation when it is sent to and received from the X server, but the transformation is not exactly reversible.
(Granted, values above 5 are unlikely to be useful, so this bug report is mostly pedantic.)