{"id":"bumpgrade-feature-catalog-source-data","generatedFrom":["src/lib/feature-catalog.ts","src/lib/marketing-features.ts"],"updatedAt":"2026-05-22","caveat":"Public /features is a customer-facing marketing surface. Records with status=live or status=launch-preview have available Bumpgrade routes, previews, source-data contracts, or owner-gated workflows. Billing, provider-send, payout, destructive-write, private mobile auth, app-store distribution, and direct agent-write claims still require separate production proof.","groups":["Platform","SEO and agent discovery","Roadmap","Migration","Funnels and pages","Checkout and offers","Products and access","Growth system","Optimization","Admin and operations","Developers and agents","Accounts","Operations","Payments","Mobile","Marketing surfaces"],"features":[{"id":"feature-cloudflare-foundation","title":"Launch app foundation","group":"Platform","status":"live","issue":4,"summary":"Core public routes, admin shells, screenshots, smoke coverage, and deployed paths for the first Bumpgrade launch surfaces.","audience":"Agents and the Bumpgrade owner need a stable launch base with route proof instead of local-only setup.","expectedCapabilities":["Live route for bumpgrade.com and www.bumpgrade.com.","Persistent app state and cache bindings for launch surfaces.","Responsive top navigation and shell routes.","Playwright smoke coverage for desktop and mobile route rendering."],"evidence":["Issue #4 closed by PR #23.","Deployment succeeded after DNS records were configured."],"agentContract":"Agents can treat the app shell and route map as live, but not infer business functionality beyond the shell."},{"id":"feature-compare-source-data","title":"Comparison hub and source data","group":"SEO and agent discovery","status":"live","issue":5,"summary":"Public comparison hub, nine first-wave alternative pages, sitemap entries, llms.txt links, screenshots, and `/compare/source-data` JSON.","audience":"Prospects comparing platforms and agents resolving Bumpgrade competitor claims.","expectedCapabilities":["Shopify-inspired `/compare` hub.","Alternative pages for ClickFunnels, Kit, Shopify, SamCart, Kajabi, Podia, Systeme.io, Kartra, and ThriveCart.","Official source URLs, retrieval date, confidence notes, and planned-feature caveats.","Agent-readable JSON at `/compare/source-data`."],"evidence":["Issue #5 closed by PR #25.","Live smoke checks returned HTTP 200 for comparison routes and screenshots."],"agentContract":"Agents may cite comparison source IDs and URLs, but must refresh sources before making pricing or volatile feature-availability claims."},{"id":"feature-public-feature-catalog","title":"Public feature catalog and source data","group":"SEO and agent discovery","status":"live","issue":6,"summary":"Public `/features` surface with live and launch-preview badges, stable feature IDs, GitHub issue links, screenshots, and `/features/source-data` JSON.","audience":"Prospects and agents who need to distinguish deployed Bumpgrade surfaces from roadmap targets.","expectedCapabilities":["Live and launch-preview feature badges.","Feature records with stable IDs, groups, issues, evidence, and agent-contract notes.","Agent-readable JSON at `/features/source-data`.","Sitemap and llms.txt discovery."],"evidence":["Issue #6 closed by PR #26.","Live smoke checks returned HTTP 200 for `/features`, `/features/source-data`, and screenshots."],"agentContract":"Agents may treat live feature records as deployed product surfaces. Launch-preview records have shipped routes, previews, source-data, or owner-gated workflows, but their agent contracts still name any billing, sending, payout, destructive, mobile distribution, or direct-agent-write limits."},{"id":"feature-public-roadmap","title":"Public roadmap and source data","group":"Roadmap","status":"live","issue":7,"summary":"Public `/roadmap` surface with shipped, blocked, next, and planned lanes tied to feature IDs, GitHub issues, evidence, and `/roadmap/source-data` JSON.","audience":"Prospects, the Bumpgrade owner, and agents who need public-safe project status without reading private admin notes.","expectedCapabilities":["Roadmap lanes derived from tracked feature and issue records.","Public-safe blocker notes and next milestones.","Agent-readable JSON at `/roadmap/source-data`.","Admin roadmap and owner-attention surfaces that mirror current public-safe state until owner-backed records ship."],"evidence":["Issue #7 owns this feature slice.","PR #27 carries the source, screenshots, validation, and deploy evidence for this issue."],"agentContract":"Agents may cite public roadmap status from `/roadmap/source-data`, but must not expose private admin notes or treat planned items as live functionality."},{"id":"feature-competitor-importers","title":"Competitor importers","group":"Migration","status":"launch-preview","issue":467,"summary":"Public import center, dedicated platform import paths, platform-specific source guides, redacted preflight review maps with export-file structure parsing and platform export matching, `/imports/source-data`, verified-publisher private draft creation, owner-only subscriber review, and checkout rebuild readiness for moving competitor context into Bumpgrade launch workspaces.","audience":"Prospects and agents planning a move from ClickFunnels, SamCart, Kit, Kajabi, Shopify, Podia, Systeme.io, Kartra, or ThriveCart.","expectedCapabilities":["Dedicated importer paths with a reusable platform-aware importer contract.","Platform-specific source guides that tell prospects which URLs, exports, files, and notes Bumpgrade can use.","Public preflight review maps that summarize likely draft areas before sign-in or private draft creation.","Small CSV, JSON, HTML, and text export files can be parsed for structure without saving or echoing raw rows, file names, or file text.","Platform export matches show which recognized export shape Bumpgrade can prepare before a private draft is created.","Private draft creation stores the safe importReview export analysis and platform export matches on private draft metadata so the recognized export shape survives after sign-in.","Private draft creation returns and stores structured private import records for matched offer, product, audience, checkout, funnel/page, sequence, and asset review areas.","Private import records include safe extracted field plans for owner review before any importer cleanup or editing step.","Private audience import records include safe subscriber import depth with aggregate row counts and identity, tag, consent, and sequence signals before any subscriber write exists.","Verified publishers can record subscriber import preflight decisions for private audience records without creating subscriber rows, sequence enrollments, sends, private exports, or go-live effects.","Verified publishers can create private importer subscriber records from a confirmed fresh upload or paste after preflight, without sequence enrollments, sends, private exports, or go-live effects.","Verified publishers can inspect saved private importer subscriber records from the same-owner private review page while public source-data and unauthenticated responses expose counts only.","Verified publishers can add saved importer contacts to the audience review list as imported-pending subscriber rows without consent events, sequence enrollments, sends, private exports, or go-live effects.","Verified publishers can download owner-only private subscriber CSV files from saved importer contacts after exact confirmation while public source-data, unauthenticated responses, and JSON API responses expose counts and redaction rules only.","Verified publishers can mark imported checkout-offer and product-catalog records ready for Bumpgrade checkout rebuild, needing payment-copy cleanup, or parked for later without creating checkout intents, Stripe sessions, credentials, public checkout routes, account transfer, domains, fulfillment, sends, or go-live effects.","Verified publishers can open a private record review route for their own importer-created plan after creation.","Verified publishers can mark private import records ready or needing cleanup with metadata-only review decisions.","Verified publishers can edit safe extracted field labels, review status, and prompts without storing raw extracted values or enabling buyer-facing actions.","Verified-publisher import actions that create or reuse a Free Build workspace and save a private draft funnel.","Source-match duplicate review that reuses an existing private draft when platform, workspace, normalized title, and source URL or export file name match.","Rollback controls that archive private importer plans while preserving saved work and allow the same source to be restarted as a fresh private plan.","Dedicated importer pages for first-wave competitor platforms.","Agent-readable importer metadata at `/imports/source-data`.","Input kinds, platform-specific source checklists, export-match templates, export-file analysis fields, saved private plan parts, safety gates, unsupported fields, and source evidence IDs.","Clear go-live boundary: imported material stays private until publishing, checkout, sends, domains, and fulfillment are approved."],"evidence":["Shipped under issue #467.","`/imports`, dedicated importer pages, platform-specific source guides, `/imports/source-data`, public preview API routes with redacted exportFileAnalysis and platformExportMatches, private platform create routes with importReview metadata persistence, structured importRecords with safe extractedFields, subscriberImportDepth, subscriberImportPreflight actions, subscriberImportCreation actions, subscriberAudiencePromotion actions, owner-only private subscriber record inspection, owner-only private subscriber CSV export, checkoutMigrationReadiness actions, private record review, review-action, extracted-field edit, and private platform rollback routes listed in source-data define the importer contract slice."],"agentContract":"Agents may read importer platform IDs, competitor IDs, input kinds, platform-specific source checklists, export-match templates, export-file analysis fields, private importReview metadata persistence, structured private import-record contracts, safe extracted field plans, subscriber import depth metadata, subscriber import preflight action metadata, private subscriber import creation contracts, subscriber audience promotion contracts, owner-only private subscriber record inspection rules, owner-only private subscriber export metadata, checkout migration readiness metadata, private record review routes, review-action routes, extracted-field edit actions, saved private plan parts, safety gates, limitations, source IDs, routes, redacted preflight review APIs, duplicate-review statuses, verified-publisher private-draft APIs, and private rollback routes from `/imports/source-data`; agents must not claim account-to-account transfer, live payment migration, subscriber sends, customer password transfer, public publishing, or billing-impacting migration without later confirmed-write evidence."},{"id":"feature-funnel-builder","title":"Funnel and page builder","group":"Funnels and pages","status":"live","issue":14,"summary":"Multi-step funnels, opt-in pages, sales pages, templates, publishing, and page state that agents can inspect safely.","audience":"Creators, coaches, agencies, and small publishers launching offers.","expectedCapabilities":["Read-only seeded draft funnel source data and preview route from issue #79.","Owner-gated D1 draft funnel seed/create foundation from issue #91.","Owner-gated draft step title, goal, kind, and order editing from issue #93.","Owner-gated private D1 draft preview route from issue #95.","Exact-confirmed public D1 draft publishing from issue #135.","Read-only reusable funnel templates and block-template library from issue #159.","Owner-confirmed template-to-draft creation from issue #161.","Owner-confirmed checkout-offer linking on private draft steps from issue #163.","Public sandbox checkout start rendering on published linked checkout blocks from issue #165.","Webinar and resource funnel template/page-block contracts from issue #213.","Owner-confirmed private draft duplication from issue #215.","Owner-confirmed archive/unpublish lifecycle actions from issue #341.","Owner-session granular block title/body editing from issue #430.","Owner-session reusable block add/remove controls from issue #432.","Owner-created product delivery-gate links for the seeded offer/funnel path from issue #409.","Owner-confirmed resource delivery links from issue #417.","Funnel-scoped private download-token delivery from published linked resource blocks from issue #417.","Owner-confirmed webinar event/replay links from issue #417.","Owner-confirmed archived-draft purge with tombstone evidence from issue #417.","Owner-session within-step block reordering, drag/drop block placement, and cross-step block moves from issue #417.","Owner-session visual style controls and bounded canvas layout controls for existing funnel blocks from issue #417.","Owner-session agent-created resource delivery tokens for published linked resource blocks from issue #417.","Redacted resource-delivery receipt evidence after successful private download redemption from issue #417.","Funnel steps for opt-in, sales, checkout, upsell, webinar, resource, thank-you, and future nurture paths.","Reusable template and block metadata for opt-ins, sales pages, checkout handoffs, webinars, resources, preview state, and publishing controls.","Stable funnel, page, and revision IDs.","Owner-session direct agent-safe draft writes for block copy edits, visual style presets, reusable block add/remove, checkout linking/unlinking, resource-delivery linking, webinar-event linking, block movement, duplication, public publishing, and archive/unpublish."],"evidence":["Tracked by issue #14.","Issue #79 adds `/funnels/source-data` and `/funnels/indie-launch-sandbox` as the first read-only contract and preview foundation.","Issue #91 adds `/admin/funnels`, `/api/admin/funnels/drafts`, and D1 draft/audit tables for owner-gated draft creation.","Issue #93 adds owner-session step edit and reorder controls on top of D1 draft funnels.","Issue #95 adds an owner-gated preview route for the current private D1 draft sequence.","Issue #135 adds exact-confirmed publishing from D1 drafts to public `/funnels/{slug}` routes.","Issue #159 adds reusable funnel templates and block-template library records to `/funnels/source-data` and the seeded preview route.","Issue #161 lets verified owners create private D1 drafts from reusable templates after exact confirmation and idempotency.","Issue #163 lets verified owners attach the seeded sandbox checkout offer to private draft checkout blocks after exact confirmation, idempotency, and a fresh revision check.","Issue #165 lets published funnel routes render the existing sandbox checkout start panel when a checkout block carries owner-confirmed checkoutLink metadata.","Issue #213 adds webinar/resource funnel templates, page-block metadata, admin step-kind options, and D1 step-kind storage readiness.","Issue #215 lets verified owners duplicate private D1 drafts after exact confirmation, idempotency, and a fresh revision check while stripping checkout-link, resource-link, and webinar-link metadata.","Issue #341 lets verified owners archive private D1 drafts or unpublish public D1 draft routes after exact confirmation, idempotency, and a fresh revision check while preserving draft, step, block, checkout-link, resource-link, webinar-link, and audit evidence.","Issue #430 lets verified owners edit existing draft block title/body copy after idempotency and a fresh revision check while preserving block IDs, kinds, ordered step structure, checkout-link metadata, resource-link metadata, and webinar-link metadata.","Issue #432 lets verified owners add reusable block-library blocks to draft steps and remove safe unlinked blocks after idempotency and a fresh revision check while refusing checkout-linked block removal.","Issue #409 links owner-created product test checkout links to the seeded offer/funnel delivery gates without live billing or private fulfillment delivery.","Issue #417 adds owner-confirmed checkout unlinking, owner-confirmed resource delivery links to product/access catalog assets, funnel-scoped private download-token delivery from published linked resource blocks, owner-session agent-created resource delivery tokens for published linked resource blocks, redacted resource-delivery receipt evidence after successful private download redemption, owner-confirmed webinar event/replay links to public-safe external URLs, owner-confirmed archived-draft purge with tombstone evidence, owner-confirmed bulk archived-draft purge with one tombstone per draft, owner-session within-step block reordering, owner-session drag/drop block placement through existing move endpoints, owner-session cross-step block moves, owner-session visual style controls and bounded canvas layout controls for existing blocks, and owner-session direct agent-safe draft writes including visual style presets, bounded canvas layouts, reusable block add/remove, checkout linking/unlinking, resource-delivery and webinar-event linking, block movement, public publishing, duplication, archive/unpublish, archived-draft purge, and bulk archived-draft purge while tracking arbitrary uploaded private asset delivery, live fulfillment automation, full webinar integrations, unauthenticated public agent-created delivery tokens, and unauthenticated public agent publishing after the MVP closeout."],"agentContract":"Agents may read reusable template, block-template, webinar/resource template, draft duplication, granular block-edit, block add/remove, block visual-style, block canvas-layout, block-reorder, cross-step block-move, archive/unpublish lifecycle, archived-draft purge, bulk archived-draft purge, checkout-link, checkout-unlink, resource-delivery-link, public funnel resource-delivery-token, owner-session agent resource-delivery-token, resource-delivery receipt, webinar-event-link, product delivery-gate, public funnel checkout-start, and direct agent-safe draft-write capability records from `/funnels/source-data`; owner sessions can seed, create from templates, duplicate, update, reorder steps, edit existing block title/body copy, apply curated visual style presets to existing blocks, set bounded canvas layout for existing blocks, add reusable blocks, remove safe unlinked blocks, reorder existing blocks within the same step, drag/drop existing blocks by replaying the same move endpoints with fresh revisions, move existing blocks across steps, link checkout offers, unlink checkout metadata, link resource/delivery blocks to product access assets, link webinar blocks to external registration/replay URLs, preview, publish, archive, unpublish, purge already archived private draft funnel steps, and bulk purge selected archived private drafts with confirmation where required and stale-state checks; owner-session agents can call `/api/agent/funnels/draft-writes` to update private draft block copy, apply curated visual style presets, set bounded canvas layout, add reusable blocks, remove eligible unlinked blocks, link checkout metadata, unlink checkout metadata, link resource-delivery metadata, link webinar-event metadata, reorder blocks, move blocks across steps, duplicate a private draft, publish a draft, archive/unpublish a draft, purge an already archived draft, or bulk purge selected archived drafts after exact confirmation, idempotency, current draft revision, and audit correlation checks; owner-session agents can call `/api/agent/funnels/resource-delivery-tokens` to create a short-lived funnel-scoped private download token for a published linked resource block after exact confirmation, idempotency, current published revision, checkout intent, entitlement, and audit correlation checks, with idempotent replays returning redacted audit metadata instead of raw tokens; successful redemption through the existing product download route records redacted resource-delivery receipt evidence with safe funnel, block, product, asset, source, and hashed checkout/entitlement references only; duplicated drafts stay private and strip checkout-link/resource-link/webinar-link metadata, block edits preserve existing block and checkout-link/resource-link/webinar-link metadata, block visual styles store only a curated style ID, block canvas layouts store only bounded x, y, width, height, and zIndex numbers, both preserve block IDs, kinds, copy, checkout-link/resource-link/webinar-link metadata, direct agent checkout/resource-delivery/webinar-event/block-placement writes preserve existing block identity, direct agent style/layout writes preserve linked metadata and never accept arbitrary CSS or scripts, direct agent block add/remove uses the reusable block library, refuses checkout-linked removals, and keeps at least one block per step, owner-confirmed direct agent publishing creates a public route mutation without billing and can be rolled back with archive-draft, direct agent archived-draft purge and bulk archived-draft purge record tombstones before deleting only archived draft/step rows, within-step block reordering preserves block IDs, kinds, copy, checkout-link/resource-link/webinar-link metadata, and step membership, cross-step block moves preserve block IDs, kinds, copy, checkout-link/resource-link/webinar-link metadata, and audit evidence while changing step membership, checkout unlinking preserves the block while clearing metadata, block removal refuses checkout-linked blocks until they are unlinked, resource delivery links expose entitlement-safe product/asset metadata without private files or signed URLs, webinar event/replay links expose public-safe external references without provider secrets or attendee records, archived drafts preserve evidence and leave public source-data when unpublished, archived-draft purge records a tombstone before deleting draft and step rows while preserving prior audit rows and excluding product assets, R2 objects, buyer records, and billing state, published linked checkout blocks can render the sandbox checkout start surface, published resource-linked blocks can render entitlement-safe product access references and mint short-lived Bumpgrade download tokens only after checkout intent and entitlement match the linked product and file asset, and published webinar-linked blocks can render external registration/replay references. Issue #417 keeps unauthenticated public agent publishing, non-archived purge, full webinar integrations, arbitrary uploaded private asset delivery, signed URLs, unauthenticated public agent-created delivery tokens, and live fulfillment automation pending until stronger rollback and provider safety notes are designed together."},{"id":"feature-checkout-offers","title":"Checkout, order bumps, upsells, and downsells","group":"Checkout and offers","status":"launch-preview","issue":15,"summary":"Stripe-backed checkout flows with offer ladders, bumps, one-click upsells, downsells, subscriptions, and audit trails.","audience":"Sellers who care about average order value, conversion rate, and billing safety.","expectedCapabilities":["Read-only checkout offer source data and preview route from issue #81.","Confirmed sandbox checkout start with the seeded primary offer and constrained order bump from issue #99.","Optional referral-click attribution evidence on sandbox checkout intents from issue #111.","Non-billing post-purchase upsell/downsell decision evidence from issue #117.","Checkout success page CTA gated on trusted webhook state from issue #133.","Checkout pages and embeddable checkout entry points.","Order bumps, upsells, downsells, coupons, and subscription offers.","Customer portal and billing-safe state transitions.","Payment and offer change audit logs."],"evidence":["Tracked by issue #15.","Stripe architecture tracked by issue #11.","Issue #81 adds `/offers/source-data` and `/offers/indie-launch-stack` as the first read-only checkout-offer contract and preview foundation.","Issue #99 adds a confirmed sandbox checkout start panel and API support for the seeded pre-payment order bump.","Issue #111 adds public-safe referral-click attribution evidence to checkout intent creation.","Issue #117 adds a trusted post-purchase route and idempotent non-billing decision API for upsell/downsell follow-up evidence.","Issue #133 makes the checkout success page wait for the redacted post-purchase contract before showing the upsell/downsell CTA."],"agentContract":"Agents may read offer-stack and aggregate post-purchase decision evidence; billing-impacting, fulfillment, and commission-impacting writes require explicit confirmation, idempotency keys, stale-state checks, and redacted outputs."},{"id":"feature-products-access","title":"Products, downloads, courses, memberships, and subscriptions","group":"Products and access","status":"live","issue":16,"summary":"Digital products, course structures, download delivery, membership access, fulfillment state, and recurring subscriptions.","audience":"Knowledge sellers, newsletter publishers, and digital-product businesses.","expectedCapabilities":["Read-only product/access source data and preview route from issue #83.","Sandbox webhook-backed entitlement row grants from issue #101.","Owner-gated entitlement and fulfillment inspection from issue #139.","Customer-safe checkout intent entitlement lookup from issue #141.","One-use download tokens for active file entitlements from issue #143.","Seeded private R2-backed fixture delivery through Bumpgrade from issue #146.","Redemption-time current entitlement and trusted checkout state revalidation from issue #147.","Owner-confirmed private product asset upload intent records from issue #151.","Owner-visible non-destructive revocation intent readiness from issue #179.","Protected content readiness records from issue #181.","Checkout-intent-scoped protected fixture delivery from issue #185.","Subscription-backed membership entitlement state from issue #187.","Owner-confirmed non-destructive revocation intent records from issue #251.","Owner-confirmed draft product creation from issue #403.","Owner-created product test offer/access grants from issue #405.","Buyer-facing test checkout links for owner-created products from issue #407.","Owner-created product delivery-gate links from issue #409.","Seeded pay-in-full, installment, and subscription payment-plan read records from issue #16.","Stable product, offer, asset, access rule, payment-plan, and subscription plan IDs.","Downloads, protected content, courses, memberships, and bundles.","Fulfillment status connected to checkout events.","Public-safe product metadata for agent and SEO surfaces."],"evidence":["Tracked by issue #16.","Issue #83 adds `/products/source-data` and `/products/indie-launch-library` as the first read-only product/access contract and preview foundation.","Issue #101 adds idempotent entitlement grants and fulfillment task evidence after paid sandbox checkout webhooks.","Issue #139 adds `/admin/products` owner entitlement inspection and aggregate public redaction flags.","Issue #141 adds `/products/entitlements` and `/api/products/entitlements` for customer-safe checkout intent entitlement lookup.","Issue #143 adds one-use download tokens for active file entitlements without exposing private R2 keys or signed object URLs.","Issue #146 streams a seeded private R2-backed fixture through Bumpgrade without exposing private object keys or signed URLs.","Issue #147 rejects stale redemption when current entitlement or trusted checkout state is no longer eligible.","Issue #151 creates owner-confirmed private product asset upload records without exposing object keys, signed URLs, upload bodies, or private metadata.","Issue #179 adds owner-visible revocation intent readiness without destructive entitlement mutation.","Issue #181 adds protected content readiness metadata without lesson, video, transcript, member post, or progress delivery.","Issue #185 adds seeded protected fixture delivery after active-entitlement, product/template scope, and trusted checkout-state checks.","Issue #187 syncs checkout-linked membership entitlement state from trusted Stripe Billing subscription webhooks.","Issue #251 records owner-confirmed non-destructive revocation intents with exact confirmation, idempotency, stale-state checks, and public redaction.","Issue #403 records owner-confirmed draft product creation without Stripe product/price creation or fulfillment mutation.","Issue #405 records owner-created product test offer/funnel links, synthetic paid checkout intents, entitlement rows, fulfillment task evidence, and audit events without Stripe Checkout Sessions, live charges, or public buyer exposure.","Issue #407 records owner-created product test checkout links and public test checkout completion with synthetic paid checkout/access evidence, link-revision checks, and no Stripe Checkout Sessions or live charges.","Issue #409 records owner-created product delivery-gate links for the seeded offer/funnel path with product and checkout-link stale-state checks.","Issue #16 exposes seeded product payment-plan read semantics without live amounts, Stripe Price creation, Checkout Sessions, or customer data exposure.","Issue #16 closeout confirms the product/access parent met its tracked acceptance criteria; live self-serve billing remains tracked separately in issue #219."],"agentContract":"Agents may read public product metadata, aggregate entitlement counts, aggregate owner-created product/test checkout/delivery-gate/test grant counts, customer-safe checkout intent entitlement lookup, short-lived private R2-backed download-token boundaries with redemption revalidation, owner-confirmed private asset upload intent boundaries, owner-confirmed non-destructive revocation intent boundaries, protected content readiness, checkout-scoped protected fixture delivery boundaries, subscription-backed membership access state, and entitlement grant boundaries; private customer identity, storage object keys, upload bodies, arbitrary protected bodies, private revocation notes, destructive revocation, customer delivery of arbitrary uploads, live offer/funnel publishing, Customer Portal actions, and billing data must stay behind authenticated contracts."},{"id":"feature-email-automation-crm","title":"Email marketing, list growth, automations, and CRM-lite","group":"Growth system","status":"live","issue":17,"summary":"Consent-backed opt-ins, subscriber inspection, unsubscribe/suppression, CRM-lite notes, dry-run campaign and sequence readiness, and agent-readable email boundaries.","audience":"Creators and publishers turning audience attention into repeatable launch workflows.","expectedCapabilities":["Audience automation source data and preview route from issue #85.","Signup forms, lead magnets, subscriber tags, segments, and consent-backed opt-in capture from issue #103.","Owner-gated subscriber, consent, tag, and draft enrollment inspection from issue #137.","Public-safe unsubscribe and suppression evidence from issue #167.","Unsubscribe-paused draft sequence enrollment aggregates from issue #343.","Aggregate sequence delivery readiness from issue #351.","Owner-confirmed dry-run sequence schedule intents from issue #354.","Owner-confirmed dry-run sequence delivery batches from issue #358.","Owner-confirmed dry-run sequence queue-message evidence from issue #360.","Owner-confirmed dry-run sequence dispatch preflight evidence from issue #362.","Owner-confirmed dry-run sequence dispatch attempt receipts from issue #364.","Owner-reviewed sequence Queue producer readiness gates from issue #366.","Owner-reviewed sequence Queue consumer readiness gates from issue #368.","Owner-reviewed sequence provider-call readiness gates from issue #370.","Owner-reviewed sequence delivery-attempt readiness gates from issue #372.","Owner-reviewed sequence delivery-result readiness gates from issue #374.","Owner-reviewed sequence delivery-status webhook readiness gates from issue #376.","Owner-reviewed sequence provider-polling readiness gates from issue #378.","Owner-reviewed sequence receipt-payload readiness gates from issue #380.","Owner-gated CRM timeline notes from issue #169.","Suppression-aware broadcast draft readiness from issue #171.","Owner-confirmed dry-run broadcast schedule intents from issue #173.","Delivery queue readiness contracts from issue #177.","Broadcast preview and unsubscribe-footer safety records from issue #175.","Owner-confirmed delivery-batch dry runs from issue #183.","Owner-confirmed dry-run queue-message evidence from issue #189.","Owner-confirmed dispatch preflight dry runs from issue #191.","Owner-confirmed dispatch attempt receipts from issue #197.","Sender-domain readiness gates from issue #199.","Provider-event readiness gates from issue #201.","Provider rate-limit readiness gates from issue #203.","Provider response readiness gates from issue #205.","Send-payload readiness gates from issue #207.","Queue producer readiness gates from issue #209.","Queue consumer readiness gates from issue #211.","Aggregate private-export readiness from issue #347.","Owner-confirmed owner-only sequence and broadcast test sends from issue #420.","Issue #420 keeps subscriber delivery execution, provider calls, Queue execution, delivery results, and agent-safe write parity in one pending post-MVP bucket.","Campaigns, sequences, broadcasts, and behavior-triggered automations.","CRM-lite contact timelines and opportunity states.","Consent, unsubscribe, and deliverability boundaries."],"evidence":["Tracked by issue #17.","Issue #85 adds `/audience/source-data` and `/audience/indie-launch-waitlist` as the first read-only audience automation contract and preview foundation.","Issue #103 adds a public waitlist opt-in write path that stores normalized subscriber, consent, tag, and draft sequence enrollment evidence without sending email.","Issue #137 adds `/admin/audience` owner inspection and aggregate public subscriber inspection redaction flags.","Issue #167 adds a public-safe unsubscribe write path that records suppression evidence and marks known subscribers unsubscribed without revealing list membership.","Issue #343 pauses known draft sequence enrollments after unsubscribe while keeping public responses membership-safe and aggregate-only.","Issue #351 adds aggregate sequence delivery readiness without scheduling steps, creating recipient payloads, personalized bodies, unsubscribe URLs, queue payloads, provider sends, or provider message IDs.","Issue #354 adds owner-confirmed dry-run sequence schedule intents without delivery queue rows, recipient payloads, personalized bodies, unsubscribe URLs, provider sends, or provider message IDs.","Issue #358 adds owner-confirmed dry-run sequence delivery batches without delivery queue rows, recipient payloads, personalized bodies, unsubscribe URLs, provider sends, or provider message IDs.","Issue #360 adds owner-confirmed dry-run sequence queue-message evidence without Cloudflare Queue messages, queue payload bodies, delivery queue rows, recipient payloads, personalized bodies, unsubscribe URLs, provider sends, provider responses, or provider message IDs.","Issue #362 adds owner-confirmed dry-run sequence dispatch preflight evidence without Cloudflare Queue dispatch, queue payload bodies, delivery queue rows, recipient payloads, personalized bodies, unsubscribe URLs, provider sends, provider responses, or provider message IDs.","Issue #364 adds owner-confirmed dry-run sequence dispatch attempt receipts without Cloudflare Queue dispatch, queue payload bodies, delivery queue rows, recipient payloads, personalized bodies, unsubscribe URLs, provider sends, provider responses, or provider message IDs.","Issue #366 adds owner-reviewed sequence Queue producer readiness gates without enabling Cloudflare Queue producers, Queue messages, queue payload bodies, delivery queue rows, recipient payloads, personalized bodies, unsubscribe URLs, provider sends, provider responses, or provider message IDs.","Issue #368 adds owner-reviewed sequence Queue consumer readiness gates without enabling Cloudflare Queue consumers, Queue message consumption, acks, retry/dead-letter rows, queue payload body reads, queue payload body creation, recipient payloads, personalized bodies, unsubscribe URLs, provider sends, provider responses, or provider message IDs.","Issue #370 adds owner-reviewed sequence provider-call readiness gates without making provider calls, sending messages, creating provider responses or message IDs, creating delivery attempts or results, processing webhooks, creating receipts, consuming or acking Queue messages, reading queue payload bodies, creating recipient payloads, personalized bodies, or unsubscribe URLs.","Issue #372 adds owner-reviewed sequence delivery-attempt readiness gates without making provider calls, sending messages, creating provider responses or message IDs, creating delivery attempts or results, processing webhooks, creating receipts, consuming or acking Queue messages, reading queue payload bodies, creating recipient payloads, personalized bodies, or unsubscribe URLs.","Issue #374 adds owner-reviewed sequence delivery-result readiness gates without making provider calls, sending messages, creating provider responses or message IDs, creating delivery attempts or results, processing webhooks, creating receipts, consuming or acking Queue messages, reading queue payload bodies, creating recipient payloads, personalized bodies, or unsubscribe URLs.","Issue #376 adds owner-reviewed sequence delivery-status webhook readiness gates without making provider calls, sending messages, creating provider responses or message IDs, creating delivery attempts or results, processing status webhooks, reading webhook payloads, polling providers, creating receipt payloads or receipts, consuming or acking Queue messages, reading queue payload bodies, creating recipient payloads, personalized bodies, or unsubscribe URLs.","Issue #378 adds owner-reviewed sequence provider-polling readiness gates without making provider calls, sending messages, creating provider responses or message IDs, creating delivery attempts or results, processing status webhooks, reading webhook or polling payloads, polling providers, creating polling results, receipt payloads, or receipts, consuming or acking Queue messages, reading queue payload bodies, creating recipient payloads, personalized bodies, or unsubscribe URLs.","Issue #380 adds owner-reviewed sequence receipt-payload readiness gates without making provider calls, sending messages, creating provider responses or message IDs, creating delivery attempts or results, processing status webhooks, reading webhook or polling payloads, polling providers, creating polling results, receipt payloads, or delivery receipts, consuming or acking Queue messages, reading queue payload bodies, creating recipient payloads, personalized bodies, or unsubscribe URLs.","Issue #169 adds owner-only audience CRM timeline notes with aggregate public redaction.","Issue #171 adds broadcast readiness counts that exclude unsubscribed, suppressed, and missing-consent rows without creating send queues.","Issue #173 adds owner-confirmed dry-run broadcast schedule intents without recipient payloads, send queues, or provider message IDs.","Issue #175 adds preview and unsubscribe-footer safety records without personalized bodies, send queues, or provider message IDs.","Issue #177 adds delivery queue readiness metadata without queue producers, recipient payloads, or provider sends.","Issue #183 adds delivery-batch dry runs without recipient payloads, queue messages, or provider sends.","Issue #189 adds delivery queue message dry runs without Cloudflare Queue dispatch, recipient payloads, provider sends, or provider message IDs.","Issue #191 adds dispatch preflight dry runs without Cloudflare Queue dispatch, recipient payloads, provider sends, or provider message IDs.","Issue #197 adds dispatch attempt receipts without Cloudflare Queue producers, queue payload bodies, recipient payloads, provider sends, provider responses, or provider message IDs.","Issue #199 adds sender-domain readiness gates without private DNS credentials, Cloudflare Queue producers, recipient payloads, provider sends, provider responses, or provider message IDs.","Issue #201 adds provider-event readiness gates without provider secrets, raw provider payloads, recipient payloads, provider sends, provider responses, or provider message IDs.","Issue #203 adds provider rate-limit readiness gates without provider secrets, provider limit secrets, raw provider payloads, recipient payloads, provider sends, provider responses, or provider message IDs.","Issue #205 adds provider response readiness gates without provider secrets, raw response bodies, recipient payloads, provider sends, provider responses, or provider message IDs.","Issue #207 adds send-payload readiness gates without raw recipient identity, recipient payloads, personalized bodies, raw payload bodies, provider sends, provider responses, or provider message IDs.","Issue #209 adds Queue producer readiness gates without enabling Cloudflare Queue producers, Queue messages, queue payload bodies, recipient payloads, provider sends, provider responses, or provider message IDs.","Issue #211 adds Queue consumer readiness gates without enabling Cloudflare Queue consumers, Queue message consumption, acks, retry/dead-letter rows, queue payload body reads, recipient payloads, provider sends, provider responses, or provider message IDs.","Issue #347 adds aggregate audience export readiness without creating export files, exposing raw emails, subscriber IDs, or export URLs.","Issue #420 adds owner-only sequence and broadcast test-send paths with exact confirmation, idempotency, audit correlation, stale-state checks, recipient/actor hash storage, and source-data redaction before subscriber delivery exists.","Issue #420 tracks subscriber email delivery, automation execution, and direct agent-safe write parity as the post-MVP execution bucket.","Internal project-notification email tracked separately by issue #10."],"agentContract":"Agents may read the public audience contract, aggregate subscriber, suppression, unsubscribe-paused sequence, sequence delivery-readiness, sequence schedule-intent, sequence delivery-batch, sequence queue-message, sequence dispatch-preflight, sequence dispatch-attempt, sequence Queue producer readiness, sequence Queue consumer readiness, sequence provider-call readiness, sequence delivery-attempt readiness, sequence delivery-result readiness, sequence delivery-status webhook readiness, sequence provider-polling readiness, sequence receipt-payload readiness, owner-only sequence test-send counts, timeline, export-readiness, broadcast readiness, dry-run broadcast schedule intent, preview safety, queue readiness, delivery-batch, queue-message, dispatch-preflight, dispatch-attempt, sender-domain readiness, provider-event readiness, provider rate-limit readiness, provider response readiness, send-payload readiness, Queue producer readiness, Queue consumer readiness, provider-call readiness, delivery-attempt readiness, delivery-result readiness, delivery-status webhook readiness, provider-polling readiness, receipt-payload readiness, and owner-only broadcast test-send counts, opt-in write boundary, unsubscribe/suppression write boundary, owner-note contract metadata, owner sequence/broadcast schedule-intent metadata, owner sequence delivery-batch metadata, owner sequence queue-message metadata, owner sequence dispatch-preflight metadata, owner sequence dispatch-attempt receipt metadata, owner sequence Queue producer readiness metadata, owner sequence Queue consumer readiness metadata, owner sequence provider-call readiness metadata, owner sequence delivery-attempt readiness metadata, owner sequence delivery-result readiness metadata, owner sequence delivery-status webhook readiness metadata, owner sequence provider-polling readiness metadata, owner sequence receipt-payload readiness metadata, owner-only sequence test-send metadata, owner delivery-batch metadata, owner queue-message metadata, owner dispatch-preflight metadata, owner dispatch-attempt receipt metadata, and owner-only broadcast test-send metadata; issue #420 owns direct public agent subscriber writes, imports, real sequence scheduling, subscriber sends, private exports, export file creation, CRM automation, private DNS/provider setup, provider webhook processing, webhook payload reads, provider polling, provider polling payload reads, polling result capture, receipt payload capture, delivery receipt capture, Cloudflare Queue dispatch, Queue producer execution, Queue consumer execution, Queue message consumption or acknowledgements, queue payload bodies, retry/dead-letter rows, provider calls, delivery attempts, delivery results, webhooks, receipts, recipient payloads, personalized bodies, body templates, unsubscribe URLs, provider responses, and provider delivery behind future authenticated confirmed-write APIs with confirmation, audience scope, suppression checks, unsubscribe-safe checks, sender-domain safety, provider-event safety, provider response safety, send-payload safety, Queue producer safety, Queue consumer safety, provider-call safety, delivery-attempt safety, delivery-result safety, delivery-status webhook safety, provider-polling safety, receipt-payload safety, queue safety, and provider limits."},{"id":"feature-analytics-testing","title":"Analytics, A/B testing, and conversion tracking","group":"Optimization","status":"live","issue":18,"summary":"Privacy-safe analytics events, deterministic experiment assignments, funnel conversion reporting, fixed-window attribution, owner decision and winner rollout evidence, aggregate exports, and notification readiness proof.","audience":"Operators optimizing launch funnels, checkout offers, and audience acquisition.","expectedCapabilities":["Analytics and experiment source data and preview route from issue #87.","Privacy-safe event capture for seeded page views, opt-ins, checkout starts, purchases, bumps, upsells, refunds, and cancellations from issue #105.","Deterministic seeded experiment assignment for page and offer variants from issue #107.","Aggregate funnel conversion reporting from captured test events from issue #119.","Browser-side seeded funnel page-view beacons with server-side bot/preview suppression from issue #121.","Aggregate variant evidence attached to captured funnel page views from issue #123.","Normalized UTM/source attribution attached to funnel page-view events from issue #125.","Dashboard-visible aggregate source attribution rows from issue #127.","Fixed all-time, 24-hour, 7-day, and 30-day aggregate source and conversion windows from issue #129.","Owner-confirmed experiment decision evidence with aggregate counts and sample-size caveats from issue #261.","Aggregate report export metadata and fixture cohort comparison definitions from issue #263.","Owner-reviewed cohort comparison evidence with sample-size caveats from issue #265.","Owner-reviewed alert threshold and anomaly-review evidence from issue #267.","Owner-reviewed notification delivery readiness evidence from issue #269.","Owner-confirmed notification inbox records from issue #271.","Owner-confirmed notification dispatch preflights from issue #284.","Owner-reviewed notification provider/domain readiness records from issue #286.","Owner-reviewed notification content/consent readiness records from issue #288.","Agent-readable metric summaries with caveats for low sample sizes.","Owner-reviewed notification queue-consumer readiness records from issue #294.","Owner-reviewed notification provider-call readiness records from issue #297.","Owner-reviewed notification delivery-attempt readiness records from issue #299.","Owner-reviewed notification delivery-result readiness records from issue #301.","Owner-reviewed notification delivery-status-webhook readiness records from issue #303.","Owner-reviewed notification provider-polling readiness records from issue #305.","Owner-reviewed notification receipt-payload readiness records from issue #307.","Owner-reviewed notification delivery-receipt readiness records from issue #309.","Owner-reviewed notification provider-status reconciliation readiness records from issue #311.","Public-safe source/campaign routing rules plus seeded sandbox funnel copy routing with a baseline holdout from issue #422.","Owner-confirmed winner rollout and rollback routing for unmatched experiment traffic from issue #422.","Issue #422 groups the remaining custom analytics schemas beyond the current seeded boundary, notification execution, and direct agent-safe write parity as one post-MVP execution bucket."],"evidence":["Tracked by issue #18.","Issue #87 adds `/analytics/source-data` and `/analytics/indie-launch-dashboard` as the first read-only analytics and experiment contract.","Issue #105 adds seeded event capture with idempotency, hashed request evidence, and aggregate-only source-data reporting.","Issue #107 adds seeded experiment assignment with idempotency, hashed visitor evidence, and aggregate-only assignment reporting.","Issue #119 adds aggregate funnel conversion report rows from captured test events without exposing raw analytics rows.","Issue #121 adds a session-idempotent funnel page-view beacon with bot and preview suppression.","Issue #123 attaches deterministic seeded assignment evidence to funnel page-view events and exposes aggregate variant counts.","Issue #125 attaches normalized UTM/source attribution to funnel page-view events and exposes aggregate source counts.","Issue #127 renders aggregate source attribution rows in the analytics dashboard preview.","Issue #129 adds fixed time-window controls and public-safe source-data window metadata for aggregate source and conversion summaries.","Issue #261 adds owner-confirmed experiment decision evidence without traffic routing, automated winners, raw event rows, or raw assignment rows.","Issue #263 adds public-safe aggregate report export metadata without raw analytics downloads.","Issue #265 adds owner-reviewed cohort comparison evidence without automated winners, raw analytics exports, or revenue claims.","Issue #267 adds owner-reviewed alert threshold and anomaly-review evidence without automated alerts, traffic routing, or revenue claims.","Issue #269 adds owner-reviewed notification delivery readiness evidence without alert sends, inbox writes, traffic routing, or revenue claims.","Issue #271 adds owner-confirmed notification inbox records without owner email sends, queue dispatch, customer alerts, recipients, email bodies, traffic routing, or revenue claims.","Issue #284 adds owner-confirmed notification dispatch preflights without owner email sends, provider calls, queue dispatch, customer alerts, recipients, email bodies, provider message IDs, queue payloads, traffic routing, or revenue claims.","Issue #286 adds owner-reviewed provider/domain readiness records without provider configuration, provider secrets, sender credentials, private DNS credentials, provider sends, queue dispatch, customer alerts, recipients, email bodies, provider message IDs, queue payloads, traffic routing, or revenue claims.","Issue #288 adds owner-reviewed content/consent readiness records without body templates, unsubscribe URLs, owner email sends, provider sends, queue dispatch, customer alerts, recipients, email bodies, provider message IDs, queue payloads, traffic routing, or revenue claims.","Issue #290 adds owner-reviewed send-payload readiness records without creating recipient payloads, personalized bodies, raw payload bodies, queue messages, provider responses, owner email sends, provider sends, queue dispatch, customer alerts, recipients, email bodies, provider message IDs, queue payloads, traffic routing, or revenue claims.","Issue #292 adds owner-reviewed queue-producer readiness records without enabling Queue producers, creating queue messages or queue payload bodies, dispatching queues, calling providers, creating provider responses, sending owner email, exposing recipients, or making revenue claims.","Issue #294 adds owner-reviewed queue-consumer readiness records without enabling Queue consumers, consuming or acknowledging Queue messages, creating retry/dead-letter rows, reading queue payload bodies, calling providers, sending owner email, exposing recipients, or making revenue claims.","Issue #297 adds owner-reviewed provider-call readiness records without enabling provider sends or calls, configuring providers, storing provider secrets or sender credentials, creating provider responses, sending owner email, exposing recipients, or making revenue claims.","Issue #299 adds owner-reviewed delivery-attempt readiness records without enabling provider sends or calls, attempting delivery, configuring providers, storing provider secrets or sender credentials, creating provider responses, sending owner email, exposing recipients, or making revenue claims.","Issue #301 adds owner-reviewed delivery-result readiness records without enabling provider sends or calls, attempting delivery, creating delivery results, processing status webhooks, polling providers, configuring providers, storing provider secrets or sender credentials, creating provider responses, exposing provider message IDs, creating delivery receipts, sending owner email, exposing recipients, or making revenue claims.","Issue #303 adds owner-reviewed delivery-status-webhook readiness records without enabling provider sends or calls, attempting delivery, creating delivery results, processing delivery-status webhooks, creating delivery receipts, polling providers, configuring providers, storing provider secrets or sender credentials, creating provider responses, exposing provider message IDs, sending owner email, exposing recipients, or making revenue claims.","Issue #305 adds owner-reviewed provider-polling readiness records without enabling provider sends or calls, attempting delivery, processing delivery-status webhooks, polling providers, creating delivery receipts, configuring providers, storing provider secrets or sender credentials, creating provider responses, exposing provider message IDs, sending owner email, exposing recipients, or making revenue claims.","Issue #307 adds owner-reviewed receipt-payload readiness records without enabling provider sends or calls, attempting delivery, polling providers, processing status webhooks, creating delivery receipts, exposing receipt payloads, configuring providers, storing provider secrets or sender credentials, creating provider responses, exposing provider message IDs, sending owner email, exposing recipients, or making revenue claims.","Issue #309 adds owner-reviewed delivery-receipt readiness records without enabling provider sends or calls, attempting delivery, polling providers, processing status webhooks, creating delivery receipts, exposing receipt payloads, configuring providers, storing provider secrets or sender credentials, creating provider responses, exposing provider message IDs, sending owner email, exposing recipients, or making revenue claims.","Issue #311 adds owner-reviewed provider-status reconciliation readiness records without enabling provider sends or calls, attempting delivery, polling providers, processing status webhooks, processing delivery receipts, reconciling provider statuses, exposing receipt payloads, configuring providers, storing provider secrets or sender credentials, creating provider responses, exposing provider message IDs, sending owner email, exposing recipients, or making revenue claims.","Issue #422 routes the sandbox opt-in hero copy through public-safe source/campaign rules first, then the seeded assignment API with a baseline holdout and without cookies, and adds owner-confirmed winner rollout/rollback routing for unmatched traffic while tracking the remaining live analytics automation, custom schemas beyond the seeded boundary, notification execution, and direct agent-safe write parity after the issue #18 MVP closeout."],"agentContract":"Agents may read aggregate analytics, event capture boundaries, page-view beacon boundaries, public-safe custom routing rule metadata, seeded sandbox funnel routing and baseline holdout metadata, owner-confirmed winner rollout metadata, dashboard-visible aggregate source attribution evidence, fixed-window aggregate source and conversion summaries, aggregate variant evidence, assignment boundaries, owner-confirmed experiment decision evidence, owner-confirmed notification inbox aggregate evidence, owner-confirmed dispatch preflight aggregate evidence, owner-reviewed provider/domain readiness aggregate evidence, owner-reviewed content/consent readiness aggregate evidence, owner-reviewed send-payload readiness aggregate evidence, owner-reviewed queue-producer readiness aggregate evidence, owner-reviewed queue-consumer readiness aggregate evidence, owner-reviewed provider-call readiness aggregate evidence, owner-reviewed delivery-attempt readiness aggregate evidence, owner-reviewed delivery-result readiness aggregate evidence, owner-reviewed delivery-status-webhook readiness aggregate evidence, owner-reviewed provider-polling readiness aggregate evidence, owner-reviewed receipt-payload readiness aggregate evidence, owner-reviewed delivery-receipt readiness aggregate evidence, owner-reviewed provider-status reconciliation readiness aggregate evidence, aggregate report export metadata, owner-reviewed cohort comparison evidence, owner-reviewed alert threshold/anomaly-review evidence, owner-reviewed notification delivery readiness evidence, and funnel conversion report rows with sample-size caveats; issue #422 owns direct public agent analytics writes, custom events beyond the current seeded boundary, contact analytics, raw referrer/query reporting, raw analytics exports, automated alert sends, owner email sends, provider sends, provider calls, delivery attempts, delivery results, delivery status webhooks, provider responses, provider message IDs, delivery receipts, receipt payloads, status webhooks, provider polling, provider-status reconciliation execution, provider configuration, provider secrets, private DNS credentials, body templates, unsubscribe URLs, Queue producer execution, Queue consumer execution, queue dispatch, queue messages, queue message consumption, queue acknowledgements, retry/dead-letter rows, queue payload body reads, queue payload bodies, recipient payloads, personalized bodies, raw payload bodies, customer alerts, and revenue claims behind future confirmed-write APIs."},{"id":"feature-affiliates-referrals","title":"Affiliate and referral management","group":"Growth system","status":"live","issue":19,"summary":"Live affiliate/referral MVP with partner links, privacy-safe clicks, sandbox checkout attribution, review-only commissions, reversible owner review actions, public-safe partner reports, partner portal status pages, payout preparation, fraud review evidence, owner-confirmed fraud enforcement, and partner notification readiness/preflight/provider-readiness proof.","audience":"Publishers who grow through partners, creators, and audience referrals.","expectedCapabilities":["Affiliate/referral source data and preview route from issue #89.","Partner profiles, tracking links, and privacy-safe click capture from issue #109.","Checkout attribution evidence that links eligible referral clicks to sandbox checkout intents from issue #111.","Review-only commission ledger evidence from trusted checkout attribution from issue #113.","Owner review, hold, and reversal actions for commission evidence from issue #115.","Public-safe partner performance reports from issue #193.","Public-safe partner portal status pages from issue #424.","Read-only payout batch preparation and readiness checklists from issue #195.","Owner-confirmed payout preparation records from issue #273.","Owner-reviewed fraud review records from issue #275.","Owner-confirmed fraud enforcement records from issue #424.","Owner-reviewed partner notification readiness records from issue #277.","Owner-reviewed partner notification send preflight records from issue #279.","Owner-reviewed notification provider readiness records from issue #281.","Issue #424 tracks live payout execution, partner notifications, authenticated private partner portals, and agent-safe write parity after the issue #19 MVP closeout.","Commission and payout rules.","Attribution reports tied to offers and checkout events.","Fraud and self-referral review states."],"evidence":["Tracked by issue #19.","Issue #89 adds `/affiliates/source-data` and `/affiliates/indie-launch-partners` as the first read-only affiliate/referral contract.","Issue #109 adds seeded referral click capture with idempotency, hashed request evidence, and aggregate-only source-data reporting.","Issue #111 attaches validated referral click evidence to sandbox checkout intents without creating commissions.","Issue #113 creates non-payable commission ledger evidence from checkout attribution.","Issue #115 adds owner-gated review/reversal actions without payout mutation.","Issue #193 adds public-safe partner reports without exposing buyer, payout, tax, Stripe, raw click, raw checkout, or private actor data.","Issue #424 adds public-safe partner portal status pages and statement snapshots without private partner auth, payable statements, buyer data, payout accounts, tax forms, Stripe payout IDs, provider secrets, message bodies, queue rows, raw rows, or direct public agent writes.","Issue #195 adds read-only payout preparation without Stripe payouts, tax data, payout accounts, partner notifications, payable commission finalization, or direct agent writes.","Issue #273 adds owner-confirmed payout preparation records without payable commission state, Stripe payouts, tax data, payout accounts, partner notifications, buyer data, raw ledger rows, fraud enforcement, or direct agent writes.","Issue #275 adds owner-reviewed fraud review records without fraud enforcement, payable commission state, Stripe payouts, tax data, payout accounts, partner notifications, buyer data, raw ledger/click/checkout rows, private fraud signals, or direct agent writes.","Issue #277 adds owner-reviewed partner notification readiness records without partner sends, provider calls, queue dispatch, recipient emails, message bodies, provider message IDs, fraud enforcement, payable commission state, Stripe payouts, payout accounts, tax data, buyer data, raw rows, private fraud signals, or direct agent writes.","Issue #279 adds owner-reviewed partner notification send preflight records without partner sends, provider-send enablement, provider calls, send payloads, queue dispatch, recipient emails, message bodies, provider message IDs, fraud enforcement, payable commission state, Stripe payouts, payout accounts, tax data, buyer data, raw rows, private fraud signals, or direct agent writes.","Issue #281 adds owner-reviewed notification provider readiness records without provider configuration, provider secrets, sender credentials, partner sends, provider-send enablement, provider calls, send payloads, queue dispatch, recipient emails, message bodies, provider message IDs, fraud enforcement, payable commission state, Stripe payouts, payout accounts, tax data, buyer data, raw rows, private fraud signals, or direct agent writes.","Issue #424 adds owner-confirmed fraud enforcement records without payable commission state, Stripe payouts, payout accounts, tax data, partner sends, provider calls, buyer data, raw rows, private fraud signals, or direct agent writes.","Issue #424 tracks live payout execution, partner notification sends, private payout/tax data, authenticated private partner portals, payable statement creation, and direct agent-safe affiliate/referral writes as one pending post-MVP execution bucket."],"agentContract":"Agents may read aggregate referral click counts, checkout attribution evidence, review-only commission ledger evidence, owner review action counts, public-safe partner reports, public-safe partner portal status pages, public-safe partner statement snapshots, read-only payout preparation checklists, owner-confirmed payout preparation records, owner-reviewed fraud review records, owner-confirmed fraud enforcement records, owner-reviewed partner notification readiness records, owner-reviewed partner notification send preflight records, owner-reviewed notification provider readiness records, and write boundaries; issue #424 owns buyer attribution finalization, payable statements, payable commissions, payout execution, payout reversals, private payout/tax data, authenticated private partner portals, partner sends, provider-send enablement, provider configuration, provider secret storage, provider calls, send payload creation, queue dispatch, and direct agent-safe affiliate/referral writes behind future confirmation, idempotency, stale-state, audit, redaction, refund-window, provider-safety, and rollback/dispute checks."},{"id":"feature-admin-state","title":"Admin roadmap, work log, journeys, and owner-attention surfaces","group":"Admin and operations","status":"live","issue":8,"summary":"Owner-backed admin surfaces for roadmap status, work logs, user journeys, blockers, owner notes, and durable project memory.","audience":"The Bumpgrade owner and agents coordinating parallel work.","expectedCapabilities":["Roadmap lanes with issue and PR links.","Work-log entries for substantive work bursts and shipped features.","User journeys tied to feature IDs and validation evidence.","Owner-attention items for non-blocking decisions and risks."],"evidence":["Issue #8 owns the D1 admin surface slice.","Admin source-data routes and D1 append scripts are included with the issue #8 implementation."],"agentContract":"Agents should write durable project state through approved scripts or APIs, never by inventing hidden chat-only status."},{"id":"feature-agent-ready-contracts","title":"Agent-ready docs, manifests, APIs, and MCP","group":"Developers and agents","status":"live","issue":12,"summary":"Public agent docs, `/agent-docs/source-data` manifest, source evidence resolution, read contracts, and MCP roadmap for repeated agent workflows.","audience":"Codex, ChatGPT, Claude, and other agents helping operate Bumpgrade or customer workspaces.","expectedCapabilities":["Public `/agent-docs` pages and `llms.txt` discovery.","Server-side manifest for feature, roadmap, comparison, commerce, admin, and agent-read contracts.","MCP resource and tool roadmap for repeated reads and safe proposed writes.","Confirmed-write contracts for public, destructive, billing, and creator-speech actions."],"evidence":["Tracked by issue #12.","`/agent-docs/source-data` exposes public-safe docs, read contracts, source evidence routes, MCP plan, and write-safety boundaries.","Comparison JSON shipped in issue #5 and commerce source data shipped in issues #11 and #34."],"agentContract":"Agents must prefer documented APIs/manifests/MCP over browser automation when a server-side contract exists."},{"id":"feature-better-auth","title":"Publisher and admin authentication","group":"Accounts","status":"live","issue":9,"summary":"Better Auth-powered publisher and admin login with Cloudflare D1 storage, protected admin routes, and session-safe workflows.","audience":"Publishers, admins, and agents needing permission-aware access.","expectedCapabilities":["Email/password auth flow.","auth storage tables.","Protected admin and publisher routes.","Owner email verification with resend cooldown, Gmail handoff, and last-sent status.","Browser-scoped anonymous playground claim into a verified Free Build account, additive private launch draft, and private offer/product/audience/importer-review records.","Browser-recovery workspace save limits for rapid anonymous playground writes without raw IP or user-agent storage.","Owner-gated anonymous playground cleanup for expiring old recovery while preserving claimed private records.","Cloudflare Cron cleanup for expired anonymous recovery using the same preserve-claimed-records boundary.","Signed-in Free Build workspace creation before payment.","Paid-plan entitlement gate for publisher account setup.","D1-backed publisher tenant and default Bumpgrade subdomain reservation.","Existing-domain onboarding with deterministic CNAME instructions and DNS verification state.","Better Auth cookie configuration for one login across bumpgrade.com subdomains.","Custom-domain login boundary that uses a central Bumpgrade sign-in handoff rather than raw cross-domain cookie sharing.","Documented phone verification and SMS provider research from issue #53; phone collection and SMS OTP are not live.","Role and permission model for delegated agent actions."],"evidence":["Issue #9 owns the Better Auth foundation slice.","Admin pages now require an allowlisted Better Auth owner session; public-safe source-data routes remain readable.","Issue #55 adds human owner verification copy, resend actions, and delivery status evidence.","Issue #466 adds logged-out structured playground save, browser-recovery save limits, owner-gated and scheduled cleanup, verified account claim, private launch draft creation, and private claim records while keeping go-live actions paid-gated.","Issue #473 adds signed-in Free Build workspace creation while keeping public go-live actions paid-gated.","Issue #222 adds `/account/setup`, `/account/source-data`, and `POST /api/account/publisher/subdomain` for paid-gated Bumpgrade subdomain reservation.","Issue #223 adds existing custom-domain onboarding, DNS instructions, and redacted verification state.","Issue #224 documents and tests the publisher-site auth boundary for Bumpgrade subdomains and custom domains.","Issue #53 researches Cloudflare, Better Auth, Twilio Verify, AWS Notify, Telnyx, Vonage, Bird, Sinch, and Stripe phone-number collection boundaries before any phone collection exists."],"agentContract":"Agents must not bypass auth or scrape private admin UI when authenticated APIs are the appropriate surface; Free Build workspace, tenant, subdomain, custom-domain, and future phone-verification writes require signed-in publisher context, paid-plan checks where relevant, idempotency, audit correlation, DNS or provider verification state, rate limits, spend controls, and redaction."},{"id":"feature-codex-email","title":"Project operations notifications","group":"Operations","status":"live","issue":10,"summary":"Owner-visible project notifications, reply monitoring, and attachment-aware follow-up for Bumpgrade workstreams.","audience":"The Bumpgrade owner and authorized project agents that need durable non-chat coordination.","expectedCapabilities":["Outbound owner notifications from a project-owned sender.","Inbound routing and reply detection.","Attachment and inline-image visibility checks.","Private runtime evidence for outbound notices and inbound replies."],"evidence":["Tracked by issue #10.","Project email routing reports ready after required domain records were installed.","Private operational storage persists notice and reply evidence without exposing trusted identities.","A delayed PR #40 notice returned delivered and is recorded in private operational evidence.","Inbound project mail reaches the Worker for capture and forwarding.","Per-session plus addressing is deferred until the mail provider supports it for bumpgrade.com."],"agentContract":"Authorized project agents should use owner notifications only when the work merits interruption, check recent private replies before unrelated large work, and keep trusted identities, private inbox bodies, and raw mail details out of public surfaces."},{"id":"feature-stripe-commerce","title":"Stripe payments and checkout architecture","group":"Payments","status":"live","issue":11,"summary":"Stripe SDK, mode-specific secret mapping, Checkout-first architecture, D1 commerce tables, optional referral-click attribution evidence, review-only commission ledger evidence, owner review/reversal actions, and billing-safe agent rules. No live customer checkout or payout flow is enabled yet.","audience":"Publishers selling products, courses, memberships, coaching, or services.","expectedCapabilities":["Stripe-hosted Checkout Sessions as the first payment surface.","D1 product, price, checkout-intent, subscription, webhook, and audit records.","Optional referral-click attribution evidence attached to sandbox checkout intents from issue #111.","Review-only commission ledger evidence calculated from checkout attribution from issue #113.","Owner-gated review, hold, and reversal actions for commission evidence from issue #115.","Webhook ingestion and event idempotency before fulfillment is trusted.","Subscriptions, trials, upgrades, downgrades, and cancellations after the sandbox path works.","Redacted payment metadata for admin and agent reads."],"evidence":["Tracked by issue #11.","Issue #11 stores mode-specific Stripe values as Cloudflare secrets without repo secret values.","`/commerce/source-data` exposes the redacted commerce contract.","Issue #34 owns the first sandbox Checkout Session and webhook ingestion route.","Issue #111 adds checkout referral attribution evidence without commissions or payout state.","Issue #113 adds review-only commission ledger evidence without payout mutation.","Issue #115 adds owner review/reversal actions without payout mutation."],"agentContract":"Agents can read public-safe commerce contracts, referral attribution evidence, review-only commission ledger evidence, and owner action aggregates, but checkout, refund, subscription, payable commission, payout, direct agent review, and billing mutations require confirmed-write rules."},{"id":"feature-mobile-admin","title":"Publisher admin apps for iOS and Android","group":"Mobile","status":"launch-preview","issue":414,"summary":"Read-only live mobile dashboard hydration, redacted Director workstream digesting, iOS/Android foundations, owner-session private-row inspection, low-risk private-row actions, owner-confirmed Director workstream review actions, owner-confirmed commerce-health review actions, push/distribution readiness boundaries, and the shared confirmed-action contract are proven; installable private mobile admin parity is still tracked as the current follow-up.","audience":"Publishers who run launches away from a desktop dashboard.","expectedCapabilities":["Shared `/mobile-admin/source-data` contract for iOS and Android.","Live `/mobile-admin/dashboard/source-data` digest for public-safe mobile dashboard reads from issue #153.","Independently shippable iOS issue #67 and Android issue #68.","iOS, Android, and Expo foundations render the live dashboard panel from issue #155.","iOS, Android, and Expo foundations live-read the dashboard with fixture fallback from issue #157.","iOS, Android, and Expo foundations render the redacted Director workstream brief from the live dashboard payload.","iOS, Android, and Expo foundations render the issue #414 owner-session and confirmed-action contract without enabling mobile mutations.","Owner-gated `/api/mobile-admin/private-rows` exposes read-only private mobile row inspection from issue #414 without exposing owner-only notes in public source-data.","Owner-gated `/api/mobile-admin/private-rows/actions` marks private rows read or deferred from issue #428 without enabling billing, commerce, publishing, moderation, push, distribution, creator-speech, or public agent writes.","Owner-gated `/api/mobile-admin/director-reviews` records Director workstream acknowledgements from issue #414 without enabling billing, publishing, push, distribution, private-row, or public agent writes.","Owner-gated `/api/mobile-admin/commerce-reviews` records commerce-health acknowledgements from issue #414 without enabling checkout, refund, subscription, price, fulfillment, entitlement, push, distribution, private-row, or public agent writes.","Owner-gated `/api/mobile-admin/actions` records audit-only mobile action intent evidence from issue #414 without enabling production mutations.","Public-safe push-notification boundary names APNs/FCM requirements, disabled send status, blockers, and redaction flags.","Public-safe distribution boundary separates simulator/emulator evidence from physical-device, App Store/TestFlight, and Play Store/internal-testing claims.","Roadmap and notification-aware mobile admin flows.","Offer, checkout, product, and customer summaries.","Agent handoff and approval queues.","Platform-specific smoke testing before claims of parity."],"evidence":["Current active follow-up tracked by issue #414.","Original foundation contract tracked by issue #13.","iOS app slice tracked by issue #67.","Android app slice tracked by issue #68.","Live dashboard source-data bridge tracked by issue #153.","Mobile dashboard foundation rendering tracked by issue #155.","Mobile dashboard live hydration tracked by issue #157.","Mobile owner-session and confirmed-action UI contract tracked by issue #414.","Mobile owner-session private-row inspection API tracked by issue #414.","Mobile owner-confirmed private-row workflow action API tracked by issue #428.","Mobile owner-confirmed Director workstream review API tracked by issue #414.","Mobile owner-confirmed commerce-health review API tracked by issue #414.","Mobile audit-only action intent API tracked by issue #414.","Mobile Director workstream digest tracked by issue #414.","Mobile push-notification readiness boundary tracked by issue #414.","Mobile distribution-readiness boundary tracked by issue #414.","`/mobile-admin/source-data` exposes jobs, API dependencies, stack decision, and confirmed-write boundaries.","`/mobile-admin/dashboard/source-data` exposes a public-safe digest of Director workstreams, feature, roadmap, work-log, attention, commerce, agent, private-row, and platform status for mobile clients.","`/api/mobile-admin/private-rows` is owner-session-only and returns read-only private rows without production mutations.","`/api/mobile-admin/private-rows/actions` is owner-session-only and mutates only low-risk private-row workflow state with redacted audit evidence.","`/api/mobile-admin/director-reviews` is owner-session-only and records low-risk Director workstream acknowledgement state with redacted audit evidence.","`/api/mobile-admin/commerce-reviews` is owner-session-only and records low-risk commerce-health acknowledgement state with redacted audit evidence.","`/api/mobile-admin/actions` is owner-gated and records redacted action intent evidence without production admin, billing, push, distribution, or private-row mutation.","`/mobile-admin/source-data` exposes push-readiness and distribution-readiness boundaries without APNs/FCM credentials, device tokens, signing credentials, provisioning profiles, keystore material, private tester lists, or store account identifiers.","`/mobile-admin/ios/source-data` exposes the first iOS foundation, fixture, simulator target, smoke command, and screenshot path.","`/mobile-admin/android/source-data` exposes the first Android foundation, fixture asset, emulator smoke command, and screenshot path."],"agentContract":"Mobile apps can read the shared public-safe dashboard digest, render the redacted Director workstream brief, render the shared owner-session plus confirmed-action requirements, inspect owner-gated read-only private rows through /api/mobile-admin/private-rows, mark private rows read or deferred through /api/mobile-admin/private-rows/actions, acknowledge Director workstreams through /api/mobile-admin/director-reviews, acknowledge commerce health through /api/mobile-admin/commerce-reviews, record owner-gated audit-only action intents through /api/mobile-admin/actions, and inspect public-safe APNs/FCM plus distribution readiness blockers. Issue #414 still tracks live push execution, physical-device proof, installable distribution, and high-risk billing/publishing/fulfillment domain-specific production confirmed-write parity work that must reuse web/admin contracts and the same audit rules as web admin actions."},{"id":"feature-resources-use-cases-pricing","title":"Use cases, resources, pricing, and blog surfaces","group":"Marketing surfaces","status":"live","issue":20,"summary":"Public use-case page, developer/agent page, resource and blog hub, self-serve pricing, and content source-data contract for search and agent discovery.","audience":"Prospects, search traffic, agents, and future customers evaluating Bumpgrade.","expectedCapabilities":["Use cases for creators, coaches, course sellers, agencies, and publishers.","Developer and agent pages backed by real contracts.","Resources hub with comparison, migration, launch, product-note, and blog-index records.","Canonical self-serve pricing page with Experiment, Grow, Enterprise, White glove setup, logged-out playground, signed-in Free Build, and a non-indexed alternate usage-based pricing draft.","Agent-readable `/pricing/source-data` for Free Build capability boundaries, anonymous playground state, signed-in workspace state, and paid go-live gates.","Logged-out `/playground` route with browser-scoped structured builder recovery, save limits, owner-gated and scheduled cleanup, account claim path, private launch draft creation, and private claim-record creation after signup.","Agent-readable `/content/source-data` records for personas, resources, and pricing contracts."],"evidence":["Tracked by issue #20.","Issue #466 tracks the free build-before-go-live pricing policy.","Issue #473 adds signed-in Free Build workspace creation.","Issue #551 keeps `/pricing` canonical for buyers and keeps `/pricing-v2` as a non-indexed usage-pricing draft.","`/users`, `/developers-and-agents`, `/resources`, `/pricing`, `/playground`, and non-indexed `/pricing-v2` are live destinations.","`/playground/source-data` exposes logged-out structured builder recovery, save limits, account claim, owner-gated and scheduled cleanup, private draft creation, private claim-record creation, redaction, retention, and paid go-live gates.","`/pricing/source-data` exposes the Free Build design, logged-out playground state, signed-in workspace state, and paid go-live gates.","`/content/source-data` exposes stable audience, resource, and pricing records."],"agentContract":"Agents may read content surface records, pricing policy records, anonymous playground records, save-limit boundaries, cleanup boundaries, additive claim merge boundaries, claimed private draft boundaries, private claim-record boundaries, and draft resource copy, but they must distinguish browser-scoped anonymous structured saves, owner-gated and scheduled cleanup, signed-in Free Build workspace creation, private draft creation without replacing existing workspace work, private claim-record creation, and paid go-live actions such as live checkout, public publishing, subscriber sends, custom domains, and fulfillment; public claims need source URLs or shipped-product evidence before publication."}],"legacyCatalogUpdatedAt":"2026-05-25","marketingCategories":["Launch planning","Funnels","Audience","Checkout","Commerce","Optimization","Growth","Migration"],"marketingFeatures":[{"slug":"ai-business-coach","title":"AI business coach","shortTitle":"AI coach","category":"Launch planning","status":"launch-preview","availability":"Available for launch planning, offer review, funnel suggestions, email outlines, and analytics readouts. You stay in control of publishing, billing, and sends.","eyebrow":"Decide faster","hero":"Ask an AI launch advisor what to do next.","summary":"Bumpgrade's AI coach helps publishers turn an offer idea into a practical launch plan using the funnel, checkout, audience, product, and analytics context already in Bumpgrade.","audience":"Solo publishers, coaches, course sellers, and operators who want a clearer launch plan without stitching together private notes, screenshots, and generic AI prompts.","problem":"Generic AI tools can write advice, but they usually cannot see the page, offer, checkout, audience, product, and analytics details that shape a real launch.","outcome":"Ask for a launch plan, funnel sequence, offer-page rewrite, missing-step review, analytics readout, or email follow-up outline grounded in your actual Bumpgrade launch state.","imageUrl":"/marketing/ai-launch-advisor-workspace.png","imageAlt":"Bumpgrade AI launch advisor workspace with offer, audience, analytics, and next-step recommendations.","cardImageUrl":"/marketing/ai-launch-advisor-card.png","cardImageAlt":"Bumpgrade AI launch advisor panel with launch context and next-step recommendations.","featureIds":["feature-agent-ready-contracts","feature-compare-source-data"],"issueIds":[12,217],"proofRoutes":["/agent-docs","/agent-docs/source-data","/compare/source-data"],"benefits":["Turn offer notes into a launch plan that references the real funnel, offer stack, product access, audience, and analytics surfaces.","Spot missing checkout, product, audience, or analytics steps before a publisher sends traffic to the launch.","Choose when to publish copy, charge customers, send messages, or change product access."],"useCases":["Turn an offer idea into a launch plan.","Outline a funnel sequence from the current offer stack.","Find missing checkout, product, audience, or analytics steps.","Review launch analytics and suggest next actions.","Rewrite an offer page for a clearer buyer promise.","Prepare an email follow-up outline after opt-in or purchase."],"examples":[{"title":"Plan the launch","body":"Start with a rough product idea and get a step-by-step launch path that names the page, checkout, follow-up, product delivery, and measurement work.","request":"Turn this offer idea into a first launch plan and flag the missing Bumpgrade setup steps."},{"title":"Improve the funnel","body":"Review the current funnel and offer stack, then ask for the next page, bump, upsell, or follow-up change that would make the launch easier to buy.","request":"Read the current funnel and offer stack, then suggest the next three changes to improve conversion."},{"title":"Decide from evidence","body":"Use conversion, audience, and product-access signals to choose what to change next without exposing private customer or billing details.","request":"Summarize what the latest launch signals say and recommend the next action I should approve."}],"replaces":["Generic AI prompts","Scattered launch docs","Private chat-only project memory"],"nextStep":{"label":"Start with Bumpgrade","href":"/pricing"}},{"slug":"simple-landing-page","title":"Simple landing pages","shortTitle":"Landing pages","category":"Funnels","status":"live","availability":"Landing page templates, funnel routing, and public launch examples are ready to use.","eyebrow":"Publish the first page","hero":"Give a launch idea a public page, not another private note.","summary":"Build around opt-in, sales, webinar, resource, thank-you, and checkout handoff page shapes your team can review before publishing.","audience":"Creators who need a crisp landing page for a lead magnet, event, resource, or paid offer.","problem":"A lot of launches stall because the first public page is trapped in a site builder, doc, or designer queue.","outcome":"Use a structured page path that makes launch pages easier to review, approve, and evolve.","imageUrl":"/marketing/launch-funnel-card.png","imageAlt":"Bumpgrade launch funnel workspace with opt-in, offer, checkout, and delivery steps.","featureIds":["feature-funnel-builder"],"issueIds":[14,79,135,159,161,213],"proofRoutes":["/funnels/indie-launch-sandbox","/funnels/source-data"],"benefits":["Start with proven page shapes for opt-ins, webinars, resources, sales pages, checkout handoffs, and thank-you pages.","Keep page work easy to review before publishing.","Publish the checked funnel route once the launch page is ready."],"useCases":["Lead magnet page","Webinar registration page","Resource library page","Sales page"],"replaces":["One-off landing page builders","Static launch docs","Ad hoc page copy handoffs"],"nextStep":{"label":"Open a landing page example","href":"/funnels/indie-launch-sandbox"}},{"slug":"sales-funnels","title":"Sales funnels","shortTitle":"Funnels","category":"Funnels","status":"live","availability":"Funnel examples, reusable templates, checkout links, public funnel routes, and archive/unpublish controls are ready to use.","eyebrow":"Connect the path","hero":"Move people from first click to the right next offer.","summary":"Bumpgrade models launches as ordered funnel steps with reusable templates, checkout links, review pages, and publishing controls.","audience":"Publishers and operators who want one coherent launch path instead of disconnected pages and checkouts.","problem":"Landing pages, checkout pages, upsells, and follow-up content often live in separate tools with unclear state.","outcome":"Plan, review, and publish a sequence your team can approve before it changes what customers see.","imageUrl":"/marketing/sales-funnels-card.png","imageAlt":"Bumpgrade sales funnel sequence with lead page, offer page, order bump, and follow-up steps.","featureIds":["feature-funnel-builder","feature-checkout-offers"],"issueIds":[14,79,91,93,95,135,159,161,163,165,215,341,409],"proofRoutes":["/funnels/indie-launch-sandbox","/funnels/source-data","/admin/funnels"],"benefits":["Use launch, webinar, resource, and checkout handoff templates as reusable starting points.","Review, duplicate, and archive launch paths before or after publishing.","Connect checkout links, publishing, and unpublishing steps from the same launch path."],"useCases":["Book launch funnel","Course waitlist","Paid workshop funnel","Digital product launch"],"replaces":["ClickFunnels page sequences","Manual page-to-checkout handoffs","Untracked funnel docs"],"nextStep":{"label":"Open a funnel example","href":"/funnels/indie-launch-sandbox"}},{"slug":"email-campaigns","title":"Email campaigns","shortTitle":"Email","category":"Audience","status":"live","availability":"Opt-in forms, consent, tags, suppression, unsubscribe-paused sequence evidence, sequence delivery readiness, CRM notes, campaign prep, and send checks are ready to use.","eyebrow":"Grow the list","hero":"Capture subscribers and prepare campaigns without breaking trust.","summary":"Bumpgrade connects waitlist forms, consent, tags, subscriber inspection, suppression, unsubscribe-paused sequence evidence, aggregate sequence delivery readiness, CRM notes, campaign preparation, and safer send checks.","audience":"Publishers who need launch email workflows but do not want a brittle list glued to a separate funnel stack.","problem":"Email tools are powerful, but they often hide the relationship between consent, segments, campaign plans, and checkout journeys.","outcome":"See who can receive a campaign, why they qualify, what is suppressed, and what to check before sending.","imageUrl":"/marketing/audience-email-card.png","imageAlt":"Bumpgrade audience campaign workspace with opt-in, consent, segment, and nurture outline steps.","featureIds":["feature-email-automation-crm"],"issueIds":[17,85,103,137,167,343,169,171,173,175,177,183,189,191,197,199,201,203,205,207,209,211,347,351],"proofRoutes":["/audience/indie-launch-waitlist","/audience/source-data","/admin/audience"],"benefits":["Capture waitlist leads with consent and normalized email records.","Inspect tags, consent, suppression, unsubscribe-paused sequence evidence, aggregate sequence delivery readiness, CRM notes, and campaign preparation in one place.","Check scheduling, audience, message, and delivery details before live sends."],"useCases":["Launch waitlist","Lead magnet nurture","Broadcast preflight","CRM follow-up notes"],"replaces":["Kit list growth workflows","Spreadsheet-based launch lists","Untracked broadcast checklists"],"nextStep":{"label":"Open the waitlist","href":"/audience/indie-launch-waitlist"}},{"slug":"order-bump","title":"Checkout and order bumps","shortTitle":"Order bumps","category":"Checkout","status":"live","availability":"Checkout examples, order bumps, post-purchase paths, and Stripe-backed plan checkout are ready to use.","eyebrow":"Increase order value","hero":"Offer the right bump, upsell, or downsell at the moment of purchase.","summary":"Bumpgrade models primary offers, order bumps, post-purchase decisions, checkout success state, and referral attribution in one launch flow.","audience":"Sellers who want better average order value and safer billing flows.","problem":"Offer stacks are usually split across checkout builders, payment dashboards, and manual fulfillment notes.","outcome":"Review the full offer ladder, inspect the checkout path, and make sure every buyer lands on the right next step.","imageUrl":"/marketing/checkout-offer-card.png","imageAlt":"Bumpgrade checkout offer stack with primary offer, order bump, upsell, and success path.","featureIds":["feature-checkout-offers"],"issueIds":[15,34,81,99,111,117,133],"proofRoutes":["/offers/indie-launch-stack","/offers/source-data","/commerce/source-data"],"benefits":["Model primary offers, bumps, upsells, downsells, and checkout intent state.","Attach eligible referral evidence to checkout starts.","Send buyers to post-purchase paths based on completed checkout state instead of hopeful redirects."],"useCases":["Order bump","Paid offer checkout","Post-purchase upsell prompt","Referral-attributed checkout"],"replaces":["SamCart checkout paths","ThriveCart-style bump logic","Manual checkout notes"],"nextStep":{"label":"Open the offer stack","href":"/offers/indie-launch-stack"}},{"slug":"digital-products","title":"Digital products and memberships","shortTitle":"Products","category":"Commerce","status":"live","availability":"Product catalogs, access checks, downloads, protected content, and membership state are ready to use.","eyebrow":"Deliver the thing","hero":"Sell products that can actually grant access afterward.","summary":"Bumpgrade connects product catalogs, access rules, entitlements, protected content, download tokens, and subscription-backed membership state.","audience":"Course sellers, template sellers, paid newsletter operators, and digital product creators.","problem":"Checkout without fulfillment creates support work and fragile manual access checks.","outcome":"Confirm product access, grant the right entitlement, and deliver protected content without messy manual links.","imageUrl":"/marketing/product-access-card.png","imageAlt":"Bumpgrade product library with course, download, member access, and revocation rule steps.","featureIds":["feature-products-access"],"issueIds":[16,83,101,139,141,143,146,147,151,179,181,185,187],"proofRoutes":["/products/indie-launch-library","/products/source-data","/products/entitlements"],"benefits":["Connect products, access rules, entitlements, downloads, protected content, and membership state.","Let customers inspect access without exposing private identifiers.","Handle access updates deliberately when products, memberships, or customer state change."],"useCases":["Download delivery","Course access","Membership access","Bundle fulfillment"],"replaces":["Kajabi product access pieces","Manual download links","Spreadsheet entitlement tracking"],"nextStep":{"label":"Open product access","href":"/products/indie-launch-library"}},{"slug":"ad-tracking","title":"Ad tracking and conversion analytics","shortTitle":"Analytics","category":"Optimization","status":"live","availability":"Source tracking, conversion reports, experiments, time windows, exports, cohort comparisons, alerts, and notification preparation are ready to use.","eyebrow":"Know what worked","hero":"See which sources, variants, and launch paths are moving buyers.","summary":"Bumpgrade shows which traffic sources, page variants, funnel steps, and time windows are moving buyers so you can improve the next launch.","audience":"Operators buying traffic, testing pages, or trying to understand which launch channel is working.","problem":"Launch attribution is often split between ad platforms, analytics scripts, checkout exports, and gut feel.","outcome":"Use aggregate source and conversion reports to understand the launch without exposing private visitor details.","imageUrl":"/marketing/analytics-card.png","imageAlt":"Bumpgrade launch dashboard with traffic source, funnel step, conversion trend, and revenue signals.","featureIds":["feature-analytics-testing"],"issueIds":[18,87,105,107,119,121,123,125,127,129,261,263,265,267,269,271,284,286,288],"proofRoutes":["/analytics/indie-launch-dashboard","/analytics/source-data","/admin/analytics"],"benefits":["Track page views, opt-ins, checkout starts, purchases, and source attribution.","Read aggregate conversion, cohort, and variant evidence with time-window controls.","Keep raw visitor data and private identifiers out of public reports."],"useCases":["UTM tracking","A/B test readouts","Launch conversion review","Traffic-source comparison"],"replaces":["Manual UTM spreadsheets","Disconnected analytics dashboards","Guesswork after ads run"],"nextStep":{"label":"Open analytics dashboard","href":"/analytics/indie-launch-dashboard"}},{"slug":"audience-crm","title":"Audience CRM","shortTitle":"CRM","category":"Audience","status":"live","availability":"Subscriber inspection, consent records, suppression, and CRM notes are available.","eyebrow":"Remember the relationship","hero":"Keep subscriber context close to the launch.","summary":"Bumpgrade gives publishers CRM-lite subscriber context, consent status, tags, suppression, timeline notes, and campaign preparation instead of a disconnected list export.","audience":"Creators and small publishers who need enough CRM context to launch thoughtfully without a full enterprise CRM.","problem":"Launch lists usually show email addresses but not the surrounding consent, segment, note, and campaign safety context.","outcome":"Review the audience state that matters before sending, segmenting, or following up.","imageUrl":"/marketing/crm-notes-card.png","imageAlt":"Bumpgrade subscriber notes workspace with tags, owner note, and follow-up task.","featureIds":["feature-email-automation-crm"],"issueIds":[17,103,137,167,169,171],"proofRoutes":["/audience/indie-launch-waitlist","/audience/source-data","/admin/audience"],"benefits":["Inspect subscribers, consent, tags, suppression, and follow-up enrollments.","Add private CRM timeline notes.","Use suppression-aware checks before campaign work proceeds."],"useCases":["Lead follow-up","Segment review","Campaign prep","Suppression audit"],"replaces":["Lightweight CRM spreadsheets","Disconnected tag notes","Manual suppression checks"],"nextStep":{"label":"Open the waitlist","href":"/audience/indie-launch-waitlist"}},{"slug":"affiliate-referrals","title":"Affiliate and referral tracking","shortTitle":"Affiliates","category":"Growth","status":"live","availability":"Referral links, attribution, commission review, partner reports, payout preparation, fraud checks, and partner notifications are ready to use.","eyebrow":"Grow with partners","hero":"Track partner growth without rushing into unsafe payout automation.","summary":"Bumpgrade models affiliate programs, referral links, clicks, checkout attribution, commission review, partner reports, payout preparation, fraud checks, and partner notifications.","audience":"Publishers who want partners, affiliates, and creators to help sell without messy attribution logs.","problem":"Referral tracking gets risky when attribution, commission state, and payout decisions are blended together too early.","outcome":"See which partners are driving buyers, review commission state, prepare payouts, and keep risky partner actions deliberate.","imageUrl":"/marketing/affiliate-card.png","imageAlt":"Bumpgrade referral partner workspace with partner link, referral visit, purchase match, and commission review.","featureIds":["feature-affiliates-referrals"],"issueIds":[19,89,109,111,113,115,193,195,273,275,277,279,281],"proofRoutes":["/affiliates/indie-launch-partners","/affiliates/source-data"],"benefits":["Create partner and referral-link records with click and checkout attribution.","Attach eligible referral clicks to checkout intents.","Prepare payout reviews without automating money movement prematurely."],"useCases":["Affiliate launch","Referral partner program","Commission review","Payout prep"],"replaces":["Manual affiliate spreadsheets","Unreviewed payout exports","Attribution screenshots"],"nextStep":{"label":"Open partner program","href":"/affiliates/indie-launch-partners"}},{"slug":"webinars-and-resources","title":"Webinars and resource funnels","shortTitle":"Webinars","category":"Funnels","status":"live","availability":"Webinar and resource funnel templates are available for first-wave launch pages.","eyebrow":"Teach before selling","hero":"Use education, resources, and events as part of the launch path.","summary":"Bumpgrade includes webinar and resource page-block records so launch funnels can support registration, replay/resource positioning, and post-event sales paths.","audience":"Experts, coaches, consultants, and educators using teaching moments to sell deeper products.","problem":"Webinar and resource launches often become separate islands from the actual offer, checkout, and follow-up system.","outcome":"Keep registration, resource delivery, offer handoff, and follow-up context in the same launch path.","imageUrl":"/marketing/webinar-resource-card.png","imageAlt":"Bumpgrade resource launch workspace with registration, delivery, replay offer, and email follow-up steps.","featureIds":["feature-funnel-builder"],"issueIds":[14,213],"proofRoutes":["/funnels/source-data","/funnels/indie-launch-sandbox"],"benefits":["Add webinar and resource page shapes to the funnel library.","Keep event/resource positioning connected to offers and checkout handoffs.","Keep event, resource, and offer context together for future edits."],"useCases":["Webinar registration","Replay funnel","Resource library","Educational sales path"],"replaces":["Standalone webinar pages","Resource portals disconnected from checkout","One-off event copy"],"nextStep":{"label":"Open webinar funnel","href":"/funnels/indie-launch-sandbox"}},{"slug":"competitor-importers","title":"Competitor importers","shortTitle":"Importers","category":"Migration","status":"launch-preview","availability":"Private import planning is live for the dedicated competitor import paths, starting from review-first drafts in Free Build workspaces.","eyebrow":"Move what matters","hero":"Bring your existing launch stack into Bumpgrade before going live.","summary":"Bumpgrade helps publishers map current funnels, checkout paths, audience notes, product context, and page copy from familiar platforms into one private launch workspace.","audience":"Publishers moving from ClickFunnels, SamCart, Kit, Kajabi, Shopify, Podia, Systeme.io, Kartra, or ThriveCart.","problem":"Switching platforms gets risky when pages, checkout, products, emails, and customer-facing links all move at once.","outcome":"Review what comes over, keep it private while you organize the launch, and go live only when the page, checkout, email, product, and domain pieces are ready.","imageUrl":"/marketing/launch-funnel-card.png","imageAlt":"Bumpgrade importer workspace with current platform material mapped into a private launch path.","featureIds":["feature-competitor-importers","feature-compare-source-data"],"issueIds":[467,5,14,15,17],"proofRoutes":["/imports","/imports/clickfunnels","/imports/source-data","/compare/source-data"],"benefits":["Start from public URLs, exported files, CSVs, or pasted copy when a platform does not have a clean transfer path.","Review detected pages, offers, products, audience notes, assets, and follow-up ideas before Bumpgrade creates private workspace records.","Record imported checkout and product records as ready to rebuild, needing payment-copy cleanup, or parked while live payments stay off.","Avoid near-duplicate private drafts when the same source page and title are imported again in the same workspace.","Create a private import plan in Free Build before paying or going live.","Keep publishing, checkout, subscriber sends, domains, and fulfillment off until the launch is approved."],"useCases":["ClickFunnels migration","SamCart checkout move","Kit audience import","Kajabi product move","Shopify offer launch"],"replaces":["Manual migration spreadsheets","Copy-paste launch rebuilds","Unreviewed platform switches"],"nextStep":{"label":"Open import center","href":"/imports"}}],"structureReferences":[{"label":"ClickFunnels feature index","url":"https://goto.clickfunnels.com/clickfunnels-features","usefulPattern":"Dedicated feature tiles that route prospects into deeper feature education."},{"label":"ScoreApp feature list","url":"https://www.scoreapp.com/features/","usefulPattern":"Plain-language feature grouping around what the customer gets done."},{"label":"Shopify products","url":"https://www.shopify.com/products","usefulPattern":"Confident product-category cards with clear jobs-to-be-done paths."},{"label":"Kajabi product pages","url":"https://www.kajabi.com/product","usefulPattern":"Each major capability gets a learn-more route instead of one dense board."}]}