From bcf8dd9cb5f3b6c3f98be25bd917f742ee68ab17 Mon Sep 17 00:00:00 2001 From: xiaomai Date: Thu, 7 May 2026 09:51:28 +0800 Subject: [PATCH] docs: finalize SSR migration documentation Remove the temporary SSR migration tasklist and workflow instructions. Update project context to reflect that Nuxt SSR is now fully enabled. --- AGENTS.md | 23 ++++----------- SSR_MIGRATION_TASKLIST.md | 60 --------------------------------------- 2 files changed, 6 insertions(+), 77 deletions(-) delete mode 100644 SSR_MIGRATION_TASKLIST.md diff --git a/AGENTS.md b/AGENTS.md index 8e4a48d..1c8dd07 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -15,12 +15,11 @@ For any non-trivial task: 1. **Read `DESIGN.md`** -2. While `SSR_MIGRATION_TASKLIST.md` exists, **also read `SSR_MIGRATION_TASKLIST.md`** and keep SSR migration work aligned with it. -3. For UI, component, layout, or styling tasks, **also read `DesignGuidelines.html`** -4. **Produce a short plan (no code)** -5. Wait for approval -6. Implement in small steps -7. Run lightweight validation when practical (lint/typecheck). Do not run tests in WSL. +2. For UI, component, layout, or styling tasks, **also read `DesignGuidelines.html`** +3. **Produce a short plan (no code)** +4. Wait for approval +5. Implement in small steps +6. Run lightweight validation when practical (lint/typecheck). Do not run tests in WSL. Do NOT skip planning. @@ -28,16 +27,6 @@ For documentation-only tasks, still follow the planning workflow, but do not run --- -## Temporary SSR Migration Workflow - -* `SSR_MIGRATION_TASKLIST.md` is the active task list for completing the Nuxt SSR migration. -* Until that migration is fully implemented and validated, every task that touches frontend routing, auth, API fetching, i18n, SEO, Docker frontend deployment, Nuxt config, or SSR/client runtime behavior must read and follow `SSR_MIGRATION_TASKLIST.md`. -* Update task checkboxes in `SSR_MIGRATION_TASKLIST.md` only when the corresponding implementation is actually complete and validated. -* Do not delete `SSR_MIGRATION_TASKLIST.md` early. Delete it only after the project is fully migrated to the final SSR deployment model, validation is complete, and `DESIGN.md` reflects the final behavior. -* When deleting `SSR_MIGRATION_TASKLIST.md`, also remove this Temporary SSR Migration Workflow section and the mandatory workflow step that requires reading the task list. - ---- - ## Project Context * Goal: Pokopia Wiki, a community-editable game wiki. @@ -45,7 +34,7 @@ For documentation-only tasks, still follow the planning workflow, but do not run * Runtime baseline: Node.js >= 22. * Frontend: - * Nuxt SPA mode currently (`ssr: false`), with SSR migration tracked in `SSR_MIGRATION_TASKLIST.md` + * Nuxt SSR enabled (`ssr: true`) * Vue * Vue Router * Vue I18n diff --git a/SSR_MIGRATION_TASKLIST.md b/SSR_MIGRATION_TASKLIST.md deleted file mode 100644 index 3acb207..0000000 --- a/SSR_MIGRATION_TASKLIST.md +++ /dev/null @@ -1,60 +0,0 @@ -# SSR Migration Remaining Tasks - -This temporary file tracks only the work still required before the Nuxt SSR migration can be considered complete. - -Delete this file only after all items below are complete and `AGENTS.md` no longer needs the temporary SSR migration workflow. - -## Remaining Work - -- [ ] Run production Docker validation with `docker compose up --build`. -- [ ] Fix any Docker runtime errors from the production SSR container, frontend gateway, backend API, or SSR server-to-backend API connection. -- [ ] Verify anonymous SSR HTML for public routes contains meaningful public business content and route/detail metadata: - - `/` - - `/pokemon` - - `/event-pokemon` - - `/habitats` - - `/event-habitats` - - `/items` - - `/event-items` - - `/ancient-artifacts` - - `/recipes` - - `/checklist` - - `/dish` - - `/life` - - `/life/:id` - - `/profile/:id` - - `/project-updates` -- [ ] Verify generated HTML, Nuxt payloads, API responses used by SSR, metadata, and logs do not expose password hashes, session token hashes, verification/reset token hashes, private current-user data on public pages, role internals, permission internals, internal audit payloads, debug fields, stack traces, or implementation notes. -- [ ] Verify localized SSR reads and metadata follow the `DESIGN.md` fallback order: requested locale, default-language translation, then base field. -- [ ] Verify auth and permission route behavior with SSR enabled: - - anonymous users redirect from protected routes to login - - unverified users cannot access verified-only write flows - - users missing permissions cannot access permissioned routes - - current-user reads expose only fields allowed by `DESIGN.md` -- [ ] Verify hydrated logged-in flows still work: - - login - - logout - - Remember me - - `/profile` - - notifications - - route-backed create/edit modals - - uploads - - Life comments/reactions - - entity discussion comments - - admin access -- [ ] Verify browser-only UI behavior runs only on the client and remains stable after hydration: - - modal focus and body locking - - dropdown positioning - - scroll/resize listeners - - infinite-scroll sentinels - - clipboard actions - - `window.confirm` actions - - notification WebSocket - - upload file APIs -- [ ] Verify route-backed modal pages preserve underlying page context and avoid unwanted scroll jumps. -- [ ] Verify `robots.txt`, `sitemap.xml`, canonical URLs, `noindex` routes, Open Graph, Twitter card, and public detail metadata in the production runtime. -- [x] Remove legacy SPA-only compatibility paths once SSR behavior is stable. -- [x] Remove obsolete `VITE_*` fallback support after deployment has fully moved to documented `NUXT_*` variables. -- [x] Update `DESIGN.md` if final behavior differs from the current documented SSR deployment, auth, SEO, or environment-variable model. -- [ ] Update `AGENTS.md` to remove the temporary SSR migration workflow and the requirement to read this task list. -- [ ] Delete `SSR_MIGRATION_TASKLIST.md`.