So it appears that Firefly still is not fully responsible for granting flying vision. It still relies on the hero to have flying vision which the spell then activates. As of now, only Batrider and Rubick have it. No other hero does.

If you really don't/can't make Firefly itself to change a unit's vision from ground to flying, then give every hero the ability go have flying vision.

But Im sure it is possible to add a "switch" to a unit's vision in general which Firefly turns on and off, instead of making it hero-specific.

Repro:
1. Pick Firefly on a hero who isn't Batrider
2. Cast Firefly

Result: No flying vision is gained.

Expected: Firefly should give you flying vision while active, regardless of hero.