Repro:
1. Pick Elder Titan and max out Astral Spirit
2. Create 10 enemy units
3. Cast Astral Spirit so that all 10 enemy units get hit
4. Return the Spirit
5. Before the received damage/speed buff expires, re-cast Astral Spirit, but this time hit only 5 enemies
6. Return the Spirit before the first dmg/speed buff expires

Result: Each hit creep gives 1% ms and 15 attack damage. So the first cast, which hit 10 enemies, gives 10% ms and 150 damage. Now, the second cast hit only 5. But upon returning, it refreshes the first buff, you still have 10% ms and 150 dmg bonus

Expected: The buff should update based on how many units were hit. So if you currently have the 10 enemies buff, when the second spirit returns, it should update to 5 enemies buff, so you should now have 5% ms and 75 dmg bonus.

Note: This works currently correct for Legion Commander's Overwhelming Odds, which also gives ms based on how many targets it hit. Each cast updates the speed bonus value. Astral Spirit should do the same.