{{ExCom+ Unified speaking — DD-SDAI-EGP-DS-Market-Rewrite}}

SDAI Rewrite + EGP-DS Market Bring-Online — End-to-End Implementation Plan

DD: DD-SDAI-EGP-DS-Market-Rewrite · 2026-05-18 · Owner: ExCom+ Unified (Betty + Gemma + Vesta + Willemena) · Status: Marc-ratify-pending · Classification: EGP Confidential

1. Executive Summary

EGP-DS (EGP Directory Services) is the four-continent multi-market hub-and-spoke directory network spanning Americas, Europe, Asia-Pacific, and Middle East and Africa. The SDAI app (Site Directory AI / SDAI Market Site customization engine, per Jira EDSR-180, EDSR-181, EDSR-197, EDSR-198) is the codegen and config layer that customizes each Market Site from a single versioned template.

Goal: bring the rewritten SDAI app online and stand up the first three EGP-DS Market Sites (Washington DC EST pilot, Chicago CST, Calgary MST per EDSR-101, EDSR-102, EDSR-103). Pilot domain confirmed in ENDS-1: directory.northernvirginia.va.us.enroutegrowthplatform.io. Public portal should additionally surface at directory.enroute.global.

Recommendation: Path B (Cloudflare Pages + Workers + D1). Estimated end-to-end to first market live: 18 working days from Marc green-light.

2. What's Already Completed

Sourced from Jira (EDSR + EDSML + ENDS + EGPDS projects).

Discovery gap: Deep filesystem grep across tools/ and workflows/ was blocked this session (Bash denied). A follow-on subagent must complete the SDAI-related code-asset inventory before Sprint 1 starts. See Appendix B.

Not yet evidenced (gap log): prior SDAI repo location, test results from any prior SDAI version, Stripe SKUs for Get-Listed flow, Cloudflare account-level naming for the directory.* zone.

3. Where We Left Off

4. Jira Space Details

ProjectKeyTypePurposeURL
EGP Directory Services RoadmapEDSRSoftware (classic)Primary engineering backlogbrowse/EDSR
EGP Directory Services Market LaunchEDSMLBusiness (next-gen)Per-market launch task trackerbrowse/EDSML
EGP Directory ServicesEGPDSBusiness (next-gen)Executive shell (ExCom+ rollups)browse/EGPDS
EGP NOVA Directory ServicesENDSSoftware (classic)NOVA-specific pilot runbook + opsbrowse/ENDS

Routing for this DD: engineering + SDAI rewrite stories → EDSR; per-market launch checklists → EDSML; ExCom+ weekly rollup → EGPDS; NOVA-only ops → ENDS.

Confluence companion: SWAT space EGPSWAT (per Marc-locked 2026-05-16 routing canon; this DD is SWAT-scope, not CS).

5. Domain and Portal

Recommended primary public portal: directory.enroute.global.

Per-market pattern: directory.{city}.{state-or-region}.{country}.enroute.global with 301 alias from legacy enroutegrowthplatform.io path.

Continent-tier homes:

6. Runbook

Pre-flight gate (Day 0)

  1. Marc ratifies this plan.
  2. PanCom confirms naming canon compliance.
  3. Vesta files the three Sprint-1 Jira stories (Section 10).

Sprint 1 (Days 1 to 5) — SDAI Rewrite Foundation

  1. Cloudflare Pages project sdai-app linked to GitHub repo egp-sdai-app.
  2. Workers backend sdai-api with D1 binding for market config registry.
  3. Port EDSR-197 customization template into JSON-schema, version v0.1.
  4. R2 bucket egp-sdai-artifacts for screenshots, sitemaps, audit reports.
  5. Stripe test-mode webhook lands at sdai-api/webhooks/stripe-checkout-complete and provisions new market-tenant row in D1.

Sprint 2 (Days 6 to 10) — First Market End-to-End

  1. Render DC market site (EDSR-101) from SDAI config v0.1 to directory.dc.us.enroute.global.
  2. Schema.org LocalBusiness + ItemList JSON-LD baked into every page.
  3. ORCA BrowserAct feeds first 200 DC listings into LZ_LP Drive bucket; promoted to MDM_LP after Vesta validates schema.
  4. Search Console + GA4 + Plausible verified.
  5. JSM portal at support.directory.enroute.global linked to EDSML.

Sprint 3 (Days 11 to 15) — Wave-1 + Hardening

  1. Render Chicago (EDSR-102) and Calgary (EDSR-103) from same template.
  2. Xray MVP suite (EDSR-198) runs against all three markets.
  3. Stripe live-mode flip on Get-Listed (basic + featured + premium per EDSR-167).
  4. Trust Center at directory.enroute.global/trust.
  5. Cost-tagging (EDSR-201) wired to PowerBI FinOps dashboard.

Sprint 4 (Days 16 to 18) — Launch + Marketing

  1. PR + social cadence (EDSR-175) fires for DC.
  2. CS SOPs for inbound listing requests live; quotas seeded.
  3. Marc demo + ExCom+ go-live signoff.
  4. Wave-2 markets unblocked.

7. SWOT

StrengthsWeaknesses
  • Jira spine already exists
  • Cloudflare, Workers, R2, D1 all in production
  • ORCA listing pipeline operational
  • 4-continent naming Marc-locked
  • Prior SDAI codebase not yet inventoried
  • No Market Site in PROD; zero baseline
  • Stripe SKUs not created
  • Phone routing (EDSR-158) undecided
OpportunitiesThreats
  • 4-continent footprint = defensible moat
  • ORCA + GetLensly = paid upsell day one
  • Schema-rich = canonical AI-citation source (GEO)
  • ~1-day marginal cost per new market once template locked
  • Google manual action if listings are thin
  • Stripe Connect compliance at scale
  • Domain-reputation risk on enroute.global
  • Cloudflare vendor lock-in (mitigated by portable JSON-schema)

8. Five Solution Paths

PathStackProsConsDays
ANext.js + VercelBest DX; SSG + ISR; large hiring poolNew vendor; egress costs at scale; second observability stack22 to 28
B (RECOMMENDED)Cloudflare Pages + Workers + D1Matches existing infra; edge-global; single observability; 4-continent edge matchD1 maturity for huge datasets (mitigated); Next adapters needed18
CGHL Custom PagesZero new infra; CS trainedWhitelabel canon conflict; cannot deliver schema-rich GEO surface; rate limits choke at scale14 (low ceiling)
DHeadless CMS (Payload/Strapi) + CF PagesBest editor UX; clean API; future-proofAdds CMS db/host/auth/upgrade ops; template lives in two places26 to 30
EHybrid (CMS + Workers + Stripe)Best separation of concernsLargest surface area; two SOTs; only worth it at 50+ markets32 to 38
Recommendation: Path B. Path D becomes attractive at the 50-plus-markets milestone. Until then, Path B ships fastest, costs least, keeps Cloudflare single-stack.

9. Top Three Risks

  1. Listing-content thinness (Search Console manual action). Mitigation: Vesta similarity-score lint before publish; min 350 unique words per listing; no cross-market duplicate paragraphs.
  2. Stripe Get-Listed misroutes funds at multi-market scale. Mitigation: per-market Stripe Connect sub-account; Marc-locked dual-confirmation on Sprint 3 live-flip; daily reconciliation.
  3. SDAI template drift erodes the "1-day per market" promise. Mitigation: strict JSON-schema; CI lint refuses publish on invalid config; quarterly template-version migration tooling.

10. Immediate-Next-Step Jira Stories (Sprint 1)

To be filed by Vesta against EDSR within 24 hours of Marc ratification:

  1. EDSR-NEW1 (Story, parent EDSR-180): "SDAI rewrite — Cloudflare Pages + Workers + D1 scaffold." AC: repo created, Pages deployed, Workers reachable at api.directory.enroute.global, D1 binding MARKETS live.
  2. EDSR-NEW2 (Story, parent EDSR-197): "SDAI customization template v0.1 — JSON-schema lock." AC: schema published, validation CLI passes for DC/Chicago/Calgary fixtures; PanCom signs off on naming canon.
  3. EDSR-NEW3 (Story, parent EDSR-181): "Xray MVP test pack — content, CTAs, schema, analytics, sitemap." AC: 5 test plans imported, smoke-pass on fixture site, runbook published to SWAT Confluence.

Plus one launch task in EDSML:

  1. EDSML-NEW1 (Task, parent EDSML-1): "Wave-1 launch checklist — DC, Chicago, Calgary." AC: per-market checklist mirroring EDSR-101/102/103 ACs; CS/Ops/FinOps signoff slots; Marc final-approve slot.

Appendix A — Canon Compliance Checklist

Appendix B — Discovery Gaps For Follow-On Subagent

A follow-on subagent with Bash permission must:
  1. Grep tools/ for sdai, SDAI, directory, egp_ds to locate prior implementation code.
  2. Grep workflows/ for SDAI workflow markdown.
  3. Inventory 00148-EGP-CDAIO-Knowledge-Access/strategy/ for prior DDs on this topic.
  4. Report findings as Appendix-C addendum.