掌中生活——α冲刺Day4
掌中生活——α冲刺Day4
| 这个作业属于哪个课程 | 202601福大-软件工程实践-W班 |
|---|---|
| 这个作业要求在哪里 | 软件工程实践团队作业-站立式会议+α冲刺 |
| 这个作业的目标 | 记录 Alpha 冲刺第 4 天站立式会议(线上):登录链路接通、新建页与详情页完成、重复周期实现、4 处契约断点整改,燃尽领先计划 18 点 |
| 其他参考文献 | 《构建之法》第2章、13章;团队代码规范 v1.0;《04-接口契约文档 v1.0》;CR-20261026-01 契约变更单 |
目录
- 掌中生活——α冲刺Day4
- 一、今日站立式会议
- 二、燃尽图
- 三、成员进展
- 四、AI 技术员工作(今日)
- 五、代码签入与 Issue
- 六、运行截图
- 七、明日计划
一、今日站立式会议
- 时间:2026-10-26 21:30–22:10(线上,腾讯会议)
- 主持:黄炫文
- 参会:全员 7 人 + AI 技术员(AI-P/AI-T/AI-D)
- 议题与决议:
- 进度同步:B2 列表数据绑定与登录链路接通、B3 新建页与详情页、G2 重复周期 nextOccurrence、ServiceLocator 五项装配均完成;燃尽 78 → 52,领先计划 18 点;
- 测试并行:陈瀚楷执行 61 条单测(57 通过 / 4 失败),新功能三块全绿;4 条红色全部为 D-01~D-04 遗留缺陷复现——决议 D-01 优先修复(注册半成品账号,事务或补偿删除);
- 断链整改:吴军峰排查发现 AccountService 三件套零调用方等 4 处契约断点,已接通装配;app_user 表全仓无写入方,新建记录会撞外键——决议 AccountRepo 由胡昊排期落地,否则 Day6 闭环联调会卡在"注册成功→新建记录失败";
- 分支纪律重申:合并前必须在干净目录单独编译一次(某分支合并前编译失败,合并时才发现,修的成本高得多);
- 明日安排与燃尽核对(见第七节)。

二、燃尽图

剩余 52 点:今日完成 B2(10 点)+ B3(8 点)+ T1(8 点)共 26 点,领先计划 18 点。
三、成员进展
| 成员 | 昨日进展 | 存在问题 | 明日安排 | 心得体会 |
|---|---|---|---|---|
| 黄炫文 | 收齐全员材料;docs 签入站会纪要 Day4 与燃尽数据;CI 一键检查脚本入库(scripts/ci-check.sh,对应流水线三阶段:代码检查→构建+单测→verify_db 验收,E4 落地);发布 Day4 随笔 | CI 流水线需在 CodeArts 控制台创建,首次构建需要配置构建机与缓存 | 流水线控制台创建并跑通首次构建;Day5 随笔;docs 签入 | 材料收得越来越顺,博客的坑大多在图片对齐上 |
| 胡昊 | 完成 ServiceLocator 五项装配(database/clock/transactionRunner/recordRepo/recordService,全部 by lazy 延迟初始化,避免主线程建库);清掉 LmApplication 的 TODO;修复吴军峰分支两处编译错误(attachSession 不在接口上、savedInstanceState 取不到)并集成验证(提交 eb68e0c/3508ac7/d2330ed);验证:assembleDebug BUILD SUCCESSFUL、testDebugUnitTest 62 项全绿(集成分支 115 项)、verify_db.py 12 项全过 | 吴军峰分支合并前单独 checkout 编译不过,说明推代码前没跑编译,已提醒先跑 compileDebugKotlin;P5/P4 页面当时为零文件(杨俊鑫晚间已补齐) | 配合吴军峰 C1/C2 做数据层对接;跟进集成分支合入 dev 后的回归;AccountRepo 排期 | 分支合并前必须先在干净目录里单独编译一次,否则"本地能跑"只是假象——合并时才发现的问题,修起来成本高得多 |
| 陈志 | G2 重复周期完成:nextOccurrence 按 baseDate 锚点法推进,支持不重复/按月/按年三种周期,覆盖月末、闰日、当天命中及多周期不漂移场景,新增 11 条边界测试;DateCalculatorTest 累计 24 条 0 失败(提交 d0d4c8f,Issue #71199742) | 契约排期表仍把 DateCalculator 写在 Day6,与专项计划的 Day4 存在文档口径冲突,已按专项计划执行,后续同步文档 | Day5 G1 DateNodeService 五个冻结方法及纯校验逻辑 | 重复日期不能图省事逐期累加,始终回到基准日期计算才能避免月末和闰年误差累积;边界测试比正常路径更能暴露日期算法的真实问题 |
| 陈瀚楷 | 梳理当天 9 个提交确定被测对象,编写并执行 61 条单测:AccountCredentialRules 18 + TodoServiceImpl 11 + TodoDao SQL 10 + DateCalculator 17 + 探针 5;结果 57 通过 / 4 失败,新功能三块全绿(待办三条准入、账号隔离含土耳其语 Locale 归一化用例、日期锚点推进);待办 SQL 放到与 001_init.sql 同构的真实 SQLite 上跑;4 条红色全部是 D-01~D-04 遗留缺陷复现,Day4 一条没修;输出 Day4 测试报告(7 页) | 4 个遗留缺陷一条未修,D-01(注册失败但账号被占用)接 Room 后更难收拾,建议优先排期;nextOccurrence 未合入 integration,按 integration 出验收结论等于没交付重复周期;TodoSqlTest 依赖 sqlite-jdbc,仓库还没有这个测试依赖 | 推动 D-01~D-04 修复并回归(D-01 优先);date-calc 合入后补重复周期端到端验证;补列表三态与 ServiceLocator 装配验证;开始 T5 用例骨架 | 待办的坑不在"查不到",而在"查多了"——三条准入少一条,首页就会冒出明天才该提醒的事;把 SQL 放到真实 SQLite 上跑一遍,比读十遍代码踏实 |
| 杨俊鑫 | B2 P5 新建页 + B3 P4 记录详情页完成:支持记录信息、标签、日期节点录入,详情展示名称、类别、状态和日期节点(提交 919fab1/fbab573,Issue #71200238);assembleDebug 与 testDebugUnitTest 均通过 | P3 列表/首页入口尚未与其他成员联调;受保护记录编辑需等解锁能力接入;模拟器页面截图待补 | 跟进 P3/首页入口合入,联调"列表→新建→详情";配合分类标签模块接口联调 | 先按接口契约把页面和服务接通,可以并行推进;入口和受保护数据还需结合对应模块做完整联调 |
| 吴军峰 | B2 完成并接通登录链路:待办链路 8 个新文件(TodoDao/TodoRow/StatusCountRow/TodoMapper/TodoRepo/TodoRepoImpl/TodoService/TodoServiceImpl),数据源从 v_todo_summary 改读 date_node;P2/P3 接真实服务,四态互斥(加载中→出错→空→有数据),刷新失败保留旧数据;契约变更单 CR-20261026-01(三处偏差+三条说明);接通注册/登录(新增 AccountCredentialRules 校验收敛、ServiceLocator 装配 accountService、AuthViewModel 改调真服务并防连点);7 次提交,Day4 增量 29 文件 +1808 行,分支累计 72 文件 +4869 行,MR !10;验证:compileDebugKotlin BUILD SUCCESSFUL、单测 72 条全绿(Day4 新增 31) | 契约按文件分配导致链路断裂——AccountService 三件套 Day3 就在 dev 上但全仓零调用方,已补装配与调用;登录通了之后新建记录会撞 app_user 外键(该表全仓无写入方,7 处外键指向它且开了 foreign_keys=ON),根因是契约 8.1 AccountRepo 未落地,需胡昊排期;git push 卡死是 Windows 凭据管理器缓存旧凭据 | C1 把 TaxonomyServiceImpl 内存实现换 Room;C2 新建 TagChipAdapter 做标签即时创建;催 AccountRepo 排期 | 契约按文件分配,链路就会掉在缝里——四个断点没一个是代码写错,全是没人负责接;验收标准该写成"用户能做完某件事" |
| 李天赐 | 全量审查 dev 分支 Day3 提交:逐条核对 AccountServiceImpl 与 Day2 回调约定的 7 项全部符合(登录先查锁、密码错调 onLoginFailed、Failure(E_LOCKED) 透传、密码对再查一次锁防并发、账号不存在与密码错统一 E_LOGIN_FAILED 防枚举等);产出对接审查文档,明确指出阻塞真跑的 3 个缺口:AuthViewModel.submit 写死 E_NOT_IMPLEMENTED、AccountService 未接入 ServiceLocator、sessionPersistence 桥接未实现 | AccountStore 目前是 InMemoryAccountStore(杀进程即丢),等 AccountRepo 替换,"保持登录"还不能真实验证;ServiceLocator 装配归属建议站会定,避免各写一份 | 补完 AuthViewModel 接线后立刻在模拟器跑 Day2 约定的 6 个联调用例(重点:第 5 次失败当场锁、强杀重启仍锁) | 接口冻结的价值——写 AccountServiceImpl 时一行没改的 SessionService 签名,调用关系零摩擦;但联调不是接口对了就能跑,最后 20% 的"接线"(ViewModel 调 Service、装配、桥接)反而最容易漏 |
四、AI 技术员工作(今日)
今日角色:AI-P/AI-T/AI-D 并进;全部产出经人工核对/实际执行后采纳。
- AI-P(deepseek harness,胡昊驱动):做分支交叉比对,逐个分支用 ls-tree 核查缺口而不是只读代码;定位了"分两次合并必冲突"的实证(两种顺序都试过);建议与结论全部采纳,冲突解决方式按契约 2.3 逐条核对后手工确认;
- AI-P(codex,陈志驱动):生成锚点法实现和边界用例,人工复核并完成全量单元测试(24 条 0 失败)后采纳;
- AI-P(codex,杨俊鑫驱动):依据仓库原型和接口契约实现 P5/P4,并补充受保护记录编辑保护,代码已采纳并提交;
- AI-P(codex/deepseek,吴军峰驱动):全链路断点排查(grep 零引用找出 4 个断点)、数据库连带影响分析(翻出 7 处外键)、契约对齐、31 条测试生成、Pillow 渲染截图都用 AI;但 AI 会把"契约这么写"当成"世界就是这样"(视图与契约矛盾它不质疑)、修完 A 不会主动想 B(外键风险是追问才查的)、还会顺手加契约外功能(restoreKeptSession,已报备)——**它最值钱的地方是机械 grep 零引用,人看到"服务写好了"就默认"有人在用"**;
- AI-T(deepseek harness,陈瀚楷驱动):拉起当天全部提交、生成 61 条用例并实际执行(含真实 SQLite 跑 SQL),定位 4 条遗留缺陷原样复现,报告与截图一并产出;人工核对用例与 SRS/CR 口径后剔除了 3 条依赖 Room 的用例;
- AI-D(DeepSeek v4 pro,黄炫文驱动):全员材料汇总整理、Day4 随笔初稿。
今日度量:AI 生成并实际执行的单元测试 61 条(陈瀚楷,57 通过/4 失败);AI 生成经人工采纳的测试另计 31 条(吴军峰 Day4 新增)+ 11 条(陈志);确认遗留缺陷 4 个原样复现(D-01~D-04)。
五、代码签入与 Issue
| 时间 | 作者 | 提交说明 | 关联工作项 |
|---|---|---|---|
| 10:45–18:54 | 吴军峰 | 7 次提交(4fbc882/e89ab6f/84e9405/c8414d4/b8ee32d/b175447/2deb6de):todo 数据绑定、加载/错误态、CR 变更单、注册登录链路、本地一键验证脚本,Day4 增量 29 文件 +1808 行,MR !10 | #71193367 |
| 14:15–14:18 | 胡昊 | 3508ac7 fix(auth) 两处编译错误;eb68e0c feat(locator) ServiceLocator 五项装配;d2330ed merge 集成 | #71192105 |
| 17:09 | 陈志 | d0d4c8f feat(date): DateCalculator 重复周期计算(新增 11 测试,累计 24 条 0 失败) | #71199742 |
| 21:24–21:26 | 陈瀚楷 | ce9b701/e3fd45b/3b767c6 Day4 测试报告 + 运行说明 + 结果 | — |
| 21:45–21:53 | 杨俊鑫 | 919fab1/fbab573 [冲刺Day4] 新建页与详情组装、节点提醒与受保护编辑保护 | #71200238 |
| 23:1x | 黄炫文 | f14dedd/5ef3a62/f870a0f docs: 站会纪要 Day4、时间更正、ci: 一键检查脚本(E4 落地) | #71192105 |
签入截图:
陈瀚楷 · Day4 签入记录(ce9b701 等,Day4 测试报告与结果)

陈志 · Day4 签入记录(d0d4c8f,DateCalculator 重复周期)

胡昊 · Day4 签入记录(eb68e0c/3508ac7/d2330ed,两张)


杨俊鑫 · Day4 签入记录(919fab1/fbab573,新建页与详情组装)

吴军峰 · Day4 签入记录(7 次提交,两张)


黄炫文 · Day4 签入记录(f14dedd/5ef3a62/f870a0f,站会纪要、时间更正与 CI 一键检查脚本)

李天赐:今日为代码审查与对接文档产出(AccountServiceImpl 回调约定 7 项核对 + 3 个阻塞缺口清单),无签入。
六、运行截图
Day4 测试执行结果图(陈瀚楷 · run=61 / 通过 57 / 失败 4)

缺陷探针明细图(陈瀚楷 · D-01~D-04 遗留缺陷复现)

- 说明:胡昊 Day4 改动在装配层与构建验证,无新增界面;杨俊鑫模拟器页面截图待补;吴军峰登录态真机截图待补(本机无 Android SDK)。
七、明日计划
- 吴军峰:C1 TaxonomyServiceImpl 换 Room + C2 TagChipAdapter 标签即时创建;陈志:G1 DateNodeService 五个冻结方法;杨俊鑫:P3 列表/首页入口联调"列表→新建→详情";李天赐:接线完成后跑 6 个联调用例;陈瀚楷:推动 D-01~D-04 回归(D-01 优先)+ T5 用例骨架;胡昊:AccountRepo 排期落地 + 配合 C1/C2 数据层;黄炫文:CodeArts 控制台创建流水线(脚本已入库)跑通首次构建 + Day5 随笔 + docs 签入。
- 明日燃尽目标:计划剩余 70 点。
相关推荐
idea2025-free.zip
idea2025-free.zip
机械三维3D设计图-铆接工位.zip
机械三维3D设计图-铆接工位.zip
iphone应用测试包
iphone ipa安装测试包
国央企创新负责人在推动技术转移时,如何借助平台获取精准产业匹配信息?.docx
科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。
科技成果转化项目进场交易前,评估备案环节需要准备哪些材料?_2.docx
科技成果转化项目进场交易前,评估备案环节需要准备哪些材料?_2


