All client SEO dataSites, providers, approvals, and reports are workspace scoped.
Auth requiredmicro_seo:paid pending
Support checklist
Live backend disconnectedConfigure MICRO_SEO_BACKEND_URL

Set MICRO_SEO_BACKEND_URL to enable live session, billing, provider, site, and job state branches.

Connected Sites31 headless WooCommerce, 2 local sites
Plugin Healthy1Micro SEO Connector online
GitHub Linked1Astro repo ready for PR mode
Last ScanTodayTechnical and content scan completed
Auth sessionAuthenticated workspace

Backend-core session context is required before site, opportunity, approval, or report data is shown.

Verify /api/seo/v1/onboarding
Site connectionSetup required

AudioVideoNation has CMS data online, but GitHub execution mode still needs a connected repository grant.

Connect GitHub or continue plugin-only
Paid entitlementRevenue gate active

Recommendation generation, report exports, and backlink previews require micro_seo:paid entitlement.

Keep upgrade CTA visible for free users

Production UI states

Readiness states to preserve when live APIs are connected

Design contract

These shared states document the user-facing contract for loading, empty, error, auth, provider, plan, sandbox, verification, and rollback paths before static scaffold screens are wired to live data.

Data lifecycle states

Every route should show users whether data is loading, absent, unavailable, or blocked by access.

loadingLoading

Skeleton cards and tables while provider, workspace, or report data is syncing.

All dashboard and module routes
emptyEmpty

First-run workspace guidance when no sites, providers, opportunities, approvals, backlinks, or reports exist.

Sites, integrations, opportunities, approvals, BacklinkBase, AI visibility, reports
errorError + retry

Recoverable provider/API failures with retry copy and support-safe diagnostics.

All provider-backed routes
unauthorizedUnauthorized

Backend-core session, workspace membership, and role denial states before showing SEO data.

All workspace-scoped routes

Commercial and provider states

Provider health, plan gates, sandbox boundaries, and entitlement limits must be visible before users can act.

disconnected_providerDisconnected provider

Google, WordPress, GitHub, Vercel, DataForSEO, and BacklinkBase disconnect/expired/rate-limited states.

Integrations plus dependent module routes
plan_limitPlan limit

Starter/Pro/Agency gates for sites, reports, provider syncs, users, credits, and automation rules.

Sites, reports, BacklinkBase, approvals, integrations
sandboxSandbox

BacklinkBase and destructive writes must identify sandbox versus production execution before approval.

BacklinkBase, approval queue, technical execution

Execution safety states

Approval, verification, and rollback states should stay visible through the full SEO change lifecycle.

verification_failedVerification failed

Applied changes that did not verify on preview/live HTML need retry and rollback affordances.

Approval queue, technical SEO, schema, WooCommerce SEO, reports
rollback_availableRollback available

WordPress snapshots, GitHub PR reversions, and backlink audit trails must stay tied to an approved action.

Approval queue, WordPress plugin actions, reports

Sites queue

Current work

PriorityEntitySignalExecutorImpact
ConnectedAudioVideoNationWooCommerce + AstroHybrid OperatorProduct SEO and rendered HTML verification
DraftDiamondtecWordPress plugin pendingWordPress PluginSafe CMS writes after auth setup
WatchMicro MarketingGSC connected, GA4 pendingGoogle DataComplete performance attribution

Connection model

One site, many executors

Each site stores CMS, frontend, repo, deployment, and provider status so recommendations can route safely.

Headless support

Verify rendered output

Headless WordPress and Astro sites are checked from the public frontend HTML, not only from CMS fields.