I am using Karma with Typescript. A gulp task watches for .ts file changes and compiles to .js, including our spec files. When I run Karma, no matter how long it is after the spec file has been modified and transpiled, the Karma runner will never pick up on the changes the first time. I always have to run Karma twice to pick up on my changes.
I have tried it with autoWatch enabled and disabled and with singleRun enabled and disabled and combinations thereof with no change in behavior.
Alternately, I can stop the Karma server from the IDE and it will see the changes at that point but it's a hassle.