docs(waitlist): add implementation TODOs summary + commit links to roadmap
This commit is contained in:
parent
6a996cc11d
commit
b9b4822cad
@ -292,7 +292,7 @@ User visits pre-launch page
|
||||
- Container: `waitlist`, partition key: `/email`
|
||||
- Also added 13 previously missing containers to `CONTAINER_DEFS`
|
||||
- [x] **2.5** Register routes in `src/server.ts` — [`2692c91`](https://github.com/saravanakumardb1/learning_ai_common_plat/commit/2692c91)
|
||||
- [x] **2.6** Write unit tests (45 tests passing) — _next commit_
|
||||
- [x] **2.6** Write unit tests (45 tests passing) — [`6a996cc`](https://github.com/saravanakumardb1/learning_ai_common_plat/commit/6a996cc)
|
||||
- File: `src/modules/waitlist/waitlist.test.ts`
|
||||
- Schema validation, email normalization, status transitions, route exports
|
||||
- [x] **2.7** Add admin role guard to all admin endpoints — [`2692c91`](https://github.com/saravanakumardb1/learning_ai_common_plat/commit/2692c91)
|
||||
@ -474,3 +474,37 @@ services/platform-service/src/modules/waitlist/
|
||||
- Con: adds friction, requires email delivery infrastructure
|
||||
- [ ] Should the product status transition be strictly sequential or allow admin override?
|
||||
- Current design: suggest validation but allow admin override. Document both options.
|
||||
|
||||
---
|
||||
|
||||
## 11. Implementation TODOs (Deferred — Needs Review)
|
||||
|
||||
These TODOs were marked during implementation. They are **in the code as comments** and need your decision before wiring up.
|
||||
|
||||
| # | Location | Description | Blocker? |
|
||||
| ---------- | ---------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------- |
|
||||
| **TODO-1** | `routes.ts` — join endpoint | **CAPTCHA validation**: When `prelaunchConfig.captchaEnabled` is true, we need to verify `captchaToken` against the configured provider (Turnstile/hCaptcha/reCAPTCHA). Requires: provider API keys, HTTP call to verify endpoint. Currently skipped — signup works without CAPTCHA. | No — rate limiting is in place as interim protection |
|
||||
| **TODO-2** | `routes.ts` — delete, invite, export endpoints | **Audit log wiring**: Admin actions (delete entry, batch invite, CSV export) should create audit log entries via the existing `audit/` module. Currently commented out — needs `auditRepo.create()` calls. | No — actions work, just not logged |
|
||||
| **TODO-3** | `routes.ts` — batch invite endpoint | **Invitation code auto-generation**: Batch invite currently marks entries as `invited` but does NOT auto-generate invitation codes via the `invitations/` module. The `invitationCodeId` field stays empty. Need to call `invitations/repository.ts` `create()` for each entry. | Yes — invited users won't have a code to redeem until this is wired |
|
||||
|
||||
### Remaining Unchecked Roadmap Items
|
||||
|
||||
| Task | Phase | Status | Notes |
|
||||
| ------- | ---------------------------------- | ----------- | --------------------------------------------------------------- |
|
||||
| 3.2 | Referral stats in stats endpoint | Not started | Add referral-specific aggregations to `GET /api/waitlist/stats` |
|
||||
| 3.4 | Referral leaderboard endpoint | Not started | Optional — `GET /public/waitlist/:productId/top-referrers` |
|
||||
| 3.5 | Referral integration tests | Not started | Circular/self-referral prevention tests |
|
||||
| 4.2 | Notifications email delivery | Not started | Depends on email provider (SendGrid/SES/Azure Comms) |
|
||||
| 4.3 | Invitation redemption → conversion | Not started | Hook `dispatchInvitationRedeemed` → update waitlist entry |
|
||||
| 4.4 | Batch invite + conversion tests | Not started | Depends on TODO-3 |
|
||||
| 5.1–5.4 | Admin dashboard UI | Not started | Waitlist management page, stats widget, config editor |
|
||||
| 6.1–6.4 | Public signup page frontend | Not started | Responsive signup form, confirmation, status check |
|
||||
| 7.1–7.8 | Analytics & polish | Not started | Time series, CSV export, CAPTCHA, email delivery |
|
||||
|
||||
### Summary of Commits
|
||||
|
||||
| Commit | Description |
|
||||
| --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------ |
|
||||
| [`66e657a`](https://github.com/saravanakumardb1/learning_ai_common_plat/commit/66e657a) | Phase 1: Product status lifecycle + prelaunchConfig types |
|
||||
| [`2692c91`](https://github.com/saravanakumardb1/learning_ai_common_plat/commit/2692c91) | Phase 2: Waitlist module (types, repo, routes, webhooks, cosmos-init, server registration) |
|
||||
| [`6a996cc`](https://github.com/saravanakumardb1/learning_ai_common_plat/commit/6a996cc) | Tests (45 passing) + doc checkboxes + .env.example webhook vars |
|
||||
|
||||
Loading…
Reference in New Issue
Block a user