Open items

The actionable set: capabilities still PARTIAL or NON-COMPLIANT, plus pending attestations. Sources: _state.json, _attestations.json.

Non-compliant

4

verified failure

Partial

34

in progress / incomplete

Pending attestations

40

41 have no owner assigned

Non-compliant capabilities

  • non-compliant
    demo-try-end-to-end-flow capability · phase ?

    Scripted end-to-end demo at /try/end-to-end orchestrates subscribe → cart → confirm → portal → admin → CTA against the visitor's connected store; mute-by-default Web Speech narration, manual + auto-advance controls

    Sister-slice components (5a CredentialsBanner, 5b WidgetHost, 5c SyntheticSubscriptionList, 5d AdminTilesDemo) render via local placeholders pending their respective merges. Mechanical 4-line import swap once 5a-5d land.

    Hive #1259 (AC-5e), dossier docs/handoffs/hive-1143-ac5e-demo-end-to-end-flow.md, parent Hive #1143 AC-5

  • non-compliant
    authorize-bc-payments adr-commitment · phase ?

    ADR-0038 P2-A: BC Payments authorize() stub — documents that payments.bigcommerce.com is atomic and does not support per-request auth-only mode. Throws not_implemented_phase_2_requires_bc_partner_track. Verified 2026-05-15 against BC payments overview + transactions-api docs.

    ADR-0038 / Hive #796 track A

  • non-compliant
    brd-us-18-6-quantity-silent-clamp capability · phase ?

    Out-of-range quantity is silently clamped to [1..100] rather than rejected; audit event records original_quantity + clamped:true

    BRD.md §US-18.6 / Tier α polish decision e21ea786: silent-clamp closes UX gap where subscribers typing "0" got a 400

  • non-compliant
    ops-ledger-max-attempts adr-commitment · phase ?

    ADR-0031: operations.max_attempts column for per-row retry budget

    ADR-0031

Pending attestations (by gating class)

  • market
    bc-corp-coordination coordination · owner: unassigned

    BC corporate coordination — partner agreements, certifications, and listing approval

    Related: #1269

  • market
    marketplace-listing-copy go-to-market · owner: unassigned

    BC marketplace listing copy — reviewed and approved

    Related: #1269

  • market
    bc-marketplace-tech-review security-compliance · owner: unassigned

    BC marketplace technical review — submission + approval

    Related: #1269

  • market
    bc-marketplace-technical-review security-compliance · owner: unassigned

    BC marketplace technical review

    Related: #1269

  • ga
    cross-browser design-ux · owner: unassigned

    Cross-browser QA — Chrome, Firefox, Safari, Edge

    Related: #1269 · #1280

  • ga
    heuristic-review design-ux · owner: unassigned

    Heuristic evaluation — full merchant admin UI

    Related: #1269 · #1280 · #1348

  • ga
    mobile-responsive design-ux · owner: unassigned

    Mobile responsive QA — admin + portal + try page

    Related: #1269 · #1280 · #1347

  • ga
    real-merchant-usability design-ux · owner: unassigned

    Real-merchant usability sessions (≥3 merchants)

    Related: #1269 · #1280 · #1349

  • ga
    wcag-2-2-aa-admin design-ux · owner: unassigned

    WCAG 2.2 AA conformance — admin surface

    Related: #1269 · #1278 · #1290 · #1299

  • ga
    wcag-2-2-aa-portal design-ux · owner: unassigned

    WCAG 2.2 AA conformance — subscriber portal

    Related: #1269 · #1278 · #1291

  • ga
    wcag-2-2-aa-try-page design-ux · owner: unassigned

    WCAG 2.2 AA conformance — /try storefront page

    Related: #1269 · #1278 · #1292

  • ga
    developer-integration-guide documentation · owner: unassigned

    Developer integration guide — Catalyst and headless storefront integration

    Related: #1269 · #1283 · #1312

  • ga
    merchant-docs-site documentation · owner: unassigned

    Merchant-facing documentation site — install, configure, and manage subscriptions

    Related: #1269 · #1283 · #1313 · #1314

  • ga
    beta-program-design go-to-market · owner: unassigned

    Beta merchant program — invite criteria, support SLA, and exit criteria

    Related: #1269 · #1284

  • ga
    onboarding-email-sequence go-to-market · owner: unassigned

    Merchant onboarding email sequence — written and delivery-tested

    Related: #1269 · #1284

  • ga
    pricing-decision go-to-market · owner: unassigned

    Pricing and packaging decision — documented and stakeholder-approved

    Related: #1269 · #1284

  • ga
    on-call-rotation operations · owner: unassigned

    On-call rotation defined — schedule, alerts, and escalation paths

    Related: #1269 · #1282

  • ga
    runbook-database-recovery operations · owner: unassigned

    Runbook — database backup verification and recovery procedure

    Related: #1269 · #1282

  • ga
    runbook-subscription-failures operations · owner: unassigned

    Runbook — subscription charge failures and dunning escalation

    Related: #1269 · #1282

  • ga
    slo-definitions operations · owner: unassigned

    SLO definitions — uptime, charge success rate, and API latency

    Related: #1269 · #1282

  • ga
    status-page-setup operations · owner: unassigned

    External status page — configured, monitored, and merchant-accessible

    Related: #1269 · #1282

  • ga
    support-macros operations · owner: unassigned

    Support macros and playbooks — common merchant support scenarios

    Related: #1269 · #1282

  • ga
    gdpr-review security-compliance · owner: unassigned

    GDPR compliance review — data subject rights + processor agreements

    Related: #1269 · #1279 · #1309 · #1319 · #1320 · #1321 · #1323 · #1324

  • ga
    pci-scope-verification security-compliance · owner: unassigned

    PCI scope verification — no raw card data in our systems

    Related: #1269 · #1279 · #1306

  • ga
    penetration-test security-compliance · owner: unassigned

    Third-party penetration test — full app surface

    Related: #1269 · #1279

  • ga
    secret-scanning-audit security-compliance · owner: unassigned

    Secret scanning audit — gitleaks + environment secret hygiene

    Related: #1269 · #1279 · #1304 · #1305

  • ga
    stride-payment-flows security-compliance · owner: unassigned

    STRIDE threat model — payment authorization and capture flows

    Related: #1269 · #1279 · #1308 · #1332 · #1333 · #1334 · #1336 · #1338

  • ga
    stride-subscription-lifecycle security-compliance · owner: unassigned

    STRIDE threat model — subscription lifecycle operations

    Related: #1269 · #1279

  • ga
    adversarial-testing testing · owner: unassigned

    Adversarial and edge-case testing — concurrent operations + destructive inputs

    Related: #1269 · #1281

  • ga
    exploratory-testing testing · owner: unassigned

    Exploratory testing session — unscripted, independent tester

    Related: #1269 · #1281

  • ga
    manual-test-execution testing · owner: unassigned

    Full manual test plan execution against staging environment

    Related: #1269 · #1281

  • ga
    test-data-prep testing · owner: unassigned

    Staging test data — realistic multi-merchant, multi-subscription dataset

    Related: #1269 · #1281

  • ga
    test-plan-extraction testing · owner: unassigned

    Manual test plan extracted from BDD scenarios + AC

    Related: #1269 · #1281

  • soft
    hiring-decisions coordination · owner: unassigned

    Hiring plan — roles needed for Phase 2 engineering and merchant support

    Related: #1269

  • soft
    roadmap-planning coordination · owner: unassigned

    Roadmap planning — Phase 2 priorities documented and stakeholder-aligned

    Related: #1269

  • soft
    migration-guides documentation · owner: unassigned

    Migration guides — from Recharge, WooCommerce Subscriptions, and build-native

    Related: #1269 · #1316 · #1345

  • soft
    launch-announcement go-to-market · owner: unassigned

    Launch announcement — blog post or press release drafted and reviewed

    Related: #1269

  • soft
    sales-enablement go-to-market · owner: unassigned

    Sales enablement materials — one-pager, demo script, competitive positioning

    Related: #1269

  • soft
    incident-review-template operations · owner: unassigned

    Incident review template — first post-mortem completed

    Related: #1269

  • soft
    regression-suite-coverage testing · owner: unassigned

    Manual regression suite — coverage of auto-test gaps

    Related: #1269

Partial capabilities

34 rows — in-progress or partial implementations

  • partial
    ops-ledger-locked-until-reaper

    ADR-0031: operations.locked_until column + reaper cron

  • partial
    brd-us-4-1-product-panel-renders

    Subscriptions App Extension panel appears on BC product edit page showing plan status, intervals, pricing, eligibility

  • partial
    brd-us-5-9-calendar-anchor

    plans.billing_anchor_month + billing_anchor_day power calendar-anchored renewals; scheduler reads anchor columns to converge next_charge_at to the configured anchor date

  • partial
    brd-us-6-3-build-a-box-composition

    Build-a-box plan with box_size, eligible_products, customization_window; subscriber picks items; previous composition rolls forward if not customized

  • partial
    brd-us-10-7-pending-start-deferred-activation

    Subscriptions created with future starts_at land in status="pending_start"; scheduler's processPendingStarts scan flips them to active when starts_at <= now and emits subscription.activated with reason=starts_at_reached

  • partial
    brd-us-10-8-first-cycle-proration

    Mid-year sign-ups on calendar-anchored plans pay a prorated first charge for the partial period; plans.proration_policy controls proportional vs skip_stub behaviour

  • partial
    brd-us-10-9-capture-timing-config

    stores.capture_timing column persists merchant choice (immediate / on_fulfillment / on_ship); PaymentSettings admin UI renders dropdown + Phase 1 advisory banner + EU compliance note; capture-timing-resolver service surfaces effective mode for Phase 2 enforcement

  • partial
    brd-us-12-2-store-credit-applied-at-renewal

    Store credit balance reduces next charge amount; remainder rolls forward; credit balance decremented atomically with charge decrement

  • partial
    brd-us-12-4-manual-charge

    Manual ad-hoc charge executed against stored PM with optional BC order creation; blocked without opt-in auth

  • partial
    brd-us-14-5-address-propagation-p2

    merchant-setting-driven propagation of order shipping_address edits to parent subscription row (sync_order_edits_to_subscription = true); pending charges in active bundles are unbundled so re-materialization honours the new address

  • partial
    brd-us-14-7-nti-verification-charge

    Stale NTI triggers MUSE verification charge before renewal MIT; success refreshes last_nti_refreshed_at; failure routes to dunning

  • partial
    brd-us-15-5-free-shipping-plan-setting

    Plan "Free shipping for subscribers" setting zeros shipping cost on all renewals regardless of cart value

  • partial
    brd-us-15-6-pre-renewal-oos-check

    Pre-renewal proactive inventory scan runs ahead of charge window; plans.oos_renewal_policy (proceed/pause/skip_cycle/notify_and_wait) drives outcome; on_hold_oos status + Exception Queue oos_renewal_blocked entry surface to merchant for resolution (Resume now / Skip cycle / Substitute product)

  • partial
    brd-us-16-1-bundle-toggle-portal

    Subscriber with ≥2 active subscriptions to same address sees "Bundle shipments" toggle in portal

  • partial
    brd-us-16-3-admin-bundle-detail

    Admin bundle detail view: line-item → subscription attribution + lifecycle events

  • partial
    brd-us-16-4-shipping-cost-proportional

    Bundle shipping rate allocated proportionally by line-item value across contributing subscription charges

  • partial
    brd-us-18-9-term-nudge-email

    term_end_at - nudge_lead_days fires "renew your subscription" email and flags subscription pending_renewal_decision

  • partial
    brd-us-18-9-term-confirm-advances-end

    Subscriber confirming re-up advances term_end_at by one term and returns subscription to standard renewal flow

  • partial
    brd-us-23-10-deliverability-monitoring

    Per-merchant-domain bounce/complaint rolling-window threshold monitoring drives send throttling + alerts; recovery auto-resumes send

  • partial
    brd-us-24-3-subscription-change-approval

    B2B buyer submits change request via portal; pending → approved/rejected by admin; subscription_change_requests table tracks state; view_only buyers blocked from submitting

  • partial
    brd-us-25-1-subscription-only-coupons

    Merchant can mark a promotion as subscription_only via admin UI toggle; flag stored in promotion_settings table; storefront visibility endpoint gates coupon display by cart composition

  • partial
    brd-us-25-3-cycle-scoped-discount

    Plan-level cycle-scoped discount declaration (cycle_discount_pct/scope/count) snapshots onto subscription_discounts at creation with cycle_min/cycle_max bounds. Scheduler applies the discount only when current renewal cycle is within range. Plan edits do NOT affect in-flight subscriptions (lock-at-creation per ADR-0052).

  • partial
    brd-us-25-5-promotion-stacking-rules

    Two-layer stacking rule enforcement: resolveDiscountStack (subscription_discounts) and evaluateSubscriptionPromotions (subscription_promotions) each implement exclusive (highest computed value wins) + stackable (additive, capped). Exclusive disambiguation per Hive #900: highest computed amount_cents for the specific charge, not abstract discount_percent.

  • partial
    brd-us-25-6-promotional-free-shipping

    Free-shipping rule with cycle-condition (from_cycle) and/or order-value threshold (min_amount_cents) zeros the shipping line on the materialized BC order (single + bundle paths).

  • partial
    brd-us-25-7-cycle-modulo-gift-promo

    gift_item promo with application_window=all_cycles + config.cycle_modulo:N fires on every Nth cycle, injecting a $0 product line into the BC order on those cycles. OOS fallback (skip/substitute) configurable per promo.

  • partial
    brd-us-25-1-subscription-promotion-projection-substrate

    Two-table subscription-promotion substrate: subscription_promotions (coupon definition) + subscription_promotion_applications (per-charge attribution). Replaces spike #117 jsonb-on-charges proposal with relational tables for FK integrity, reporting joins, and refund-on-cancel joins.

  • partial
    brd-us-25-9-promotion-reporting

    Per-promotion report endpoint + admin UI: redemptions, charges_discounted, total_discount_cents (with subs/bc source breakdown), active subs carrying promo, attributed MRR (from plans.amount_cents), and retention lift (avg cycles_to_cancel partitioned by promo_applied_ever, suppressed below 30 cancellations).

  • partial
    brd-us-26-7-qty-min-max-enforced

    min_qty/max_qty rules block subscribe action with clear message when quantity is out of range

  • partial
    brd-us-28-3-audit-log-export

    GET /api/v1/admin/audit-log?from=&to= returns every Event row in date range with actor, action, resource, Convention-12 SCA columns; paginated with cursor

  • partial
    processor-adapter-bc-payments-webhook-extraction

    ADR-0035: BC Payments stored-instrument extraction at order.created webhook — real BigPay token persisted via GET /v3/customers/{id}/stored-instruments

  • partial
    capture-bc-payments

    ADR-0038 P2-A: BC Payments capture() and voidAuth() stubs — documents that BC Transactions API capture/void endpoints are "planned for future phases" as of 2026-05-15. authWindowDays=5 (TBC, conservative default).

  • partial
    capture-timing-stored-on-store

    ADR-0038 Phase 1: stores.capture_timing column exists — migration 0026 (schema/D1) + capture_timing field on StoreRow in db.ts + CaptureTiming type in @bc-subscriptions/types. Advisory only in Phase 1; Phase 2 wires enforcement.

  • partial
    capture-timing-resolver-shipped

    ADR-0038 Phase 2-D: capture-timing-resolver service ships — resolveCaptureTiming() exported, EU_COUNTRY_CODES constant present, migration 0028 adds stores.country_code column

  • partial
    demo-try-connect-form

    Demo "connect your store" connect form — store_hash + Storefront API token, validated client-side, session stored in sessionStorage only (spec #1254 AC-2)