I am able to avoid the crash by adding an extra condition to the if. However, I think this is not the right fix - I do not get the depleted uranium fuel cell which is obviously not intended.
        if output and output.count > 0 or fuel.buffered_out > 0 then
            print("cyr o.c="..output.count)
            print("cyr f.bo="..fuel.buffered_out)
            local insertable = math.min(output.count, fuel.buffered_out)
            print("cyr ins="..insertable)
            fuel.buffered_out = fuel.buffered_out - insertable
            print("cyr wp="..waste_product)
            print("cyr f.bo="..fuel.buffered_out)
            output.inventory.insert{name=waste_product, count=insertable}