Digital
Owned and paid digital surfaces — the website, the app, search, and everything bought programmatically against them.
Back to the workflows index.
What this vertical means here
Digital OS is the most developed spoke on the roadmap — page 3 is a whole
whiteboard devoted to it — and the most developed in the product.
Its banner states the thesis for the entire programme:
NO AGENCYBuilt with Co-Pilot – LLM
Everything in this vertical is scoped as work an agency currently does, to be replaced by workflows.
Workflows
| Workflow | Status | Where |
|---|---|---|
| News → Blog E2E — queue → auto-generate → review → CMS | ✅ Live | Blogs |
| Discovery — source crawl + search-first URL discovery | ✅ Live | Discovery, Sources |
| Feed enrichment — summary, category, geo, keywords, scores | ✅ Live | Background worker |
| SEO keyword inventory | ✅ Live | Keywords |
| SEO gap analysis → blog topics | ✅ Live | Keywords → gaps |
| Compliance review + CMS gate | ✅ Live | Blog studio, Compliance Review |
| CMS delivery | ✅ Live | Per-tenant, encrypted credentials |
| Organic SEO at geographic scale | 🟡 Partial | Geo tagging exists; the Nat→State→City→Micromarket workflow does not |
| Performance media buying — Google, Meta, Affiliate, OEM, SST | ⬜ Planned | Page 3 |
| CRO / full-funnel management | ⬜ Planned | Page 3 |
| Hyperlocal single interface | ⬜ Planned | Page 3 |
| Digital partnerships — discovery, outreach | ⬜ Planned | Page 3 |
| Personalised experience | ⬜ Planned | Pages 1, 2, 3 |
| Deep analytics / call analytics | ⬜ Planned | Page 3 |
What's live, in detail
News → Blog, end to end
The most complete workflow in the product, and the only one that reaches an external system.
queue a news item
↓ autoProcessBlogQueueItems — background, unattended
generate draft ← brand master prompt · SEO keywords · competitor brief · compliance rules
↓
quality repair ← self-graded: structure, length, keyword placement
↓
SEO bolding ← first-use <strong> on assigned keywords
↓
ZeroGPT detect → up to 2 humanization passes (fails open)
↓
blocked-phrase scan → content_warnings
↓
state: "ready" ← STOPS HERE
↓
[human] compliance review → acknowledge high-severity findings
↓
[human] Send to CMS
It stops at ready deliberately. Sending to the CMS is always a human
action, and a high-severity compliance finding blocks it at the server with a
409 until acknowledged.
Driven by the Creative Agent and gated by the Compliance Agent.
Discovery
Source-first crawl plus optional search-first discovery. Extraction runs a cascade — local Readability → Tavily → Crawl4AI/Apify — with the extractor chosen per tenant.
Every row records its scraperSource, so the extractor mix is queryable rather
than guessed at. An article-shape URL filter (isArticleShapedUrl) rejects
landing and hub pages before they reach the feed.
SEO
Two live surfaces: an imported keyword inventory, and gap analysis that turns uncovered keywords into blog topics. Selected keywords flow into blog generation and are bolded on first use, with unused ones reported as warnings rather than silently dropped.
Geographic tagging — the partial
The Discovery Agent already tags
every feed item with an Indian state/UT or National, and Discovery has a
statewise filter.
That is the input to page 3's Scale Growth workflow —
Discovery → Nat / State / City / Micromarket — but the workflow itself
(page structure, personalised experience per market, publish/rollout, CRO) does
not exist. The data is there; nothing consumes it at scale.
What's missing
All paid media. Page 3 names a full stack — Zocket, Pixis, DWAO as buying platforms, across Google (UAC/Search/Display), Meta (7 streams), Affiliate, OEM, SST, LinkedIn, ASP. None is integrated. There is no spend, no budget, no campaign object anywhere in the product.
CRO and funnel management. Page 3 draws CRO → Full funnel mgmt for both
customer and employee journeys, via Clevertap / Netcore / Humanoid. Unbuilt.
Hyperlocal. A "single interface" for web and app hyperlocal is specified. Unbuilt.
Personalised experience. Appears on three separate pages of the roadmap. Nothing personalises anything today — every reader of a blog gets the same blog.
The planning frame. Page 3's left column (KKH = Planning — where & what →
budgeting → execution → discovery → creation → dynamic budget → setup → rollout
→ CRO → monitoring → optimization) describes a planning loop that does not
exist as a workflow.
Dependencies
| Needs | For |
|---|---|
| Discovery Agent | Topic supply, geo tagging, scoring |
| Creative Agent | Blog drafting, refine chat |
| Compliance Agent | Source review, draft review, CMS gate |
| Per-tenant CMS integration | Delivery — credentials AES-256-GCM encrypted, admin-only to write |
| ZeroGPT | AI detection and humanization — fails open |
| Tavily / GNews / NewsAPI / Apify | Discovery and extraction |
Workflow specs in this folder
- CMS Delivery
- Discovery
- Feed Enrichment
- News to Blog (E2E)
- Performance Media
- Scale Growth (Geo SEO)
- SEO Gap Analysis
Roadmap source
Pages 1 (Digital spoke and its fan-out), 3 (the whole board),
5 (deliverable ②, Blog E2E), 6 (Blog tonality, imagery, guard rails).
See ../../roadmap_ref_extracted.md.