fix: address final review findings — lint, Node engine, remaining-work doc, create-rule validation

This commit is contained in:
belviskhoremk
2026-08-05 00:35:50 +00:00
parent 9ec17d36f9
commit 5821b630f6
5 changed files with 103 additions and 4 deletions

View File

@@ -0,0 +1,39 @@
# Phase 2A — Remaining work before this backend goes live
This backend (Firestore, Storage, Cloud Functions) was built entirely with placeholder
values because Task 1 of `docs/superpowers/plans/2026-08-04-phase2a-backend-foundation.md`
(manual Firebase/Resend account setup) hadn't been done yet. Before deploying for real:
## 1. Complete Task 1 of the plan
Create the Firebase project, upgrade to Blaze, enable Firestore/Auth/Storage,
create Mira's admin user, register a web app, create a Resend account + API key,
authenticate the Firebase CLI. Full instructions are in the plan's Task 1.
## 2. Replace these 4 placeholder values with real ones from Task 1
| Placeholder | Real value goes in | Also appears in |
|---|---|---|
| `demo-braids-by-mira` (fake project id) | `.firebaserc` | `package.json`'s `test:rules` script, `firebase-tests/firestore.rules.test.ts` |
| `dev-admin-placeholder-uid` (fake admin UID) | `firestore.rules`, `storage.rules` | `firebase-tests/firestore.rules.test.ts` |
| `bookings@braidsbymira.com` (placeholder from-address) | `functions/src/index.ts` (`FROM_ADDRESS`) | — must match a Resend-verified sending domain |
| `hello@braidsbymira.com` (placeholder Mira email) | `functions/src/index.ts` (`MIRA_EMAIL`) | — replace only if Mira's real notification inbox differs |
Also update `.env.local` (gitignored, not committed) with the real Firebase web app
config from Task 1, Step 5 — copy `.env.example` if you haven't already.
## 3. Run the one manual CLI step Task 6 skipped
```bash
npx firebase-tools functions:secrets:set RESEND_API_KEY
```
## 4. Run Task 8 of the plan
Deploy rules + functions, seed production data, and run the two live smoke tests
(create a real booking/inquiry document, confirm `bookedSlots` updates and email
arrives). Full steps are in the plan's Task 8.
## 5. Delete this file
Once all of the above is done and verified, delete this file — it's a temporary
tracking note, not permanent documentation.