Spirit Siphon's targeting checks currently happen before the cast order is given. This means, when the cast order part gets skipped, the spell can be stacked on one target, pierces spell immunity, and can be cast on Roshan.

The cast order can be skipped with the help of Spell Reflection (Lotus Orb, Soulbind and aghs upgraded Spell Shield).

Repro:
1. Have an enemy with Lotus Orb and Linken's Sphere
2. Optionally, get Black King Bar and activate it
3. Cast Spirit Siphon twice on the enemy

Result: First cast triggers Linken's Sphere, so you can cast it again on the target. Lotus Orb will reflect both casts, so you are affected by 2 Spirit Siphon links at the same time (the slow doesn't stack, but the drain stacks). The reflected Spirit Siphons also ignore your spell immunity.

Expected: The spell should make its checks before starting to apply its effects as well, and not only check upon cast.