produce: Use a separate condition_variable for passthrough/output thread
- produce: Use a separate condition_variable for passthrough/output thread
This prevents a rare deadlock during teardown, where the output thread would miss a continue notification because it would not be waiting on the cv at that exact moment.