Well, currently, the cube doesn't play an animation when you click on it, so the check against the correct pattern is almost instant...
Using the Translate action alone would be a problem if you wanted to have the animation play when you select a cube and didn't force the player to wait for it's completion. It's likely to drift, because there's nothing forcing it back to it's original position.
Instead, In the start state on the Cube, add a "Get Position" action and store that vector. When the animation starts ("Move up" state) , "Set the position" before doing your Translate action.
On the manager, Send an event to the cube to play it's animation (Like it does in the first loop) when clicked but don't do the bool test to see if the animation is finished. This results in the player being able to click before the animation completes (So can quickly copy the sequence, the checks will still take place almost instantly) and the animation will simply start from the beginning each time it's clicked.
*Extra*
Doing this, you'd also want to remove the colliders from your cubes, and have each cube have an invisible collider as a parent, which doesn't move with the cube mesh. Not only is this more optimized, but you don't have to click onto a moving cube to continue your sequence.
If your referring to a multi-touch system (2 cubes firing off simultaneously as part of the pattern) then that is more complicated, you'd need to look at having multiple arrays describing the sequence "Touch 1 array" "Touch 2 array" as well as acceptable time delays between presses. It's not basic stuff. Once you become more familiar with the underlying logic, you'll be able to piece together how to implement something like that, but it's not something one could easily guide you through in a forum post.