Files
quyun-v2/docs/seed_verification.md
2026-01-26 11:00:55 +08:00

57 lines
2.8 KiB
Markdown

# Seed Verification Guide (Staging)
## Service Startup (Local)
- Backend: `go run ./backend/main.go serve` (default `http://localhost:8080`).
- Portal frontend: `npm -C frontend/portal install` then `npm -C frontend/portal run dev` (default `http://localhost:5174`).
- Superadmin frontend: `npm -C frontend/superadmin install` then `npm -C frontend/superadmin run dev` (default `http://localhost:5173`).
- Portal dev server proxies `/v1` to `http://localhost:8080` (`frontend/portal/vite.config.js`).
- Superadmin dev server proxies `/super/v1` and `/v1` to `http://localhost:8080` (`frontend/superadmin/vite.config.mjs`).
## Chrome DevTools MCP
- Start Chrome with remote debugging: `google-chrome --remote-debugging-port=9222`.
- Use MCP to connect at `http://127.0.0.1:9222`.
- Open target URLs via MCP and run page-level assertions (no API-level calls required).
## Run Seed
- Execute `go run ./backend/main.go seed`.
- Ensure no panics; capture console output for troubleshooting.
## Data Validation (DB/Logs)
- Users: verify `creator`, `test`, `superadmin`, `negative` exist in `users.username`.
- Tenant: read `tenants.code` to obtain `tenantCode` (DB query or admin UI).
- Memberships: `tenant_users` includes `creator` as `tenant_admin`, `test` as `member`.
- Orders: `orders` has `content_purchase` + `withdrawal`, plus flagged/reconciled records.
- Ledger: `tenant_ledgers` has at least one row.
- Templates: `notification_templates` contains order/audit/interaction types.
## Portal Smoke (Use tenantCode)
- Tenant code: query DB, then open `http://localhost:5174/t/:tenantCode`.
- Login: OTP is fixed to `1234` (see `backend/app/services/user.go`).
- Home: `/t/:tenantCode` lists content.
- Detail: open any content detail; cover and main asset render.
- Login: sign in as `test` (phone `13800138000`, OTP `1234`) and open `/t/:tenantCode/me`.
- Orders & Library: `/t/:tenantCode/me/orders` and `/t/:tenantCode/me/library` show data.
- Likes/Favorites: content detail shows prefilled like/favorite; toggle to confirm.
- Notifications: `/t/:tenantCode/me/notifications` shows unread items.
## Superadmin Smoke
- Open `http://localhost:5173/super/auth/login`.
- Login: `superadmin` / `superadmin123`.
- Users: list includes `negative`; balance anomaly list returns result.
- Orders: list includes flagged/reconciled and refund orders.
- Withdrawals: list contains `created`/`paid`/`failed` statuses.
- Finance: ledger list has data; order anomaly list returns missing paid/refund items.
- Content/Reports: content list is populated; report list has pending item.
- Templates: order/audit/interaction templates present.
- System Configs: `site_name` and `support_email` present.
## Manual-Only Coverage
- Upload flow (init/part/complete) requires real storage integration; seed only preloads assets.