web/docs/deployment/local-e2e-smoke.md

1.5 KiB

Local E2E Smoke (Launcher + Secret API)

This smoke path validates wallet intent, membership, member channel, and governance install flow locally before live server wiring.

1) Start Secret API

cd "/Users/vsg/Documents/VSG Codex/web/backend/secretapi"
cp .env.example .env.local
go run .

Default bind is http://127.0.0.1:8080.

2) Start Launcher Harness

cd "/Users/vsg/Documents/VSG Codex/launcher"
make serve

Open http://127.0.0.1:4310.

3) Run Deterministic Flow

  1. Enter wallet + chain id.
  2. Click Create intent.
  3. Sign typed data in local wallet tooling and paste signature.
  4. Click Verify signature.
  5. Click Get quote.
  6. Confirm tx hash (local/test hash if RPC verification disabled).
  7. Click Confirm membership tx.
  8. Register member channel and poll events.
  9. Ack an event.
  10. Request governance install token and check install status.

4) Expected Results

  1. Membership status resolves to active.
  2. Event polling returns deterministic event envelopes with stable event_id.
  3. Event ack is idempotent for event_id + device_id.
  4. Owner role can open support ticket; workspace member is rejected with owner_role_required.
  5. Governance install token is owner-gated and blocked when availability is parked.

5) Troubleshooting

  1. If CORS fails, set SECRET_API_ALLOWED_ORIGIN=* locally.
  2. If tx confirmation blocks, set SECRET_API_CHAIN_RPC_URL= empty for local non-chain smoke.
  3. If member channel returns membership_inactive, re-run wallet intent/verify and membership confirm.