Commit Graph

95 Commits

Author SHA1 Message Date
Script Generator
5bbcf02962 fix: 计划任务勾选逻辑 + 胶囊进度计算修正
1. 必须点击"开始"后才能勾选任务:
   - 调研/产品方案/UI设计的 checkbox 加 disabled 判断
   - plan.status !== 'in_progress' 时不可交互

2. 调研勾选改为二态(与产品/UI一致):
   - 去掉三态循环(pending→in_progress→completed)
   - 改为 toggle:未完成 ↔ 已完成
   - 显示文字也简化为"已完成"/"未完成"

3. 胶囊进度百分比计算修正:
   - 旧逻辑:所有子任务合并计算(新建空任务导致分母为0返回0%)
   - 新逻辑:以 plan 为单位加权计算
     - completed 的 plan = 权重 1
     - in_progress 的 plan = 子任务完成率
     - pending 的 plan = 权重 0
   - 公式:sum(weights) / plan_count * 100
   - 新建一个 pending 的 plan 不会把已完成的 100% 打回 0%

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-15 15:31:21 +08:00
Script Generator
0a83ab8816 fix: 关联需求添加人显示"系统添加" + 开发状态列 + 开发中不可移除
1. 添加人字段:无值时显示"系统添加"而非"-"
2. 新增"开发状态"列:从 linkage-engine 推导
3. 开发中的需求:移除按钮替换为"开发中"文字提示
4. 去掉"描述"列(表格更紧凑)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-15 15:17:24 +08:00
Script Generator
43d3f76e6a feat: 需求池重构 + 联动引擎 + 开发状态推导
架构:新建 lib/linkage-engine.ts 联动引擎
- deriveReqDevStatus(): 从 devTasks 推导需求开发状态
- canEditRequirement(): 开发中的需求不可编辑
- checkVersionChangeRisk(): 版本变更风险检查
- 所有跨模块推导逻辑集中在此文件

功能改动:
1. 导航改名"需求"→"需求池"
2. 新建需求:所属产品/项目必填,移除产品负责人字段
3. 需求表格新增"开发状态"列:
   未排期/待开发/开发中/已完成(从 devTasks 实时推导)
4. 开发中的需求:编辑按钮禁用
5. 需求设 versionId → 版本详情关联需求天然兼容
   (版本详情通过 filter(r.versionId === versionId) 读取)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-15 15:09:02 +08:00
Script Generator
b30c460571 fix: 概览排版优化 + 加班原因改为饼图
1. 参与人员/相关链接排版修复:
   - 去掉 grid-cols-3 不等高布局
   - 改为:总耗时独占一行 + 参与人员/相关链接并排双列
   - 不再有被撑高留空白的问题

2. 加班原因占比改为环形饼图:
   - SVG 环形饼图 + 右侧图例
   - 各原因用不同颜色区分
   - 图例显示名称 + 百分比

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-15 14:40:10 +08:00
Script Generator
2c1b68c46f fix: 创建版本时自动将创建者加入 members
确保新创建的版本 members 中包含当前用户,
否则创建后自己就看不到这个版本了。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-15 14:32:32 +08:00
Script Generator
c8d2bfdd51 feat: 版本总耗时实际数据 + 参与人员管理 + 链接聚合 + 权限控制
1. 版本总耗时改用实际数据:
   - 开始日期取所有阶段最早 actualStartAt
   - 预计截止显示 expectedReleaseDate
   - 实际截止取所有阶段最晚完成时间
   - 逾期天数 = 实际截止 - 预计截止(红色标签)

2. 参与人员管理:
   - 新增"设置"按钮打开管理弹窗
   - 可选角色(产品/UI/前端/后端/测试)+ 人员
   - 添加/删除成员,保存到 version.members

3. 相关链接从 plans 成果聚合:
   - 按调研/产品方案/UI设计分组
   - 展示所有已完成 plan 的 resultUrl + resultFileName
   - 不再是固定3个链接

4. 权限控制:
   - 版本详情页校验当前用户是否在 members 中
   - 版本列表页只显示当前用户参与的版本
   - members 为空时所有人可见(兼容旧数据)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-15 14:23:11 +08:00
Script Generator
101a6be9b7 fix: Bug详情图片放大关闭不影响抽屉 + 仅修复人可操作
1. Lightbox 点击关闭时 stopPropagation,不会冒泡关闭 drawer
   - 点击背景关闭图片
   - 新增右上角 X 关闭按钮
   - 点击图片本身不触发关闭

2. 仅当前修复人(assigneeId)可操作 Bug:
   - 只有当前用户 === bug.assigneeId 时显示状态流转按钮和转交按钮
   - 其他人查看时显示提示"仅修复人可操作"

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-15 13:45:08 +08:00
Script Generator
273182bb0f feat: Bug 图片上传 + 转交 + 操作日志 + 开发中含自测
1. 开发中统计包含 in_progress + testing(自测)

2. Bug 支持上传图片:
   - BugCreateModal 加宽为 max-w-2xl
   - 新增拖拽/点击上传图片区域,转 base64 存储
   - 上传后可预览缩略图、可删除
   - BugDetailDrawer 展示截图列表,点击可放大

3. Bug 支持转交:
   - BugDetailDrawer 操作栏新增"转交"按钮
   - 选人下拉 + 备注输入 → 确认转交
   - transferBug store 方法:更新 assigneeId + 追加日志

4. Bug 操作日志:
   - BugLog interface: create/status_change/transfer/resolve
   - createBug 时记录创建日志
   - changeStatus 时记录状态变更/修复日志
   - transferBug 时记录转交日志
   - BugDetailDrawer 底部展示操作时间线

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-15 13:37:01 +08:00
Script Generator
0ed7ff1d53 refactor: 版本概览重新排版
1. 去掉顶部 Tag Row(P0/进行中/规划中/100健康/负责人缺失等标签)
   因为状态胶囊已经展示了阶段信息

2. 概览内容重新排列:
   - 风险详情(最上方)
   - 统计卡片:关联需求/待调研/待方案设计/待开发/开发中/未关闭Bug/加班时长
   - 状态胶囊
   - 项目总耗时 + 参与人员 + 相关链接
   - 加班时长排名 + 加班原因占比
   - 阶段耗时 + 个人耗时排名
   - 健康趋势(注释掉,代码保留)

3. 统计卡片去掉"开发任务"和"测试用例"
   新增"待调研"和"待方案设计"

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-15 13:19:52 +08:00
Script Generator
342fff7f06 refactor: 去掉"联调"阶段,新增"BUG"阶段胶囊
- Stage 类型去掉 integration,新增 bug
- 胶囊条:调研 → 产品设计 → UI设计 → 开发 → 测试 → BUG → 上线
- BUG 阶段进度 = 已关闭Bug / 总Bug
- 全部关闭 = done(绿色),有Bug未关闭 = active(蓝色)
- 版本列表/项目详情的阶段筛选同步去掉联调

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-15 10:18:17 +08:00
Script Generator
c7f49ad51c refactor: 胶囊条改为纯进度展示,去掉"当前阶段"和"阶段耗时"
胶囊条 CapsuleStages 重构:
- 去掉 currentStage/progress 旧 props
- 每段只显示进度百分比 + 状态颜色(idle/active/done)
- 支持并行阶段(多个可同时 active)
- 数据由实际 PlanTask/DevTask/TestCase 状态驱动

进度数据来源:
- 调研:任务完成数 / 总数
- 产品/UI:需求完成数 / 关联数
- 开发:DevTask 进度(STATUS_PROGRESS 加权)
- 测试:已执行用例 / 总用例

版本列表页:
- 去掉"当前阶段"和"阶段进度"两列
- 替换为"状态"列(显示版本状态标签)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 17:16:23 +08:00
Script Generator
3fd07dda71 feat: 版本详情完善关联关系处理
1. 删除版本时清理所有孤儿数据:
   - 释放关联需求回需求池
   - 删除计划任务(调研/产品/UI)
   - 删除开发任务
   - 删除测试用例
   - 删除 Bug

2. Header 面包屑链路化:
   版本 / 产品名(可点击) / 项目名 / 版本名
   点击产品名跳转产品页

3. 概览统计卡片增加完整链路数据:
   关联需求 | 计划任务 | 开发任务 | 测试用例 | 待开发 | 开发中 | 未关闭Bug | 加班时长

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 16:59:59 +08:00
Script Generator
e92ec4eb0e fix: formatDuration 时间差为0时显示0h而非1天
之前 hours=0 时会落到 days 分支显示"1天",实际是开始和完成时间相同。
现在统一按小时数判断,不到1天显示Xh,整天显示X天。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 16:43:54 +08:00
Script Generator
feba142ee9 fix: 调研/产品/UI 改为手动点击"开始"触发计时
去掉"到了计划日期自动变进行中"的逻辑,改为用户手动点击:
- pending 状态显示蓝色"开始"按钮
- 点击后记录 actualStartAt(精确时间戳)
- 进行中才显示"完成"按钮

跟开发/测试逻辑一致:状态由用户主动触发,时间戳准确。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 16:38:03 +08:00
Script Generator
7af9206bec fix: 调研/产品/UI 实际耗时改为精确时间戳显示和计算
- PlanTab 自动进入"进行中"时调用 onUpdate 记录 actualStartAt
- 显示实际开始时间和完成时间(精确到分钟)
- calcPlanDuration 改为用时间差计算小时数(精确到0.5h)
- formatDuration 显示小时而非天数

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 16:32:50 +08:00
Script Generator
da1f98968b fix: 调研/产品/UI阶段耗时改为精确时间戳计算
- VersionPlan 新增 actualStartAt 字段
- updatePlan 流转到 in_progress 时自动记录 actualStartAt
- updatePlan 流转到 completed 时自动记录 completedAt(如未设)
- 概览阶段耗时改用 actualStartAt/completedAt 计算(不再用计划排期)
- 个人耗时汇总同步使用实际时间戳

所有阶段(调研/产品/UI/开发/测试)现在统一用精确时间戳算耗时。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 16:24:46 +08:00
Script Generator
c86e87f95b fix: 实际耗时改为精确时间戳计算(精确到0.5h)
之前用日期+工作日×8h 计算耗时太粗糙,现改为:
- DevTask startDate/completedAt 使用完整 ISO 时间戳(含时分秒)
- TestCase startedAt/completedAt 同上
- 耗时 = (endTimestamp - startTimestamp) / 3600000,精确到0.5h
- 详情抽屉显示精确到分钟的时间(YYYY-MM-DD HH:mm)

例如:08:00 开始,10:30 提测,耗时 2.5h(不再是8h)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 16:11:51 +08:00
Script Generator
664330fe11 feat: 阶段耗时覆盖全流程(调研/产品/UI/开发/测试)
阶段耗时(项目维度):
- 调研阶段:PlanTask type=research 的日历跨度
- 产品方案阶段:PlanTask type=product 的日历跨度
- UI设计阶段:PlanTask type=ui 的日历跨度
- 开发阶段:DevTask startDate→completedAt 日历跨度
- 测试阶段:TestCase startedAt→completedAt 日历跨度
- 每阶段带进度条可视化对比

个人耗时排名:
- 汇总5类工作(调研/产品/UI/开发/测试)
- 条形图分色展示各类工作占比

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 16:02:30 +08:00
Script Generator
b3ccc17c2c feat: 版本概览增加阶段耗时(项目维度)+ 个人耗时排名
项目维度:
- 开发阶段日历天数 = min(startDate) → max(completedAt)
- 测试阶段日历天数 = min(startedAt) → max(completedAt)
- 总人天投入 = 所有人个人耗时之和

个人维度:
- 按人汇总开发耗时 + 测试耗时
- 排名展示,条形图区分开发(蓝)/测试(紫)
- 可对比出谁花费时间长

解决了多任务日期重叠时叠加计算不合理的问题:
项目看日历跨度,个人看独立累加。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 15:48:41 +08:00
Script Generator
8b3b3b7e21 feat(test-case): 测试耗时自动计算(逻辑同开发任务)
- TestCase 新增 startedAt / completedAt 字段
- 流转到"执行中"时记录 startedAt
- 流转到"通过/失败/阻塞"时记录 completedAt
- 回退到执行中时清除 completedAt
- 测试耗时 = startedAt → completedAt 工作日 × 8h
- 列表行显示耗时,详情抽屉显示开始/完成/耗时

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 15:38:48 +08:00
Script Generator
452cbb4671 fix(ui): 工具栏合并为一行 — 进度+筛选+操作紧凑布局
开发任务和测试用例列表顶部从三行(进度/筛选/多选)
合并为一行工具栏:左侧进度条和统计,中间筛选下拉,右侧批量删除+新建。
多选 checkbox 内嵌到分组头和行内。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 15:26:11 +08:00
Script Generator
3fc387eac5 feat: 开发任务和测试用例增加批量删除 + 单条删改
- DevTaskTab: 列表行前增加 checkbox,支持全选/批量删除
- DevTaskDetailDrawer: 顶部增加删除按钮(带确认)
- TestCaseTab: 同上,批量删除时校验关联 Bug(有 Bug 不可删)
- TestCaseDetailDrawer: 顶部增加删除按钮(有关联 Bug 时提示不可删)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 15:08:18 +08:00
Script Generator
bf229719ad fix: 防御旧 localStorage 中已删除的 done 状态导致 undefined 崩溃
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 14:46:59 +08:00
Script Generator
10ffb874aa refactor(dev-task): 去掉"已完成"状态,"已提测"作为终态
DevTask 状态简化为:待开发 → 开发中 → 自测 → 已提测(终态)

- 提测即代表开发交付完成,不需要额外的"已完成"
- 测试通过/失败产生的是 Bug,不影响 DevTask 状态
- 移除 TestCaseStore 中的自动完成副作用(不再需要)
- 版本执行态推导规则同步更新

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 14:44:49 +08:00
Script Generator
633f2619d3 fix(dev-task): 实际投入时间改为 开始→提测,而非 开始→测试完成
completedAt 在 DevTask 流转到"提测"时记录,代表开发交付时间。
实际工时 = startDate → completedAt(提测日),准确反映开发投入。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 14:29:32 +08:00
Script Generator
e4f3817719 feat: 提测通知 + 测试全通过自动完成开发任务
1. TestCaseTab 显示提测状态横幅:
   - 绿色:开发已全部提测,可以开始测试
   - 橙色:开发进行中,显示提测进度 (x/y)

2. TestCase 全部通过 + Bug 全关闭时,自动将版本下所有
   submitted 状态的 DevTask 流转为 done(无需手动操作)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 14:20:44 +08:00
Script Generator
93f6c33109 refactor: 压平数据模型 — 版本为执行主线,需求降为语义标签
核心改动:
- TestCase 主归属 versionId,requirementId 改为可选语义标签
- Bug 新增 versionId(直接挂版本)+ requirementId(可选追溯)
- 新增 calcVersionExecutionStatus() 版本执行态推导函数
  规则:DevTask全部提测→已提测,TestCase全部通过+Bug全关→可发布
- 概览页展示推导出的执行态标签
- BugTab 改为直接 versionId 查询(不再走 testCase→req 链路)
- 统计卡片"参与人员"替换为"未关闭Bug"

心智模型:
  版本(执行线)→ DevTask/TestCase/Bug
  需求(语义线)→ 解释为什么做,不驱动流程

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 14:07:46 +08:00
Script Generator
6c9a77038f fix(dev-task): 移除测试验证/缺陷修复类型,测试已独立为单独模块
开发任务类型保留:前端开发、后端开发、数据库设计、接口联调、数据处理、实施支持

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 13:35:18 +08:00
Script Generator
7fe3a3854a feat(test-case+bug): 测试用例模块 + Bug 模块完整实现
需求验收体系:
- 测试用例:五态状态机(待执行/执行中/通过/失败/阻塞)
- Bug:六态状态机(待修复/修复中/已修复/验证中/已关闭/已拒绝)
- Bug 通过测试用例间接关联需求(不冗余存版本)
- Bug 默认修复人 = 关联需求的开发任务负责人
- 测试进度 = 已执行用例/总用例, 通过率 = 通过/已执行

UI:
- 版本详情页新增"测试用例" Tab + "BUG" Tab
- 测试用例:统计栏+筛选+按需求分组列表+详情抽屉+提BUG入口
- Bug:统计栏+筛选+列表+详情抽屉(链式跳转用例→需求)
- 概览胶囊"测试"阶段进度联动
- "与我相关"新增测试用例/Bug分组

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 13:11:08 +08:00
Script Generator
75b0d12fa0 refactor(dev-task): 移除工时记录,改为由开始/完成日期自动计算实际工时
- 状态流转到"开发中"时自动记录 startDate
- 实际工时 = startDate → completedAt 的工作日 × 8h
- 详情抽屉移除工时记录面板,增加"开发开始日期"展示
- 列表行工时展示同步改为日期计算

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 09:31:30 +08:00
Script Generator
7322b115c4 fix(dev-task): 修复优先级无法手动选择的问题
优先级默认继承需求,用户手动修改后不再被覆盖。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-11 18:56:19 +08:00
Script Generator
d619846b93 fix(dev-task): 体验优化 — 新建弹窗默认值+详情卡片分区+筛选分页+胶囊联动
- 新建弹窗:负责人默认当前用户,提示版本截止日期,超期需填写原因
- 详情抽屉:重写为卡片分区布局,展示关联需求,状态流转按钮醒目化
- 详情实时更新:改为从 store 实时读取而非 prop 快照
- 列表增加筛选:负责人/状态/阻塞/任务类型 + 分页(每页20条)
- 工时展示:列表行显示 实际Xh / 预计Yh 格式
- 概览胶囊联动:dev 阶段进度由 DevTask 完成度驱动
- 概览统计卡片:替换 mock 为真实 DevTask 数据(待开发/开发中/阻塞中)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-11 18:51:33 +08:00
Script Generator
a560634091 feat(dev-task): 开发任务模块 V1 完整实现
- 核心库:dev-task.ts(类型+状态机+进度计算)、task-worklog.ts(工时)、task-category.ts(字典)、work-item.ts(聚合契约)
- Store:useDevTaskStore(CRUD+状态流转)、useTaskWorklogStore(工时记录)、useTaskCategoryStore(字典管理)
- UI组件:DevTaskTab、DevTaskCreateModal、DevTaskDetailDrawer、DevTaskRow、WorklogPanel、StatusBadge、CategoryChip
- 集成:版本详情页"开发任务"Tab、"与我相关"工作台开发任务分组、任务类型管理页
- 设计文档:spec + 实施计划

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-11 18:02:07 +08:00
Script Generator
8bc23fbf3d feat: 计划任务清单+进度联动+与我相关工作台
- 计划新增任务清单:调研支持任务CRUD,进度=完成数/总数
- 产品方案/UI:通过关联需求勾选进度,全部完成提示提交
- 版本胶囊条动态进度:调研/产品方案/UI 阶段独立计算
- 版本状态显示具体阶段名(调研中/产品设计中/UI设计中)
- 计划开始日期≤今天自动进入"进行中",版本状态联动
- 与我相关重写为左右布局:左侧分组导航,右侧任务/需求勾选
- 计划支持超期原因校验(结束日期超版本截止)
- 修复列表overflow裁剪问题、计划耗时当天至少1天

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-11 15:43:09 +08:00
Script Generator
2acc9aeaa9 feat: 版本详情完整功能 + 数据串联 + 登录模块
- 版本详情:关联需求Tab(从需求池添加已采纳需求/移除释放)
- 版本详情:调研/产品方案/UI设计Tab(计划CRUD、完成提交成果、耗时统计)
- 版本详情:超期校验(结束日期超版本截止需填写原因)
- 版本详情:概览统计卡片(加班时长/排名/原因占比)
- 数据串联:产品→项目→版本→需求→加班全链路贯通
- 版本管理:规划中版本可删除,删除释放关联需求
- 数据清理:仅保留翻台宝/值班,需求池10条值班待评审需求
- 修复:列表页overflow裁剪菜单问题(4个页面统一修复)
- 新增:登录模块、AuthGuard、VersionPlan store

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-10 17:07:36 +08:00
Script Generator
2f69bc74cd docs: 添加 README,说明环境要求和启动方式
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-09 18:21:38 +08:00
Script Generator
9a0b16a8f1 feat: 实现需求管理、加班记录、成员/角色管理模块
- 需求模块:完整 CRUD、状态流转(采纳/拒绝/关闭)、详情抽屉、产品→项目级联选择
- 加班记录:产品→项目→版本三级联动、月份筛选(MonthPicker)、CSV 导出
- 成员管理:左右布局(部门树+成员列表)、手机号脱敏、初始密码自动生成及规则设置
- 角色管理:卡片列表、系统角色保护、CRUD
- 通用组件:FilterSelect 下拉、MonthPicker 月份选择器、Pagination 分页
- 样式统一:状态标签加 border、日期输入现代化、筛选组件风格一致

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-09 18:16:18 +08:00
Script Generator
24ba61f929 feat(projects): 重构项目详情页 — 胶囊分段条、紧凑人员卡片、版本筛选
- 用胶囊分段条替代圆点流水线,合并阶段+进度+耗时为一体
- 版本状态标签与胶囊当前阶段联动(如"开发中"对应开发阶段)
- 已发布版本可展开查看各阶段耗时胶囊条
- 项目人员区域紧凑化,超出4人省略+hover tooltip
- 版本记录增加按阶段筛选(调研/产品设计/UI设计/开发/联调/测试/已发布/规划中)
- 全局详情页左右留白统一为 px-5
- 修复 localStorage 缓存导致人员数据不显示的问题
- "需求"阶段更名为"调研"

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-08 18:44:32 +08:00
Script Generator
eca65f1bce feat: 实现产品/项目/版本三大模块完整功能
- 产品列表:拖拽排序持久化、编辑弹窗、删除校验(活跃版本需迁移)
- 项目列表:新建项目表单(产品选择+重名校验)、产品筛选、版本归属修复
- 版本列表:新建版本表单(迭代类型自动生成版本号)、状态/项目筛选、倒序排列
- 项目详情页:概览统计、人员墙(参与次数)、版本时间线(阶段流水线+进度条)
- 全局优化:筛选栏统一为header下方固定行、按钮颜色改为主题蓝、API探测300ms、store缓存
- 数据持久化到localStorage,支持离线开发

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-08 17:11:23 +08:00
Script Generator
e0120c470c style: 切换为现代 SaaS Dashboard 风格(Linear/Vercel/Notion 风)
- 调色板:zinc 中性色 + 冷静蓝色(#3b82f6)+ 卡片阴影 token
- Sidebar:紧凑 60 宽度,加入顶部搜索框,分组导航,圆角 8px
- 卡片:rounded-2xl + shadow-sm/md,留白节奏统一
- 表格:圆角卡片包裹,灰色表头小写大写字母 tracking
- 表单:h-9 输入框,圆角 8px,focus ring 用半透明蓝
- 按钮分级:实心蓝(主操作)/ 边框白底(次操作)/ 暗黑实心(对比强调)
- 状态徽章:ring-1 inset 内边框,色板更柔和

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-08 12:46:02 +08:00
Script Generator
0099b23a86 style: 重做整体视觉系统(编辑设计 × 建筑精度)
- Fraunces 衬线 display + DM Sans body + JetBrains Mono 数字标签
- 暖米白主题(#f7f4ee)+ 蓝色强调色(#2563eb)
- 引入 lucide-react 图标库替代 emoji
- Sidebar 加入编号索引、Logo、用户区域、杂志风分组标题
- 产品列表页加入大号 display 标题、搜索、卡片悬浮动画
- 产品详情页面包屑、tab 编号、需求表格重做
- 状态徽章改为色点 + 文字,"已拒绝"用红色避免与"评审中"冲突
- 全局加入 grain 噪点纹理、入场交错动画

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-08 12:37:17 +08:00
Script Generator
5bfa0811db feat(layout): 添加左侧导航栏
包含与我相关、产品、项目、版本主导航和成员管理入口,路由高亮当前页面。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-08 12:28:14 +08:00
Script Generator
1468c314e9 docs: 同步 CLAUDE.md,反映已实现的产品需求管理模块
更新架构目录、数据模型、API 端点、开发模式说明,标记已完成模块。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-08 11:08:59 +08:00
Script Generator
e261c3d0b8 feat(product): 实现产品需求管理模块(后端 + 前端)
后端:Product Module(CRUD)、Requirement Module(CRUD + 状态机流转)、PrismaService
前端:产品列表页、产品详情页(含需求池 Tab)、Zustand Store、API 封装

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-08 11:06:16 +08:00
Script Generator
8de1f93fd3 feat: 初始化 FTB 智能项目管理系统 monorepo 项目结构
包含 Turborepo 配置、Next.js 前端骨架、NestJS 后端骨架、Prisma Schema、
共享类型包、Docker Compose 和环境变量模板。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-08 10:31:35 +08:00