One panel per kind of email work you start by hand. Both end in Review, which is the send-time gate.
Run the whole enrichment engine on a raw master CSV, then queue what it writes. Review queue โ /email-review
Upload the RAW master CSV (one row per contact, with an email and a company website column) and the worker runs the whole enrichment engine on the VPS โ import, store read, LLM evidence, ads, routing and sequence generation, passes 0 through export. That costs real LLM and API spend and can take hours, so the job pauses for approval first: it parks at a gate showing the row and domain counts plus the options below, and nothing runs until someone approves it. Finished sequences land in the review queue, which is still the send-time gate.
Queue an enrichment-engine export CSV into the review queue. Review queue โ /email-review
Upload an enrichment-engine export CSV (one row per contact, five touches per company). The worker groups it by domain and queues the drafts in the review queue โ which is the gate: nothing is sent until a human approves it. Re-importing the same file only refreshes rows nobody has reviewed yet.