Production demo recap

BetWaggle Demo Recap

The shortest path through the current product: open the working boards, scan what shipped, and keep the remaining external gates visible.

Open These First

These are the best demo routes for showing BetWaggle as a usable organizer and player workflow, not just a static pitch.

BetWaggle scorecard demo
Trip board

Dunes Trip scorecard

Shared scoring, skins/Nassau/Wolf state, scorer authority, and copy-ready settlement behavior.

Open /demo-buddies/
BetWaggle scramble board demo
Paid event

Scramble dashboard

Team leaderboard, side-game workflow, Pairing Coach positioning, and final settlement card.

Open /demo-scramble/
BetWaggle settlement demo
Member guest

Match-play event shell

Flighted member-guest structure, match cards, standings, seeded scores, and championship context.

Open /masters-member-guest/

Current Proof

These are the latest verified local and production signals after the demo-handoff, Worker extraction, and payment-handle cleanup passes.

59/59 + 57/57HTML and public index routes pass production smoke.
6/6Seeded demo slugs return valid production state.
24Worker support modules extracted from the route layer.
0Known demo payment handles exposed in state/config responses.
Recap draft

What Shipped

The current build is pushed to GitHub, deployed on Cloudflare, and verified against the public page and demo-state smokes.

  • Homepage and `/demo/` now steer users toward the premium scramble demo, final settlement card, one-pager, and complete recap.
  • `/scramble-one-pager/` packages the paid-event pitch with real product visuals, Pairing Coach, CTP/LD, and settlement boundaries.
  • Push notifications moved into `worker-push-notifications.js`, private-preview organizer lookups moved into `worker-my-events.js`, and invite/UX telemetry moved into `worker-telemetry.js`, keeping the Worker split moving while preserving route behavior.
  • Demo seed and response paths now avoid exposing Venmo, Cash App, or Zelle details on known public demo slugs.
  • Settlement remains copy-ready: BetWaggle is not a licensed betting operator and never holds funds; payment app buttons only appear when explicit private-event handles are on file.

Remaining Gates

These are still external setup or field-proof items, not finished claims.

Stripe live checkout and webhook proof

Live credentials and webhook verification still need production validation before paid checkout can be treated as complete.

Course API configuration

`GOLF_COURSE_API_KEY` remains an environment gate for full course lookup depth beyond seeded coverage.

Real-device round proof

Outdoor phone scoring, payment-app handoff, haptics, and push notification behavior still need device proof.

Durable realtime authority

Durable Object or WebSocket authority remains future work; current pages avoid unsupported sync-speed claims.