Send a Global Key Commands, receive one free

Same thing as in my earlier post.
I’ve got a strange double-imput of a GKC which is triggered (I think) by it issuing another GKC, with completely different keystrokes. It’s also affected somehow by a Dynamic Property.
A sends “Weaken”, “Strengthen” or “Flip” to Chit B, which adjusts a Dynamic Property and then sends “Delay” to C, whose only job is to send back “Update” to B. C was the only way I could get it to make Update apply w/ the new Weakened, Strengthened, or Flipped properties. However, for some reason when I do this, some of the Chit B’s receive A’s commands twice. When I break the Delay GKC, these double-ups don’t happen but now they don’t Update. I’ve changed around the Key Commands so it’s not some old artefact messing things up.
Another weird thing is of the set of B’s, only some have this problem, and the number changes from set to set. They’ve got a different Strength property, but in one set of Bs the 2 Strength chits double-up, whereas in another set, the 1’s have it. At a guess, it’s probably the fact that it’s the left-most stack (ie not a single-piece).

Haven written this out, I thought that if having B send things is a problem, why not give it to A, which also allows me to cut out C. So yeah, after having sent Strengthen, Weaken, Flip, A now also sends out Update and it works.