The docu says that ops() should return also virtual operations:
ops(start=None, stop=None, **kwargs)
Yields all operations (including virtual operations) starting from start.
Parameters:
start (int) – Starting block
stop (int) – Stop at this block
mode (str) – We here have the choice between “head” (the last block) and “irreversible” (the block that is confirmed by 2/3 of all block producers and is thus irreversible)
only_virtual_ops (bool) – Only yield virtual operations
but does not. So it is a valid bug report to me.
give me some mins to check it !