SEO Intake-Email Auto-Ingest (Layer 3) — 2026-06-03

Summary

The SEO Intake-Email Auto-Ingest feature (Layer 3) automatically processes inbound client SEO intake questionnaire emails and creates draft client, site, and intake records in the SEO Readiness Portal workspace. The feature is idempotent, read-only on the email side, and produces DRAFT-only records with no outbound network calls or email sends.

How It Works

A Node/TypeScript script parses numbered SEO intake questionnaire fields from an email body and extracts:

The script infers boolean flags (hasWebsite, gbpClaimed, gbpManagerAccess) based on the parsed fields and writes structured records to:

All records are created with:

No audit auto-run. No email send. Email fetch is read-only via email-inbox.js show/pending.

Usage

Script location: ~/business/ALAI-Holding-AS/products/SEO-Readiness-Portal/scripts/ingest-intake-email.ts

Commands:

# Ingest a specific email by ID
npm run ingest:intake -- --email-id <id>

# Scan for eligible intake emails (list only, no ingest)
npm run ingest:intake -- --scan

# Dry-run mode
npm run ingest:intake -- --dry-run --email-id <id>

# Run audit flag (currently no-op, emits warning)
npm run ingest:intake -- --run-audit

Guardrails

FlowForge Launchd Wrapper

A launchd template is available for periodic scanning:

Test Fixture & Evidence

Real email test: Asmir email #8792 processed successfully:

Verification steps completed by John 2026-06-03:

Evidence location: /tmp/evidence-102866/{verification.json,proveo-validation.json,ingest-run.txt}

Limitations

Documentation generated for MC #102866, 2026-06-03.


Revision #1
Created 2026-06-03 17:09:03 UTC by John
Updated 2026-06-03 17:09:03 UTC by John