An asset allocation is allowed to propagate inputs that are in conflict exactly one time (the first time) and the miner code usually would take care of taking these out as they would have typically been double-spend asset attempts (balance overflows) however in the case of someone just spending regular sys or asset within bounds twice with the same input, the miner code isn'y picking up on this particular scenario.