SkateSpots/docs/QA_MATRIX.md
SkateSpots c8428f2f78
Some checks are pending
Deploy to GitHub Pages / deploy (push) Waiting to run
release: 1.7.88
2026-11-02 17:43:04 +07:00

3.1 KiB
Raw Blame History

SkateSpots QA matrix

Last updated: 2026-11-02
App release under test: 1.7.88 (versionCode 10788)

This is a best-effort test record, not a certification. “PASS” means the named check was actually run in this environment. Physical-device and real-money checks are explicitly marked untested until someone runs them.

Automated / web

Area Check Result Evidence
Build gate npm test (install, app/server typechecks, ESLint, i18n, 172 Vitest tests, production Vite build) PASS 2026-11-02
Production boot node scripts/smoke-test.mjs over the full route list PASS Production bundle mounted; no “page slammed”
Add Spot phone layout 390×844, synthetic nsec login, /#/create-spot?lat=48.8566&lng=2.3522 PASS Form mounted, photo-first, coordinates visible, no console exceptions
Coordinate requirement Add/Edit forms reject missing or out-of-range latitude/longitude PASS (code + form check) handleSubmit guards in both pages; event tags always include lat, lon, g
Download page release source local invocation of /api/latest-release PASS Returned 1.7.86, correct APK URL, 7890f290… checksum
PWA/static assets production leaflet/manifest assets served PASS (smoke) Build and route boot

Release channels

Channel Version Result Notes
Web 1.7.88 PASS Production deploy from 06c1d64
Zapstore 1.7.88 PASS Release event + current icon on relay
Forgejo 1.7.88 PASS APK + .sha256 assets
F-Droid self-hosted repo 1.7.88 PASS index-v2.json lists versionCode 10788
Download page dynamic PASS Live /api/latest-release returns 1.7.88; static fallback is 1.7.88

Still requires a real device

Mark the following only after testing on actual hardware. They are not web tests.

  • Stock Android: install over 1.7.85, launch, add a spot, edit it, coordinates required.
  • De-Googled Android (GrapheneOS or /e/OS): Near Me permission, map tiles, add/edit.
  • Amber sign-in, signed publish, reject/cancel flow.
  • Bunker signer and nsec sign-in.
  • Android hardware Back, deep links, app links.
  • Offline map/tiles and offline publish queue.
  • Local notifications and background delivery (standard/fast).
  • Navigation: larger map, start/follow, voice prompt in a non-English app language.
  • Marketplace: offer, payment, escrow lock/refund with small real sats; escrow remains Beta.
  • Ownership: claim, transfer, rejected/expired claim.
  • F-Droid client: add repo, install/update over the existing signature.

Known gaps / risks

  • The self-hosted F-Droid repo now has 1.7.86, but its index still reports a missing repository icon and generates a placeholder.
  • No formal external security audit has been completed.
  • Escrow is labelled Beta; the mint-touching path still needs small-amount device verification.
  • Translation speed/memory on low-end phones is not verified.
  • Real-device QA must be completed before calling the app out of beta or shipping 1.0.0.