This is a bug, but a minor one. What happens is that when a war is declared (the other guy seems to have declared war on you even though you dont actually have diplomacy yet), any units that are in the same plot as units of the person they are now at war with are moved to the nearest valid plot. This does not apply to invisible units however, and for always invisible units it works fine. For units that can be seen by certain other units (like your rogue here) it applies a can-see test, but it has this the wrong way round, so its ejecting your rogue becaue it can see the archer, whereas it SHOULD be testing whether the archer can see you. The fix shouldn't be hard, but it's not uttrely trivial, and I'm out of time tonight. I should be able to fix it tomorrow if nothing more urgent comes up.Had a weird thing happen, My Rogue was just pushed OUT of his spot, to a NW tile by an invading Archer unit for NO apparent reason? (attached 1/2)
EDIT: Had these guys just sitting there doing nothing, or the civs that its enemy, doing nothing either?? I believe now it has been over 10 turns, maybe more?? (attached 3/4)
They want to attack the city, but lack the strength so they are awaiting reinforcements (that will never come since they are barbarians and there are no nearby sources of other barbarians). They also can't find any nearby pillage targets, and are on the best defensive terrain to attack the city from that they can find. Net result is they can't see anything better than just sitting there. Eventually the city owner will probably repulse them, but he likewise lacks good attack odds against them currently