Update pricing UX, billing flows, and API rules

This commit is contained in:
Dwindi Ramadhana
2026-02-12 00:52:40 +07:00
parent cf065fab1e
commit a905256353
202 changed files with 22348 additions and 301 deletions

View File

@@ -0,0 +1,64 @@
# Dewemoji Extension Notes / To-Do
## Context (Why paused)
- GCM token registration appears blocked or flaky in unpacked mode.
- Diagnostics show: token missing + "Asynchronous operation is pending".
- Likely need Web Store (unlisted) install to validate GCM/FCM end-to-end.
---
## Priority A — GCM / Token
- Verify GCM/FCM token registration in a Web Store (unlisted) install.
- Confirm sender/project ID consistency across manifest + backend.
- Add dev-mode fallback token for local testing (unpacked).
- Add clear UI guidance when token missing (ex: “Unpacked builds may not support GCM”).
- Add retry + backoff messaging for token refresh.
## Priority B — Diagnostics
- Keep diagnostics visible in settings (done).
- Add “Force token refresh” with timeout (done).
- Add copy-to-clipboard for diagnostics output.
- Show last error + timestamp (done).
- Add quick “Open service worker console” helper link (optional).
## Priority C — License & Pro
- Verify license activation/deactivation flow with real API.
- Implement `/license/deactivate` endpoint and wire client.
- Add graceful handling for license server downtime.
- Confirm Pro actions (insert/auto) are blocked for free users.
## Priority D — Insert / Auto
- Validate content script injection across common sites.
- Improve detection when no editable element exists.
- Add clearer user feedback when insert fails.
## Priority E — Search / Performance
- Confirm caching + paging behavior is correct.
- Ensure auto-load sentinel doesnt duplicate results.
- Test daily usage cap flow (free users).
## Priority F — Tone UX
- Validate tone lock + preferred tone across sessions.
- Confirm policy list coverage vs Unicode updates.
- Accessibility checks for tone picker controls.
## Priority G — UI / UX Polish
- Improve keyboard navigation in settings.
- Add tooltips for Pro features + diagnostics.
- Ensure error banners are theme-consistent.
## Priority H — Release / Packaging
- Create unlisted Web Store listing for real-world testing.
- Document packaging flow + PEM usage for stable extension ID.
- Add release checklist (build, test, upload, verify).
## Priority I — Security / Privacy
- Verify minimum permissions in `manifest.json`.
- Document local vs sync data storage.
---
## Notes / Observations
- Unpacked installs often cant obtain GCM tokens.
- CRX install is blocked by Chrome unless via Web Store.