Skip to main content

DP Launch Checklist

This checklist captures the current hardening guidance for large public DP campaigns.

1. Analytics pipeline

  • Public DP pages should write funnel events through the DP campaign layer.
  • Avoid duplicate analytics writes into legacy tables.
  • Avoid hot-row metadata increments on every viewer event.

2. Export flow

  • User downloads should start immediately.
  • Background sync work should run after export has been triggered.
  • Retries should use short backoff for transient provider failures.

3. Live stats load control

  • Do not subscribe every public viewer to reactive stats.
  • Prefer cached route-level stats responses.
  • Keep polling intervals conservative.

4. Rendering and metadata pressure

  • Avoid forcing dynamic rendering globally when targeted caching will do.
  • Cache hot SEO or settings queries where possible.
  • Revalidate public metadata periodically instead of recomputing on every request.

5. AI degradation handling

  • Allow temporary degraded behavior when moderation or analysis providers are slow or unavailable.
  • Prefer warning-based fallbacks over blocking all user progress during provider incidents.

6. Static asset caching

  • Use long TTL immutable caching for campaign assets.
  • Change asset filenames when content changes.

7. Infrastructure scaling

Before a major launch:

  • run at least two app replicas
  • enable autoscaling on Railway
  • confirm database connection headroom
  • validate CDN cache hit rate on hot assets

8. Load test path

Use the included script:

NEXT_PUBLIC_CONVEX_URL=https://<convex-deployment>.convex.cloud \
DP_CAMPAIGN_SHORT_ID=<campaign-short-id> \
pnpm dp:loadtest:funnel --visitors 10000 --concurrency 200

Track:

  • mutation conflict and retry rate
  • DP tracking latency
  • 5xx rate
  • database connection saturation