iHouseDesign · David Drebin

Document Library

iHouseDesign · David Drebin

Samurai Validation
Agent Brief

Operational reference
July 2026

The operating rules for preparing, validating, reusing, and auditing David Drebin lead-batch emails, plus the path from Samurai to a locally controlled validation pipeline.

Core rule: reuse results for emails validated within six months. Send only never-validated emails to the provider unless a deliberate refresh is requested.

Purpose

Use this brief when preparing David Drebin lead batches for email validation in Samurai.

Samurai is the validation and lead-processing engine. It is not the CRM and not the campaign-sending tool. Its job is to take prospect data, clean/filter it, discover or use email addresses, validate those emails through its validation provider, remember results, and export usable lists.

Core Understanding

Samurai works through job-based workflows. A job may import people or company records, apply filters, show a preview, process email discovery/guessing, validate email addresses, and export results.

For David Drebin, the main use case is:

  1. Upload or create a job from a raw CSV batch.
  2. Make sure the correct email column is present.
  3. Use Samurai validation actions.
  4. Download the valid-email export.
  5. Use the valid export as the final candidate list for outreach.

Email Guessing vs Validation

Samurai may be able to guess email patterns from first name, last name, and company domain, for example:

Guessed emails are only candidates. They should not be treated as usable until they pass validation.

Validation Memory

Samurai has built-in memory for email validation results.

Every checked email is stored with:

If the same email appears again in another job or list, Samurai can reuse the existing validation result instead of paying to validate it again.

This is why the correct button for fresh batches is usually:

Validate all emails never validated

That action should only send emails that Samurai has never validated before into the validation queue.

Samurai also has a separate route for older results:

Validate all emails older than 6 months

Use that only when intentionally refreshing stale validation data. Do not use it for normal new-batch validation unless the goal is to recheck older email statuses.

An email validated only three months ago should normally not be revalidated because Samurai's memory should still consider the result recent.

External Verification Provider

Samurai orchestrates validation and stores results. The actual mailbox/DNS/mail-server verification is delegated to an external provider. In reviewed code/context, the current provider is Reoon, with signs of older/internal validation routes existing historically.

Important interpretation:

A safe result does not guarantee inbox placement, response, or that the exact intended person will read the email.

Queue Behavior

Samurai queues unvalidated emails for checking. It avoids unnecessary duplicate work by consulting the email-validation memory.

The queue can mark items as in-work and release stalled items after a timeout so they can be retried. This helps avoid stuck validations.

Recommended David Drebin Workflow

Use only raw validation CSV files, not summaries or documentation files.

For the current proven-benchmark batches, use:

/Users/arseni/Documents/DATABASES/LinkedIn_Database/output/david_drebin/monthly_batches/to_validate

Expected files:

Do not upload:

In Samurai:

  1. Open the job.
  2. Confirm the imported CSV has an emails / Emails column.
  3. Use Validate all emails never validated.
  4. Wait for validation to finish.
  5. Download the only valid emails export.
  6. Preserve the only not valid emails, Outs, and Unfiltered exports for audit if useful.

Output Interpretation

Common Samurai exports:

For David deliverables, the main file of interest is usually:

*_only valid emails.csv

Agent Responsibilities

When acting as the Samurai Validation Agent:

Key Rule

Samurai's validation memory is valuable. Do not waste credits by revalidating recent emails unless there is a specific reason to refresh stale data.

Strategic Direction: Possible Samurai Replacement

As of July 2026, we are considering replacing most of Samurai for this narrow David Drebin bulk-validation workflow with a Codex/Cursor-controlled local pipeline.

This does not mean replacing every Samurai feature immediately. The first replacement target is only the repeatable monthly email-validation workflow:

  1. Take raw 40,000-row CSV batches.
  2. Extract and normalize emails.
  3. Check validation memory.
  4. Validate only emails that are never validated or intentionally stale.
  5. Store provider results permanently.
  6. Export clean files for outreach and audit.

Why Replace Samurai for This Workflow

The workflow has become narrow enough that a local script/database may be clearer than a web app.

Reasons to replace this part:

Reasons not to replace everything immediately:

Replacement System Requirements

The Codex/Cursor replacement must rebuild Samurai's useful parts, not just call Reoon.

Minimum required components:

Recommended local structure:

/Users/arseni/Documents/DATABASES/LinkedIn_Database/output/david_drebin/email_validation/
├── validation_memory.sqlite
├── input_batches/
├── queued/
├── provider_results/
├── exports/
└── logs/

Recommended memory table fields:

email
normalized_email
status
validated_at
provider
provider_response_json
source_batch
source_job
first_seen_at
last_seen_at
notes

Useful output files:

Future Codex Command Shape

The future replacement command should look approximately like:

python3 validate_emails.py \
  --input /Users/arseni/Documents/DATABASES/LinkedIn_Database/output/david_drebin/monthly_batches/to_validate/monthly_validation_batch_2026_05_proven_benchmark.csv \
  --account david_drebin \
  --provider reoon \
  --mode never_validated \
  --validity-window-days 180

Important behavior:

Migration Plan

Phase 1: Keep Samurai as fallback and build local validation memory.

Phase 2: Run one batch through both Samurai and the Codex/Cursor pipeline.

Phase 3: Compare valid, invalid, catch-all, and skipped/reused counts.

Phase 4: If results match closely and logs are clear, make Codex/Cursor the primary validation workflow.

Phase 5: Keep Samurai only for fallback, UI inspection, or legacy job access.