Does array modifier constant offset use blender units or the object's radius?
Scale is factored in

The constant offset is in Blender units, but in the Object Space of the modified object. If you scale the object, (as opposed to scaling its mesh, which you would do by scaling it in Edit Mode) then the object's space is scaled with it. (Thankyou @RobinBetts)

So if scale is 2 and constant offset is 1, scaled by 2 is 2 (explaining the result of your "What I got" column).



Image shows default cube with constant offset one array mod.  Notice at unit scale both expected and result are the same.  Note: non unit scale is one of the most common reasons for getting unexpected results in blender

It is then scaled by 2. (Result: "What I got")

Finally the scale is applied CtrlA Scale(sets on local mesh coordinates object scale returns to unity, equiv of edit mode scale or changing radius when creating cube) (Result: "What I expected")

To keep scale and maintain the 1 x offset could drive the constant offset by

1 / self.id_data.scale.x


making sure to check use self in driver properties.