Skip to content

feat: cvm commerce sidecar for stripe checkout and webhooks - #80

Merged
daopunk merged 4 commits into
mainfrom
feat/cvm-commerce-sidecar
Sep 23, 2026
Merged

daopunk merged 4 commits into
mainfrom
feat/cvm-commerce-sidecar

Conversation

@daopunk

@daopunk daopunk commented Sep 23, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

  • Accept Option A hosting: Stripe Checkout + webhooks run as signal-commerce on the existing Phala CVM (:8082); GitHub Pages stays static (decision ADR)
  • Add entitlements cross-process safety (flock + reload_if_stale + with_disk_lock) so bot and commerce can share entitlements.enc
  • Implement signal-commerce: POST /v1/checkout/sessions, signed POST /v1/webhooks/stripe, health — all-access SKUs only (all-access-3 / all-access-10)
  • Wire Dockerfile/compose/Phala + env placeholders (STRIPE_*, SITE_*); empty Stripe key keeps health up for local bring-up

Closes #52. Unblocks #55 / #56 / #64 spine; catalog Price ID seed remains #79 (sk_test_…).

Test plan

  • cargo test -p signal-bot --lib entitlements_store
  • cargo test -p signal-commerce
  • cargo clippy -p signal-commerce --all-targets -- -D warnings
  • npm run ci (or pnpm run ci) before merge
  • Optional local: docker compose -f docker/compose.yaml --env-file docker/.env up -d → curl localhost:8082/health
  • After ops: seed stripe test catalog and write price ids to docs #79 seed: set Price IDs + webhook secret; Stripe test Checkout → success ?code= / ?plan= → !link

@daopunk daopunk changed the title feat: cvm commerce sidecar feat: cvm commerce sidecar for stripe checkout and webhooks Sep 23, 2026
@daopunk
daopunk merged commit 9fb89ad into main Sep 23, 2026
2 checks passed
@daopunk
daopunk deleted the feat/cvm-commerce-sidecar branch September 23, 2026 04:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

decision: stripe checkout and webhook hosting architecture

1 participant