V1 Web PWA · Walk result

Journey result: Sign up and pay with crypto

A dated evidence record for V1 Web PWA: observed behavior, current source reconciliation, automation evidence, and explicit proof limits.

verdict: partial· 2026-05-29
4sections2 minread

On this page
  • Source: WALKTHROUGH/journeys/sign-up-and-pay-crypto.md
  • Walked: 2026-05-29 by Claude (Opus 4.8) against commit eff6655269 (+ fix)
  • Verdict: pass (surfaces) / partial (settlement) — all crypto-rail surfaces render and the BFF payment endpoints respond; live wallet settlement still needs a real merchant integration (documented external dependency).
  • Walker: /tmp/claude-oshun-lt-2-walkthrough/walk.mjs sign-up-and-pay-crypto
  • Runtime: prod build :3010 (Next 16.2.6) + BFF :4010 (USE_MOCK_ADAPTERS=true).

Summary#

Major improvement over the prior "blocked" walk. /billing exists, /billing/crypto renders, /aaa-upgrade renders, and the /v1/payments/* + /v1/entitlements/aaa BFF endpoints respond (added in goal-2/3). One genuine bug found and fixed: the /aaa-upgrade "Continue in Yemaya Studio" CTA pointed at the non-existent /welcome/yemaya (404 when authenticated). Repointed to /studio.

2026-06-28 issued-paywall support addendum#

The issued /billing/crypto paywall now exposes the same mailto:billing@oshun.app billing-support action as the pending invoice notice. billing-crypto-paywall.spec.ts verifies that the action is present as a single 44 px target on a real BFF-issued BTC address-visible paywall, on the USDC/Base disclosure gate before acknowledgement, and on the USDC/Base address-visible state after acknowledgement. The journey remains partial only for the external wallet/provider, rate-oracle, receipt-download, and return-to-gated-surface legs that are outside the local browser/BFF seam.

Steps#

  • Step 1 — Sign up: pass (lands /onboarding, session set).
  • Step 2 — /billing: pass (200; no longer the prior "Page not found").
  • Step 3 — /billing/crypto paywall: pass (renders; full rail hydration needs an ?invoice=<id> from a real merchant flow).
  • Step 4 — /aaa-upgrade entitlement bounce: pass — but surfaced the dead "Continue in Yemaya Studio" link (see Bug 1).
  • Step 5 — BFF crypto endpoints: pass (/v1/payments/*, /v1/entitlements/aaa respond; previously all 404).

Bugs found#

  1. Dead link: /aaa-upgrade/welcome/yemaya (404)apps/oshun/web/src/app/aaa-upgrade/page.tsx:54FIXED (→ /studio).
    • /welcome/yemaya has no route file; anonymous → 307→/welcome, authenticated → 404. The page's secondary CTA already used a real route (/studio/generation-gallery); the primary now points to /studio.
    • Severity: P2 (narrow, entitlement-gated surface).

Open questions#

  • Live crypto settlement (payment.invoice.confirmed/settled) still depends on a real merchant/wallet integration — see results/external-dependencies/crypto-merchant-settlement.md. The rail surfaces and BFF stubs are reachable; the settlement cascade is not exercisable headless.