Pull Request
Purpose
Changes
Screenshots / Demos
Test Plan
npm run test:premergenpm run podman:doctorpasses when validating Podman-backed local flows- Same pre-merge gate run against
mainin a clean worktree when Worker or checkout logic changed - Manual smoke checklist completed for changed checkout / Worker flows (staging when available, otherwise documented local smoke fallback)
- Local Jekyll build ok
./scripts/test-e2e.sh --podmanpasses when browser checkout behavior changednpx playwright test tests/e2e/admin-dashboard.spec.ts --project=chromiumpasses when admin dashboard UI, i18n, accessibility, responsive behavior, or admin Worker contracts changednode --check assets/js/admin-dashboard.jspasses when dashboard JavaScript changed- First-party cart opens, no console errors
- Worker
/checkout-intent/startreturns the expected on-site custom-session bootstrap or hosted fallback response (test mode) - Pledge persistence stores tiers, support items, custom amount, and live totals refresh correctly
- Update Card flow still succeeds for active and
payment_failedpledges when touched - Countdown timers show correct values on page load (no “00 00 00 00” flash)
- Cron
workflow_dispatchcharges test pledges off‑session - Docs updated (if behavior or setup changed)
Security / Secrets
- No secrets committed
- Uses repo/Worker secrets only
- Admin dashboard changes do not expose/edit secret values; Secrets & credentials remains status-only
- Admin mutations preserve the intended storage path: GitHub-backed publish, KV-only Users save, KV-only saved referral codes, or read-only browse/export
Backward Compatibility
- No breaking content model changes
- If schema changes, updated
docs/DEV_NOTES.mdand sample campaigns - Existing campaign/add-on/tier/variant IDs are preserved unless the migration intentionally changes them