3 个串行 phase(粒度 coarse,Option B 拆分): 1. 凭据槽位 API 客户端(CRED-FE-01)— 纯逻辑层,无 UI hint 2. RBAC 收敛 + AI 模型页入口(CRED-FE-02, CRED-FE-03)— UI hint yes 3. 编辑对话框 + 提交反馈(CRED-FE-04, CRED-FE-05)— UI hint yes REQUIREMENTS.md Traceability 段回填 5/5 映射;STATE.md 切到 Phase 1 待启动。 跨项目依赖:本仓库 Phase 3 端到端验收依赖 qy_lty 后端 v1.0 Phase 2 落地(commit 4637998)。
120 lines
5.9 KiB
Markdown
120 lines
5.9 KiB
Markdown
# Project State — 洛天依应用管理后台(qy-lty-admin)
|
||
|
||
**最后更新**: 2026-05-07(Milestone v1.0 通用凭据槽位前端集成 ROADMAP 落地,Phase 1 待启动)
|
||
|
||
## 项目引用
|
||
|
||
参见:`.planning/PROJECT.md`(更新于 2026-05-07)
|
||
|
||
**核心价值**:运营者能基于真实角色权限,安全且无障碍地管理后端各业务模块——`lib/permissions.ts` 的客户端 RBAC + qy_lty 后端服务端校验必须**配套生效**才完整。
|
||
|
||
**当前重点**:Milestone v1.0 通用凭据槽位前端集成 — `/ai-model` 页面新增凭据录入对话框,调用 qy_lty 后端 v1.0 的 `/api/v1/admin/credential-slot/` GET+PUT
|
||
|
||
## 当前位置
|
||
|
||
```
|
||
Milestone: v1.0 通用凭据槽位前端集成
|
||
Phase: Phase 1「凭据槽位 API 客户端」
|
||
Plan: —(待 /gsd-plan-phase 1 生成)
|
||
Status: 待启动(Not started)
|
||
Progress: [░░░░░░░░░░] 0%(0/3 phase 完成)
|
||
Last activity: 2026-05-07 — ROADMAP.md 落地、REQUIREMENTS.md Traceability 回填
|
||
```
|
||
|
||
**下一步行动**:运行 `/gsd-plan-phase 1` 把 Phase 1 拆解为可执行的 plan 节点。
|
||
|
||
## Phase 概览
|
||
|
||
| Phase | 标题 | 需求 | UI hint | 状态 |
|
||
|-------|------|------|---------|------|
|
||
| 1 | 凭据槽位 API 客户端 | CRED-FE-01 | — | 待启动 |
|
||
| 2 | RBAC 收敛 + AI 模型页入口 | CRED-FE-02, CRED-FE-03 | yes | 未开始 |
|
||
| 3 | 编辑对话框 + 提交反馈 | CRED-FE-04, CRED-FE-05 | yes | 未开始 |
|
||
|
||
## 联动 milestone
|
||
|
||
- **qy_lty 后端 v1.0「通用凭据槽位」**:3 个 phase(数据层 → 管理端读写 → 客户端读取+脱敏)
|
||
- 本仓库 Phase 1(API 客户端)**不阻塞**,可在后端联调前以 mock 推进
|
||
- 本仓库 Phase 3(端到端串联 success criteria #5)**强依赖** 后端 Phase 2「管理端读写接口」落地
|
||
- 节奏建议:本仓库 Phase 1-2 与后端 Phase 1-2 并行;本仓库 Phase 3 收尾节奏与后端 Phase 2 完工对齐
|
||
|
||
## 性能指标
|
||
|
||
| 指标 | 数值 |
|
||
|------|------|
|
||
| 已完成 phase | 0 / 3 |
|
||
| 已完成 plan | 0 / TBD |
|
||
| Milestone 进度 | 0% |
|
||
| 启动日期 | 2026-05-07 |
|
||
| 最近活动 | 2026-05-07 ROADMAP.md 落地 |
|
||
|
||
## 累积上下文
|
||
|
||
### 关键决策
|
||
|
||
- **2026-05-07 phase 拆分(Option B / 3 phase)**:API 客户端独立成 Phase 1(无 UI),权限矩阵 + 入口控件合并为 Phase 2(UI),编辑对话框 + 反馈合并为 Phase 3(UI)。理由:Phase 1 是纯逻辑、可在后端联调前独立打磨;Phase 2 一旦完成,未授权角色即彻底看不到入口(安全前置);Phase 3 集中处理"留空保留旧值"语义这条最容易翻车的业务规则。
|
||
- **2026-05-07 跨项目依赖明确**:前端 phase 不阻塞代码编写,但端到端验收依赖 qy_lty 后端 Phase 2(管理端读写接口)落地;本仓库 Phase 3 收尾节奏与后端 Phase 2 完工对齐。
|
||
- **2026-05-07 表单"留空保留旧值"语义**:后端 GET 返回的是末 4 位脱敏掩码,前端**绝不**能把掩码当真值再 PUT 回去;Phase 3 success criteria #2 显式约束。
|
||
|
||
### 待办事项
|
||
|
||
(暂无;待 plan 生成后补齐)
|
||
|
||
### 阻塞项
|
||
|
||
(无)
|
||
|
||
### 风险项
|
||
|
||
- 后端 Phase 2(管理端读写接口)若延期,本仓库 Phase 3 的 success criteria #5(端到端串联)无法验证;需要并行盯好后端进度,必要时以 mock 服务先验证 Phase 1-2。
|
||
- 前端权限矩阵仅是 UI 礼貌(参见 PROJECT.md 关键决策表),后端必须独立校验 `/api/v1/admin/credential-slot/` 的角色权限;该闭环是 PERM-06 的范畴,本 milestone 不消化但需要在端到端验收时顺带确认后端是否对该接口实施了角色校验。
|
||
|
||
## 状态总览
|
||
|
||
| 项目 | 状态 |
|
||
|------|------|
|
||
| 代码库映射 | ✅ `.planning/codebase/` 7 文档(commit `a85b6a7`) |
|
||
| PROJECT.md | ✅ 已加入 Milestone v1.0 段 + Active 5 项 |
|
||
| REQUIREMENTS.md | ✅ Active 段已落地,Traceability 已回填 5/5 |
|
||
| 路线图 | ✅ ROADMAP.md 落地(3 phase,coarse) |
|
||
| 当前 phase | Phase 1 待启动 |
|
||
| 当前 milestone | v1.0 通用凭据槽位前端集成 |
|
||
|
||
## 会话连续性
|
||
|
||
**最近会话**:2026-05-07
|
||
**最近动作**:roadmapper 生成 ROADMAP.md(3 个 phase,Option B 拆分)+ 回填 REQUIREMENTS.md Traceability(5/5)+ 切换 STATE.md 到 Phase 1 待启动
|
||
**下一会话起点**:`/gsd-plan-phase 1` 启动 Phase 1 规划
|
||
|
||
## 工作流配置
|
||
|
||
详见 `.planning/config.json`:
|
||
|
||
- 模式:**YOLO**(自动通过审批,直接执行)
|
||
- 粒度:**Coarse**(本期 milestone 拆为 3 phase)
|
||
- 并行化:**已启用**
|
||
- 工作流 agent:research / plan_check / verifier 全部启用
|
||
- 模型档位:**balanced**(Sonnet 主力)
|
||
- `.planning/` 提交到 git:**是**(提交至父级 `Lila-Server\` 仓库)
|
||
|
||
随时可用 `/gsd-settings` 调整。
|
||
|
||
## 锚定路径重要说明
|
||
|
||
`.planning/` 必须保持在 `c:\Users\admin\Desktop\Lila-Server\qy-lty-admin\` 这一层(**不是父级 `Lila-Server\`**)。父级 `.git` 容易让 GSD CLI 误把 `Lila-Server` 当作 project_root;本目录的存在就是锚定信号,不要删。
|
||
|
||
`qy-lty-admin\` 自身**没有** `.git`——版本控制由父级 `Lila-Server\.git` 统一管理。任何 `.planning/` 工件的提交都通过父仓库进行;**不要**在 `qy-lty-admin\` 内执行 `git init`,否则会形成嵌套仓库与父仓库冲突。
|
||
|
||
## 项目规则提醒
|
||
|
||
CLAUDE.md 中两条强制规则,做任何 phase 时必须遵守:
|
||
|
||
1. **沟通语言**:所有面向用户的回复使用中文(CLAUDE.md 顶部「语言」要求 + 跨项目约定)
|
||
2. **修改记录**:每次代码 / 配置 / `package.json` / Dockerfile / CI / 文档结构性改动 **必须**追加到 `docs/修改记录.md` 顶部(CLAUDE.md「项目修改记录规则」节)
|
||
|
||
`qy-lty-admin` 与 `qy_lty` 是独立项目,修改记录互不混合,跨项目联动两端各写一条互相引用对方的条目。
|
||
|
||
---
|
||
|
||
*2026-05-07 由 gsd-roadmapper 切换到 Phase 1 待启动状态*
|