extra_count_fraction
does exactly what you want. It gives the listed amount 100% of the time, and then gives a chance to give 1 extra, with the chance being the value of the field in question. The way you currently have it implemented was needed in 1.1 since this field didn't exist back then, but it was added in 2.0, likely for the recycler, which is supposed to handle cases where it's supposed to give back 1.25 or 3.75 of an item if 5 or 15 of said item respectively were used in the recipe for what's getting recycled.
My local patch put the output expansion code in the otherwise empty data-updates.lua
, though an argument could also be had for data-final-fixes.lua
.