gwy-exam/.workbuddy/memory/2026-08-25.md
2026-08-26 16:20:42 +08:00

130 lines
13 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 2026-08-25 工作日志
## 公务员考试辅助工具 - 需求固化(产品战略团队协作)
- 用户需求:为本人做一个公务员考试辅助工具,暂定 Web 形式,先固化需求。
- 已确认决策:国考+省考兼顾;核心功能=行测刷题+错题本、模考与成绩分析、申论辅助、备考计划管理、AI辅助出题/答疑/生成答卷);题库=真题+手动录入;定位=「个人备考数据中枢」,响应式 Web移动端优先
- 团队协作流程product-gwy-exam-assistant瑞思用户研究、竞析竞品分析、数析市场数据并行 → 析客PRD→ 路径(路线图)。
- 核心结论不做题库军备竞赛、不办自建大规模模考、不自研大模型MVP=11项P0数据闭环基础设施约8-10周单人开发AI整体列P1二期数据先行、AI增强需求池共29项P0=11/P1=13/P2=5
- 交付物:`deliverables/product-strategy/prd-gwy-exam-tool-2026-08-25.md`
- 待用户拍板AI是否进MVP、题库录入边界、跨平台导入优先级、数据存储方式本地 vs 云)、申论评分标准来源、产品名称(备考中枢/上岸笔记/个人备考舱)。
- 下一步:用户确认待确认问题后,进入 Ardot UI 设计阶段Web 高保真稿)。
## 拍板结果2026-08-25 用户确认)
- AI 不进 MVP数据先行、AI 增强AI-03 可信度机制 M0 预留接口)
- 数据存储:**可配置数据目录 + Docker 部署**(用户自定义方案)——轻后端 + SQLite 单文件置于可配置目录,支持 docker volume 挂载、备份迁移;不做云同步
- 题库边界近5年国考+省考真题,全模块覆盖(行测五大模块+申论);每模块先录 20-30 题验证流程
- 产品名称:**备考中枢**(确定)
- 跨平台导入手动录入先行P1 D-02、粉笔解析后置P2 M-04——团队建议用户未否决
- 申论评分:一期「自评+要点勾选」兜底AI 评分 P1 验证项——团队建议,用户未否决
- PRD 已更新至 v1.1`deliverables/product-strategy/prd-gwy-exam-tool-2026-08-25.md`
- 下一步:进入 UI 设计阶段Ardot 画布,移动端优先 Web 高保真稿)
## UI 设计2026-08-25 完成)
- 设计文件:备考中枢 - 公务员考试备考工具Ardot file 718570750880145
- 视觉方向:暖白画布 × 深蓝渐变主色专注沉稳、bento 卡片布局、中文 Sarasa Gothic SC / 数字 Inter
- 已创建设计令牌 17 个色彩变量Color 变量集)
- TabBar 组件(可复用,胶囊式 5 tab
- 移动端 6 页390×844首页数据中枢 / 刷题模块选择 / 错题本归因 / 模考分析 / 申论辅助 / 备考计划
- 桌面端 2 页1440×900数据中枢宽屏态 / 题库录入PC 重操作场景,含实时预览)
- 响应式策略落地:移动=消费端(刷题/打卡/看数据),桌面=生产端(录题/导入/导出)
- 设计稿导出图在 .workbuddy/screenshots/final-*.png内部验证用
## UI 设计 v2二级页面2026-08-25 完成)
- 新增 3 个移动端核心闭环页面390×844
- 刷题作答页9:1进度条+计时器、题干卡、选项选中态、提交答案
- 作答结果页9:49答错反馈卡、答案对比条你的答案/正确答案/用时)、解析、错因标签多选(审题/计算/公式/思路/知识点遗忘)、下一题
- AI 讲解对话页9:96用户提问气泡、AI 回答(含置信度标注 95%+依据)、变式题建议(做变式/换数字再出)、底部追问输入框
- 至此共 11 页(移动端 9 + 桌面端 2完整覆盖刷题→错题→AI 讲解闭环
- 注意绝对定位元素layoutPositioning: ABSOLUTE + x 偏移)宽度必须用固定值 342=390-2*24不能用 fill_container否则越界
## UI 设计 v3补全页面2026-08-25 完成)
- 新增 4 个移动端页面:
- 错题详情页12:1题干+错因标签、正确答案+掌握状态、重做/AI讲解操作区、作答历史错2次记录
- 模考成绩录入11:28考试名称/日期/总分 + 分模块得分5模块+ 保存M-01 表单)
- 申论写作编辑器12:63题目提示卡、工具栏B/I/列表、正文区、AI 评分点反馈提示条S-01
- 周报复盘13:1周报头卡渐变、薄弱考点 Top3含动作建议、错因分布、下周建议W-07
- 设计稿共 15 页(移动端 13 + 桌面端 2P0/P1 核心页面全覆盖
- AI 讲解入口矩阵:错题列表按钮 + 作答结果页按钮 + 错题详情页按钮 → 均推入 AI 对话页9:96
## 移动端闭环审查2026-08-25 14:00
- 检查13 页对照 PRD 需求池 P0=11/P1=13 逐项核对,发现并修复 3 个导航断点:
1. 模考分析页6:94无"录入成绩"入口 → 已补(跳 M-01 录入页 11:28
2. 错题本页6:16无"周报复盘"入口 → 已补(跳 W-07 页 13:1
3. TabBar 第 5 个 Tab「我的」无落地页 → 新建「我的 - 设置」页28:12个人卡+数据导出/导入还原/跨平台录入/Docker 目录/目标分数设置D-02/D-03 落地)
- 闭环结论4 条核心业务链路全部打通(刷题/错题/AI讲解/周报TabBar 5 Tab 均有落地页
- 设计稿现 16 页(移动端 14 + 桌面端 2
## 空状态设计2026-08-25 14:08 完成)
- 新增 3 个移动端空状态页390×844
- 空状态-错题本29:1空图标+说明+「去刷第一组题」CTA
- 空状态-模考分析29:25无模考记录+「录入第一次模考成绩」CTA
- 空状态-计划29:49无任务+「创建今日任务」CTA
- 统一模式:灰底圆形图标(96px) + 标题 + 说明 + 主 CTA空状态主体用 ABSOLUTE y:180 + hug_contents 实现视口内居中
- 设计稿共 19 页(移动端 17 + 桌面端 2P0/P1 需求 + 空状态全覆盖,可进入开发阶段
## 首页布局/配色评审2026-08-25 14:30 完成)
- 审查首页4:24发现顶部两张内容卡丢失深蓝渐变背景 → 白字/浅蓝字对比度接近零,严重不可读
- 天数整卡29:90fills 为空但文字为纯白/浅蓝 → 已补 primary→primaryDeep 渐变
- Hero 今日概览卡4:38fills 为空但文字为白/浅蓝 → 已补 primary→primaryBright 渐变
- 布局评审结论纵向叙事问候→天数→Hero→快捷入口3列→错题速览→最近模考→TabBar合理24px 边距/18-24 圆角/10-16 间距统一,信息层级正确
- 配色评审结论:绿色正确率环、红黄进度条、深色文字卡片均正常,仅顶部两卡异常(已修);画面下方暖白 canvas 与白色卡片对比度充足
- 教训:渐变卡或深色衬底卡若 backgrounds/fills 依赖渐变,必须显式写 fills不能依赖继承白/浅亮文字卡一定检查是否落于浅色底
## 首页置顶卡片对齐2026-08-25 14:35 完成)
- 问题:天数整卡(29:90)与Hero卡(4:38)此前 x=0/宽390 贴满全屏、左右无留白,比下方内容区(24px边距)宽一截;两卡间 gap=0 紧贴
- 修复:新建容器「置顶渐变卡区」(32:1宽390、左右各24内边距、纵向 gap 12),把两卡移入并改 width=fill_container
- 结果:两卡现均 x=24/w342与下方内容区同宽同边距卡间距 12px容器经 M() 移到问候区(index=2)之后、快捷入口之前
- 注意I() 插入的容器默认落在页面末尾,需用 M(node, parent, index) 移到正确顺序
## 信息架构重构 42026-08-25 17:00 完成)刷题/错题/申论合并 + 要闻tab
- 背景:用户确认「申论使用概率较低」→ 并入刷题新增「要闻」tab 展示公告/时政文章
- 最终底部导航5 tab**首页 · 刷题 · 要闻 · 分析 · 我的**
- TabBar 组件(4:23)原「错题」tab(4:11) 改造为「要闻」,重绘报纸图标(35:5)+文字(4:14)→"要闻";组件级改动自动传播到所有实例
- 新建「刷题」tab(36:13, x:9310, 高1134):顶部分段切换(刷题│错题本│申论) + 选择模块2列网格(5模块) + 碎片组卷时长 + 开始按钮 + 错题归因概览(3行) + 申论习作概览
- 新建「要闻」页(35:8, x:8820):置顶公告渐变卡 + 分类筛选(全部/公告/政策/时政) + 3张文章卡 + 置顶标签
- 关键教训:
1. 模块网格要2列必须用 layout:"wrap" + 卡片宽166(342-10)/2容器 height:"hug_contents";用 HORIZONTAL 会单列堆叠
2. TabBar 实例子节点用「实例id;组件节点id」访问如 36:12;4:7=刷题tab高亮=tab容器fills:"$3:6"+图标/文字变白
3. 长滚动tab页主容器高度设为内容实际高度非844固定TabBar 用 ABSOLUTE 定位于 (内容高-120)
4. 高亮同步易漏:各页面 TabBar 实例需逐一确认高亮正确tab避免误高亮「首页」
- 高亮映射首页→首页刷题tab/刷题-模块/错题本/申论辅助→刷题;要闻→要闻;分析→分析;我的→我的;备考计划→首页
- 设计稿现 21 页(移动端 19 + 桌面端 2
## 信息架构重构 52026-08-25 17:40 完成刷题tab改真切换单壳 + 清理旧独立页
- 背景用户不满新版刷题tab「刷题/错题本/申论三段纵向堆叠滚动」——"明明是tab页为啥三页集中在一起"且旧三个独立tab页仍在画布混淆视听
- 方案真切换单壳——刷题tab(36:13)顶部segment三段每段只显示一个面板用「组件状态变体」标准手法呈现3帧=同一tab的3种切换态
- 三帧均390×844y=0/1254/2508
1. 36:13 刷题态:删错题本概览+申论概览→只剩模块网格+时长+开始按钮segment高亮「刷题」副标题"选择模块,碎片时间刷题"
2. 40:1 错题态:删模块/时长/开始按钮→保留错题本入口+错因分布卡+复制旧6:16错题卡×2成「最近错题」列表segment高亮「错题本」副标题"错题归因,逐个击破"
3. 40:100 申论态:删模块/时长/开始/错题本概览→申论入口+复制旧6:185评分卡(四维)+习作列表+新增「写一篇」按钮(41:1)segment高亮「申论」副标题"申论写作与智能评分"
- 删除旧三独立页4:128刷题-模块选择 / 6:16错题本-归因 / 6:185申论辅助内容已被面板吸收
- 承接关系申论段「写一篇」→12:63写作编辑器错题卡AI讲解→9:96开始刷题→9:1
- 关键教训:
1. 用C()跨帧复制带绝对定位的容器后需改layoutPositioning:"AUTO"+width:"fill_container"+去父容器重复padding否则OUTSIDE_PARENT裁剪
2. 复制结构的子节点ID会自动重建不能用原ID更新需重新batch_read副本结构
3. segment高亮切换=改段容器fills为"$3:6"+文字变白,三个段逐一处理
- 设计稿现 18 页(移动端 16 + 桌面端 2+ TabBar组件
## TabBar 高亮修正2026-08-25 18:00 完成)
- 问题用户指出产出的刷题tab截图「tab组件同时两个tab高亮」——底部TabBar同时点亮「首页」+「刷题」
- 根因:刷题三帧(37:78/40:10/40:109)是复制旧「刷题-模块选择」页而来旧页本身TabBar就误高亮了「首页」复制后缺陷被带进三帧要闻页(36:12)同样误高亮「首页」+「要闻」
- 修复把误高亮的「首页」tab(容器fills改透明黑opacity0 + 图标Vector改灰#9C9CAF + 文字改灰#6B7280)只留当前tab高亮
- 全局核查11个TabBar实例高亮首页(5:22)→首页✓;刷题三帧→刷题✓;要闻(36:12)→要闻✓;模考分析(6:184)→分析✓;备考计划(6:303)→首页(有意映射);我的(28:93)→我的✓空状态3页→首页✓
- 关键教训复制带TabBar的页面必须逐一核对高亮误高亮会随副本传播高亮状态是「容器fills:$3:6(主色)+图标文字白色」,未选中是「容器透明+图标灰#9C9CAF+文字灰#6B7280
## 画布排布整理 + PC端原型同步2026-08-25 18:16 完成)
- 背景:用户要求「整理一下画布排布。然后 pc 端原型同步一下」
- 任务1 画布排布:原 18 页横排 x=0~9310 杂乱,按逻辑分区重排为 4 排:
- 第一排主tab页, y=0首页(0) → 刷题三帧(470/940/1410) → 要闻(1880) → 分析(2350) → 计划(2820) → 我的(3290),对应 TabBar 5 tab 顺序刷题用3帧体现切换
- 第二排(二级页, y=944作答(0)→结果(470)→AI讲解(940)→错题详情(1410)→模考录入(1880)→申论编辑(2350)→周报(2820)
- 第三排(桌面端, y=1888题库录入(0)→数据中枢(2360)
- 第四排(空状态+组件, y=3028空状态错题本(0)/模考分析(470)/计划(940) + TabBar组件(1880)
- 无重叠,分组逻辑清晰
- 任务2 PC端同步桌面侧边栏导航组1 原为「数据中枢/刷题/错题本/模考分析/申论/备考计划」6项与移动端重构后的5 tab首页/刷题[含错题本+申论]/要闻/分析/我的)不一致
- 删除独立「错题本」(6:320)「申论」(6:328)导航项——已并入刷题
- 「刷题」改名为「刷题中心」(6:319)
- 补充「要闻」(41:3)、「我的」(41:7)导航项与移动端5 tab对齐
- 修正「数据中枢」误高亮(非当前页,容器转透明+图标文字转灰)
- 验证截图:刷题帧/申论帧/TabBar高亮/桌面两页均正常,无布局问题
- 关键教训C()复制导航项后子节点ID重建需重新batch_read副本结构拿新ID再改文字如要闻=41:5、我的=41:9