generate an array of actions (don't merge before generate)