Hi! Pulumi can fit into the workflow you describe, but doesn’t have a way to “pause and wait” during an update.
If you want a manual test step after updating staging, and then proceed to updating production, you would just need to create two different Pulumi stacks. (E.g. ‘pulumi update staging’ and then later ‘pulumi update production’.)
So either CI/CD system would support your use case, if I understand it correctly.