first commit
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
## 1. Platform Env Bootstrap
|
||||
|
||||
- [x] 1.1 Add a small dotenv loader in `platform/config` that reads local `.env` files without overriding explicit process environment values.
|
||||
- [x] 1.2 Add config tests for `platform/.env` MySQL settings, process env precedence, and missing DSN behavior through storage initialization.
|
||||
|
||||
## 2. Personal Settings Workspace
|
||||
|
||||
- [x] 2.1 Add a first-party personal settings route, page id, registry entry, and navigation entry point for authenticated users.
|
||||
- [x] 2.2 Move profile, theme palette, background preset, uploaded background, and logout controls from the sidebar popover into the new page.
|
||||
- [x] 2.3 Keep profile and theme saves wired to current-user APIs and show API vs local fallback persistence state.
|
||||
- [x] 2.4 Add/update frontend tests for routing, shell account navigation, and profile/theme API calls.
|
||||
|
||||
## 3. Verification
|
||||
|
||||
- [x] 3.1 Run `cd platform && go test ./config ./api ./service ./repo -count=1`.
|
||||
- [x] 3.2 Run `cd platform_web && npm run typecheck && npm test && npm run build`.
|
||||
- [x] 3.3 Run `scripts/check-structure.sh`.
|
||||
- [x] 3.4 Run `openspec validate fix-env-profile-settings --strict`.
|
||||
- [x] 3.5 Perform a browser walkthrough for the personal settings page and record the result.
|
||||
|
||||
## Verification Evidence
|
||||
|
||||
- 2026-07-07: `cd platform && go test ./config ./api ./service ./repo -count=1` passed.
|
||||
- 2026-07-07: `cd platform_web && npm run typecheck` passed.
|
||||
- 2026-07-07: `cd platform_web && npm test` passed with 11 files / 47 tests.
|
||||
- 2026-07-07: `cd platform_web && npm run build` passed and Vite produced `dist/` assets.
|
||||
- 2026-07-07: `scripts/check-structure.sh` passed.
|
||||
- 2026-07-07: `openspec validate fix-env-profile-settings --strict` reported the change is valid; PostHog telemetry flush failed due restricted DNS and did not affect validation.
|
||||
- 2026-07-07: Started `cd platform_web && npm run dev -- --port 5173`; Vite served the app at `http://127.0.0.1:5174/` because 5173 was occupied. Browser walkthrough could not be completed in this tool session because no in-app browser/Chrome control tool or local Playwright/Puppeteer dependency was exposed.
|
||||
- 2026-07-08: Rechecked task `3.5` before generating the next architecture-stream OpenSpec. The browser walkthrough remains explicitly blocked in this session: an in-app browser connection opened the auth page at `http://127.0.0.1:5177/`, but DOM snapshot capture failed with `TypeError: o.incrementalAriaSnapshot is not a function`; the fallback-enabled dev server then failed to bind requested localhost ports with `listen EPERM` for `127.0.0.1:5180`, `127.0.0.1:5173`, and `127.0.0.1:5177`. The walkthrough is not accepted; it must be rerun manually or in a working browser/dev-server session before closing this change.
|
||||
- 2026-07-08: Browser walkthrough accepted after starting the platform API with file storage at `127.0.0.1:18080` and using the existing Vite dev server at `127.0.0.1:5173`. Logged in with the seeded API-backed platform administrator `operator.local@example.test`, landed on `#/home`, opened `#/profile`, verified `个人设置` showed `API 已连接`, `Operator`, `operator.local@example.test`, `active`, and platform-admin navigation. Edited the contact note to `api walkthrough verified 2026-07-08`, clicked `保存资料`, observed `个人资料已保存到数据库`, reloaded `#/profile`, and confirmed the note value persisted through the API-backed session.
|
||||
Reference in New Issue
Block a user