I spent hours building the whole storyline brick by brick and this is what i came up with. Sorry for the yap.
Visi was indeed a traitor and she worked for shroud but only till the end of episode 3. You know how she put a donut on robert’s desk and then came back to destroy it, its because at the very start she was supposed to flirt with robert and get closer to him. She was feeding all info about robert to shroud, thats how shroud at the end knows that beef is robert’s weakness. Also lightningstruck was shroud’s puppet, thats why visi disobeyed robert’s order in episode 2 so that lightningstruck could run away, because thats what shroud wanted, thats also the reason why she made that trap for malevola when mal was chasing lightningstruck. Shroud didnt want him to get caught. So she was fully worked for shroud feeding him everything she knows.
As we also know visi got the mechanism that helped her with her asthma, notice for how long she could be invisible holding her breath in the conference room with blonde blazer and robert. Thats because she was still working for shroud and he was making sure her asthma was better. Then the third fight with lightningstruck happened in a jewellery store, what a crazy coincidence that visi was right next to that store lightningstruck was gonna rob. Since visi was at the bottom of the leaderboard at that time she need to catch a bad guy to get points, thats when they probably planned with shroud that she would use lightningstruck to stay in z team because thats the inly way for shroud to know more about robert. After she catches him just like the way shroud wanted her to catch him, you can see how weird she feels when everyone is proud and happy for her. You can almost tell that she never felt someone being proud of her and happy for her. She never really felt loved. Thats when everything change.
The fact that she felt being loved, everyone was proud of her, robert’s pep talk about making your own destiny and that you are not your past, its actually the decisions you are making right now define who you are, all that changed her so much instantly that she wanted to feel that again, she wanted to feel like a hero, she wanted people to look at her like she is a hero. Thats also what she meant bh saying “i just wish you looked at me the way you look at blonde blazer”, she said that to robert in episode 7 in the lockers. You might think she was being jealous that robert loves bb more or something like that, what she actually meant is she wants robert to look at her like she is a hero, like she is a truly good person, like she can do good, like he looks at blonde blaze.
Then in episode 4 we have that freaky dream that i thought at the start was just freakiness for the sake of freakiness, but it actually shows how visi falls in love with robert and how she changes from being shroud’s puppet and now wanting to feel the way she felt when everyone were proud of her, she wanted to feel loved and wanted to feel like a hero. Basically that new feeling of other being proud of her, the feeling that robert truly believed in her, all that changed her. So after that she stops working for shroud (kinda), she still works for him but now everything she does is for the sake of z team and robert, but she still doesnt want shroud to know. Then in episode 5 when armstrong in the bar tells visi “someone wants to talk to you” probably means shroud started getting angry at her not feeding him any information anymore and not cooperating.
We also see that after episode 3 she cant be invisible for so long anymore, probably because shroyd stopped helping her with asthma since she stopped working for him. In episode 6 when she “remembered the similar explosions and asked royd to check energy levels around la” that sounds too scientific for visi, she probably knew the location from shroud. But she definitely wasnt supposed to tell it to robert, since she loved him and wanted to make up for all the pain and shit she has done to him, she then decided to help him and go solo. Thats why all the villains on the ship werent expecting to see her cos she was moving against shroud. So at this point she actually regretted everything she did to robert and wanted to make up for it and be a hero she always wanted to be. So at the end of episode 6 shroud genuinely wanted to kill her ass because she betrayed him.
Now idk why she didnt give astral pulse to robert, either she actually didnt want shroud to get it through robert or the reason royd found her in the same room where mecha suit was supposed to be is because she wanted to change the actual astral pulse with the prototype and give proto pulse to shroud like she was sorry for betraying shroud, but she actually wanted him to die because of that proto pulse. It never made sense for me when royd said “she tried to steal your mecha suit” in episode 8. Invisigal is not that smart to being able to use that suit anyway, the only possible reason she could be trying to find it is to swap it and give shroud the prototype since we all know prototype was already in the suit.
Now last bit, at the very end in sdn’s roof shroud bluffed when he said visi was working for him all this time, because he wanted robert to stop trusting her and be disappointed. In that case shroud knew how visi was going back and forth, so by saying that he thought he cut any possible way for visi to gain z-team’s trust again because no one would believe her denying shroud’s words. Then she wouldnt have any other option but to join red ring again and become shroud’s puppet again. But since we supported her and believed in her (if you did so you could get the good ending) and the fact that she loved us, instead of being a villain again she decided to do what robert taught her, what chase showed her, she didnt care if anyone would forgive her, all she wanted is to be a hero and feel like a hero and sacrifice herself for robert