EnRoute Growth Platform
EGP Dashboards
← CDAIO index CDAIO
EnRoute Growth Platform

EGP-DS Markets + Sending Infrastructure — Morning Dashboard

Version: 1.0

Date: 2026-04-14 (morning)

For: Marc Williams (CDAIO) + Yolan (AdminOps)

Author: Betty Suarez, Chief of Staff

Scope: Status of the 64-market EGP-DS sending infrastructure buildout, related workstreams, and open decisions


Top-Line Status

TrackScopeStatusCountOwner
ASOP + PIT tab + Confluence body✅ Complete64/64 rowsBetty
BGHL sub-accounts + admin-add✅ Complete128/128 mutationsBetty (automation)
C1Cloudflare DNS base records✅ Complete (after CF Pro upgrade)320/320 recordsBetty (automation)
C2Mailgun domains + DKIM + SMTP creds🏃 Running~32/64 markets completeBetty (automation)
C3GHL Custom SMTP + subdomain wiring🏃 Dispatched0/64 wired yetBetty (subagent)
Jira SWATParent + 2 sub-tasks for Aisha + Surafel✅ LiveSWAT-152 / 153 / 154Betty + team
SOP v1 → v2Team-facing artifact (removes admin-add noise)✅ md + HTML + PDF3 artifactsBetty
Secret vault import64 PITs + 64 SMTP passwords + 7 API keys⏳ Pending Marc0/135 secretsMarc

P0 Blockers (need Marc decision before we can proceed)

BLOCKER #1 — Secret Key Vault selection

What: Marc hasn't picked a vault vendor yet. All secrets are currently staged in local files + Google Sheet.

Impact: Team cannot safely use PITs for multi-device work. Sheet-based staging is non-auditable and non-rotating.

Options:

Recommendation: 1Password Business (fastest path to working state, EGP already uses it personally, import flow is straightforward for 135 secrets).

Decision needed from Marc.

BLOCKER #2 — GHL HQ sub-account identification

What: Research scan of .tmp/ghl_locations_all.json could not identify a single definitive "EGP HQ" GHL location. The 29 active EGP-DS sub-accounts + 35 BOL delta sub-accounts are all market-scoped. The 4 PRBoost sending sub-accounts from CDAIO-191 are still pending Marc's UI-side creation.

Impact: Cannot send marketing/outreach emails from EGP HQ today without first (a) confirming which GHL location is HQ or (b) completing CDAIO-191 PRBoost sub-account creation.

Options:

Recommendation: Option C (Mailgun direct) for TODAY — unblocks sending immediately. Then complete Option B over the weekend for CRM persistence.

Decision needed from Marc.

BLOCKER #3 — Sending/Transactional subdomain split for EGP-DS markets

What: Each EGP-DS market currently gets ONE Mailgun subdomain (mg.{slug}...) being wired as BOTH the sending and transactional domain in GHL (Track C3). Mailgun best practice is to separate: sending domain = marketing/outreach (higher volume, reputation risk), transactional = receipts/confirmations (lower volume, better reputation).

Impact: If marketing volume tanks sender reputation, transactional (appointments, receipts) goes down too.

Options:

Recommendation: Option A for TODAY — ship the simpler model and split later if reputation metrics warrant it.

Decision needed from Marc (accept plan A, or authorize the extra 2h to build plan B now).


P1 Decisions (can wait until end of day)

DECISION #1 — Track C3 UI-only confirmed — Willemena or team execution

What: Track C3 subagent completed the investigation. **The GHL Marketplace API (Version 2021-07-28) does NOT expose Custom SMTP, Sending Domain, or Transactional Domain at the /locations/* level.** OAuth scope inventory confirms there is no emails. or emailServices. scope at all in GHL's catalog.

Impact: 64 markets × 3 settings each = 192 manual UI operations to wire SMTP + sending + transactional domains.

Deliverables in place:

Options:

Recommendation: Option C for TODAY (Betty via BrowserAct) — (A) requires Willemena activation which is itself a decision, (B) burns team time that should go to PIT generation.

Decision needed from Marc.

DECISION #2 — Willemena activation

What: Willemena is configured as a GHL contact + webhook + MCP bridge tool (tools/betty_willemena_webhook.py, tools/betty_willemena_mcp_server.py) but has no active ~/.claude/agents/willemena*.md definition. She can receive webhooks but cannot execute Python tools until the MCP server is started.

Blocker: MCP server is a process that needs to be running. Not yet running.

Options:

Recommendation: Option B — Willemena is not on the critical path for today. Ship Track C3 via subagent.

DECISION #3 — AI Agent Studio v2 activation

What: v2 architecture designed (00032 folder, 166KB HTML) but zero agents activated. 23 planned agents, 0 live.

Blocker: None operationally — it's a strategic decision on when to light up Agent Studio vs. continuing with current subagent pattern.

Recommendation: Defer. Current subagent dispatch model is working (128/128 mutations overnight, zero failures). Revisit after EGP-DS buildout is complete.

DECISION #4 — JSM final config

What: Jira Service Management project EGPSD exists with 11 request types. Missing: SLA policies, queues, automation rules, portal branding, ORCA webhook.

Estimated work: ~4 hours of Jira UI config for SLAs + queues + automation, ~1 day for ORCA webhook integration.

Owner: Marc or delegate

Recommendation: Schedule a dedicated JSM config session with Yolan (he owns AdminOps). Not blocking any current work.


Completed Overnight / This Morning

TaskArtifactLocation
SOP .mdEGP-DS-MARKETS-VALIDATION-SOP-v2.md00152-EGP-DS-Markets/
SOP HTMLEGP-DS-MARKETS-VALIDATION-SOP-v2.html00152-EGP-DS-Markets/ (90KB)
SOP PDFEGP-DS-MARKETS-VALIDATION-SOP-v2.pdf00152-EGP-DS-Markets/ (626KB)
IANA timezone mapmarket_iana_timezone_map.json00152-EGP-DS-Markets/
PIT tab64 rows, 910 cellsGoogle Sheet
Confluence page v1EGP-DS Markets SOP pageEGPSWAT space, id 131072002
Jira SWAT-152Parent taskhttps://egp-team.atlassian.net/browse/SWAT-152
Jira SWAT-153Aisha sub-task (33 rows)https://egp-team.atlassian.net/browse/SWAT-153
Jira SWAT-154Surafel sub-task (31 rows + QA gate)https://egp-team.atlassian.net/browse/SWAT-154
Mail Accounts RegistryEGP-MAIL-ACCOUNTS-REGISTRY.md + .html00152-EGP-DS-Markets/
This DashboardEGP-DS-MARKETS-MORNING-DASHBOARD-20260414.md + .html00011-EGP-CDAIO-Dashboard/

Running / In-Flight

WorkstreamETAProgress
C2 Mailgun apply~30 min remaining32/64 markets complete
C3 GHL SMTP wiring subagent~45-90 min (depends on API path)Just dispatched
v2 Confluence page POST~5 min once Atlassian MCP reconnectsWaiting on MCP
SWAT Jira description updates (v1 → v2)~5 min once MCP reconnectsWaiting on MCP
PIT tab Wave 2 append (35 delta rows)Need to check — Track A populated 64 rows alreadyLikely already done

Security Posture (as of 09:30 ET)


Financial impact (overnight + this morning)

ItemCostPeriod
Cloudflare Pro upgrade$25/moMonthly, recurring
Mailgun (64 new sending domains)~$0 marginalAlready on pay-as-you-send Mailgun plan
GHL sub-accounts (35 new)Included in agency subscriptionNo marginal cost
Secret key vault (TBD)$0-$200/moDepending on vendor choice
Total new recurring$25-$225/mo

Next 2 hours — Betty's autonomous plan

  1. Monitor C2 until all 64 markets have SMTP creds in .env.mailgun_smtp_creds
  2. Monitor C3 subagent — if API path works, it runs --apply autonomously; if not, it writes the UI runbook
  3. Retry Atlassian MCP → POST v2 Confluence page + update SWAT-152/153/154 descriptions to reference v2 only
  4. Verify PIT tab has 64 rows (check with gsheets.py)
  5. Write completion reports for C2, C3 + brand-compliant HTML renders
  6. Update this Dashboard with delta progress at the 2-hour check-in

www.enroutegrowthplatform.io · CustomerSuccess@EnRouteGrowthPlatform.io · +1.866.891.2779

© 1991–2026 EnRoute Growth Platform. All rights reserved.