工作计划表.md 16 KB

时差培养箱合并改造 · 工作计划表

续接载体之一(人类可读主表)。配套:进度状态.yaml / 交接卡.md / 待验证清单.md。 状态图例:☑完成(含真机验证)|🟢符合(代码完成且经审计可信,部分待真机)|🔶半成品(搭壳未接线/部分接通)|❌欠账(文档要求未做)|◐进行中|☐未开始。 真机/环境验证列 ✔ = 需连下位机或服务环境才能验收(见待验证清单.md)。 本表状态依据:2026-06-20 逐条 file:line 源码核实 + 本会话真机验证结果(取代旧"代码完成待验证"虚标)。 依据文档:00-需求总览.md 及 需求文档/01–14(无 11)。


〇、全局概览 · 续接指南(打开本表先看这里)

当前状态(2026-06-20):三项目合并物理收尾已完成 —— control 并入 ivf_tl_operate_2.0/control/(顶层目录消失,operate 自包含)、autofocustool 删除、编译 operate/front/单测三关 0 错误、真机硬件层+业务API验证闭环;串口占用代码层修复(T1.1 补 HAL 方法 / T1.2 调试页改 lease 删 new ComBin / T1.3 接通借用闸门暂停);Phase0 功能 bug 全修。剩:真机 GUI 业务流程、UI(首页弹框/子页自适应)、日志铺开、去重、M6/M7。

文档三层结构(找什么去哪)

  • 需求文档/(01–14,无 11)= *做什么*(已更新到合并现实)
  • 开发计划/2026-06-20-当前开发计划.md = *怎么做*(剩余 5 组 15 任务);已完成归档/ = 历史子计划(M1–M5/M8/执行框架)
  • 进度/ = *到哪了*:本表(工作计划表)= 里程碑真实状态 / 待验证清单.md / 进度状态.yaml(断点)/ 交接卡.md(追加式历史)/ 历史报告/(旧审计报告归档)

续接三件套(无缝接续,不依赖对话记忆):① 本表(里程碑状态)② 《2026-06-20-当前开发计划.md》(剩余工作)③ 进度状态.yaml(当前断点)。

剩余工作总览(详见《当前开发计划》):G1 串口收尾(T1.4 真机/ComBin 枚举迁移去重/写EEPROM V-010)|G2 UI(首页舱室弹框位置大小/13 子页自适应/TabTip/well 三态)|G3 日志铺开(operate 逐方法 ✅2026-06-20/Java 埋点 ✅2026-06-20/C4 配置下发+补送 ✅2026-06-20 G3 全清)|G4 对焦·数据(C6 清理任务 ✅2026-06-20/C2 建库 runner ✅2026-06-20 完成/V-046 列迁移待 G4-3 真机)|G5 业务回归(M6/M7)。多数受真机 GUI 门控。


合并物理收尾(三项目合并最后一公里 · 本会话完成)

这是用户"删掉不用代码"诉求的前置,审计 C1 列为退役阻塞项;本会话已完成物理合并与真机闭环验证。

编号 任务 状态 出口验收 说明 / 证据
MERGE-01 control 物理并入 operate 顶层 ivf_tl_control_2.0 消失、operate 自包含 git mv 并入 ivf_tl_operate_2.0/control/,operate 不再跨目录 ProjectReference 顶层 control
MERGE-02 autofocustool 退役删除 零引用、整体删除 算法早已移植 IvfTl.AutoFocus;autofocustool 目录已删
MERGE-03 合并后编译三关 operate / front / 单测 0 错误 三关全 0 error
MERGE-04 真机硬件层闭环 握手/温压门/电机/相机/SN 7舱握手 + 三路温度 + 压力 + 舱门 + 电机偏差0 + 相机出图 2592×1944 + CCDSN 映射,全部真机通过
MERGE-05 真机业务 API 闭环 登录/各服务 API 登录 / tl-control / business / surface getButtons / 对焦下发(V-047)上行(V-064) 链路全通
MERGE-06 data-transmission 起服务 6 服务注册 Nacos 108 漏建 aivfo-tl 库已补建 + 导入 4 表 → data-transmission Started,nacos 共 6 服务

M0 · 基线与脚手架

编号 任务 状态 依赖 出口验收 关联源码/文档 环境验证
M0-00 项目文档与源码一致性审核(四维度) 产出 文档源码审核报告.md 需求文档/01–11、12 §1.6
M0-01 建立进度文件组(4 文件)作为续接载体 4 文件就位,可据其续接 12 §1.2
M0-02 回归基线记录(现状业务行为,9 文档 §2) M0-00 基线清单成文 09 §2
M0-03 统一硬件访问层接口定义(骨架,不实现) M0-00 接口签名定义成文 13;01;00 §4 D2

M0 总评:✅ 基线就位。

M1 · 合并跑通(依据 01;审计 U1/U3)

审计真相:源码骨架到位 + 物理合并已完成(MERGE 行);HAL 由"半成品"在本会话修复为接通(借用闸门暂停 T1.3、调试改 lease T1.2、补 HAL 6/7 方法 T1.1)。

编号 任务 状态 依赖 出口验收 关联源码/文档 环境验证
M1-00 程序集身份统一(同名冲突消解) 无重复程序集/类型冲突 命名空间隔离 IvfTl.Control.*;operate+control 0 error 编译通过
M1-01 operate 单进程托管 control StartRun() 🟢 M0-03 单进程启动、control 无独立 UI StartMain.cs、MainWindow.xaml.cs;真机托管启动通过
M1-02 去 control 登录窗 Window1、单登录 🟢 M1-01 无 control 登录窗 MainWindow.xaml.cs;真机单登录通过
M1-03 硬件访问层单例落地 + 互斥 + 借用闸门 🟢 M1-01 调试取图↔采集切换不占用 T1.1 补 HAL 6/7 方法(写EEPROM待V-010真机);T1.2 调试页删 new ComBin 改 lease.Serial/Camera;T1.3 接通借用闸门暂停 CapturePausedByGate;真机 T1.4 待 GUI 验

M1 总评:🟢 源码 + 物理合并 ✅;HAL 闸门暂停/调试 lease/HAL 方法 本会话接通(旧审计 U3"半成品"已修);T1.4 串口占用解除真机待 GUI 验、写EEPROM待 V-010。

M2 · 本地自动对焦(依据 03 + 12 §2;审计 U2)

审计真相:算法/公式/手调真完成(可信基线);致命 bug scene=0 默认不拍照本会话已修(T0.2 降级回退 eepromClearPosition);单测已重建(M2-02 23 断言全通过)。清理任务仍欠账、标定实拍真机待验。

编号 任务 状态 依赖 出口验收 关联源码/文档 环境验证
M2-01 移植对焦算法 🟢 M1-01 算法类移植编译通过 IvfTl.AutoFocus/;与 autofocustool 一致
M2-02 拍摄层位置计算 + 配置解析(单测) M2-01 公式与配置链单测通过 单测重建 23 断言全通过 + 对焦公式逻辑验证正确
M2-03 StartAutoFocus 本地化 🟢 M2-01,M2-02 本地算 FocusZ 驱动拍照 HouseBin.cs;T0.2 修 scene=0 降级回退 eepromClearPosition(修"默认不拍照");V-047 下发链 Java 编译 SUCCESS
M2-04 标定写本地 JSON + 镜像 calibration 表 🟢 M2-03,M3-DB 标定结果落库 CalibrationStore
M2-05 场景A 工程师调试页一键标定 🟢 M2-03 16 well 逐个跑 HouseDebugPageVM
M2-06 场景B 放皿后自动对焦接入触发 🟢 M2-05 放皿自动出图 HouseBin;安全门
M2-07 对焦后界面手调拍摄层(well 级持久化) 🟢 M2-03 手调值写 house_well_setting HouseDebugPageView;V-064 上行链 Java 编译 SUCCESS
M2-清理 对焦标定清理任务(scene=1 定期清理) 🟢 M2-04 按天数清理、scene=0 保留 审计 C6 / G4-1✅2026-06-20:DBService.CleanAutofocusData 物删 scene=1 过期(scene=0 永留)+AppData 每日维护窗口调度+读 tl_setting.clean_autofocus_data 下发值(C# 下发链 4 文件+ConvertHelper 3 路径补全;中央列+Java 链原已就绪);dotnet build operate 0 error;清理真入库待运行验

M2 总评:🟢 算法/公式/手调/单测可信,scene=0 致命 bug 本会话已修;清理任务(C6/G4-1)本会话补齐(0 error);标定实拍真机、清理运行抽查待验。

M3 · 微服务改造(依据 04;审计 U4)

审计真相:质量最好的一块(全符合)——删打分链干净、5 处消费改判据无 NPE、闭环未破坏。

编号 任务 状态 依赖 出口验收 关联源码/文档 环境验证
M3-DB 自动对焦数据层 SQL 迁移 M0-00 迁移脚本成文并应用 应用到库并 DESC 校验通过(V-001 ☑)
M3-01 删选层打分链 🟢 M2-03 打分链无残留、无启动报错 04 §4.1;编译 SUCCESS
M3-02 business-manage image_score 消费改判据 🟢 M3-01 不 NPE 04 §6.2;5 处改判据;编译 SUCCESS
M3-03 calPhotoPosition 输入改本地对焦结果 🟢 M2-03,M3-01 本地结果驱动拍照位置 04 §5/§6.3;编译 SUCCESS
M3-04 保留链回归(抠图/水印/视频/AI) 🟢 M3-01 回归通过 04 §4.3/§7;待验证 V-072~075

M3 总评:🟢 符合(审计质量最好);真机回归待 M7。

M4 · UI 改造(依据 07;审计 U7)

审计真相:框架 + 主页 + 键盘 + 双语真落地;13 子页自适应未落地(仍写死像素)+ TabTip 未屏蔽 + 弹框位置待修

编号 任务 状态 依赖 出口验收 关联源码/文档 环境验证
M4-01 自适应竖屏框架 + 触控 + 圆形 + 键盘 + 主页零滚动 🔶 M1-01 框架/主页/键盘/双语落地 07;M4子计划;主窗/主页/新页已改
M4-子页 13 子页自适应(去写死像素 + Viewbox) 🔶 M4-01 各子页各分辨率布局正常 G2-2 ✅2026-06-20 根层完成:宿主 MainGrid 下沉 1824×2736 基准 + 11 页根 Height/Width→d:Design*;编译0err;7 星号页真机视觉待验。内层 Canvas 绝对定位留深层轮。回归修复2026-06-20 ✅实机验证通过:MainGrid 固定+Viewbox 后软键盘 0×0,SoftKeyboardHost 改顶层 Popup 托管(脱离 Viewbox)+键盘屏幕居中(贴底会被屏幕裁掉"确定"行),用户在场三轮验通过
M4-TabTip TabTip(系统触摸键盘)程序级屏蔽 M4-01 TabTip 不弹 审计 D2/B4:仅停 osk + IME 禁用,TabTip 未屏蔽
M4-弹框 首页舱室弹框 / 标定弹窗 位置/大小修复 🔶 M4-01 弹框位置正确居中 真机视觉待修

M4 总评:🔶 框架部分落地;子页自适应/TabTip 欠账,弹框位置待修。

M5 · 配置统一 / 服务监控 / 通讯稳定(依据 05/06;审计 U6)

审计真相:加密/监控/MQTT 真落地;kfka 重复键回归 本会话已修(T0.1 删重复键);容错读取已接(B6)、HTTP 失联标记已补(C3)。

编号 任务 状态 依赖 出口验收 关联源码/文档 环境验证
M5-01 参数配置统一管理(分层/去重/加密/界面化) 🟢 M1-01 配置界面化、单一数据源、密码加密 06;T0.1 删 kfka 重复键(修日志指错 localhost 回归)
M5-02 设置页只读服务监控 + 链路健康 + 心跳/断线/补传 🟢 M1-01 断线有提示、补传不丢 05;B6 容错读取接启动崩点 + C3 HTTP 失联标记已补 + down<count 校验下沉

M5 总评:🟢 加密/监控/MQTT 可信;kfka 重复键、容错读取、HTTP 失联标记 本会话补齐;真机链路验证待 M7。

M6 · 业务回归(依据 02/08;审计 U10)

审计真相:契约(traceId/topic/NPE)已对齐,骨架通;待 GUI 业务流程真机走通。

编号 任务 状态 依赖 出口验收 关联源码/文档 环境验证
M6-01 既有临床业务全回归 + front 影响回归 M2–M5 业务基线逐条通过 02、08、09 §2;待 operate GUI 业务流程

M6 总评:☐ 未开始(待 GUI 业务流程真机走通)。

M7 · 集中测试与真机验收(依据 09 §3 + 待验证清单.md)

编号 任务 状态 依赖 出口验收 关联源码/文档 环境验证
M7-01 按待验证清单风险从高到低集中验证 M6 高风险项有结论或缓解 12 §1.4、09 §3
M7-02 真胚胎对焦/74000伪峰/EEPROM 回写读回一致 M7-01 03 §6 三项有结论 03 §6
M7-03 端到端闭环 + 断网恢复补传 M7-01 09 §3 验收清单全过 09 §3

M7 总评:☐ 未开始(硬件层 + 业务 API 已真机闭环,GUI 全流程验收待续)。

M8 · 全量操作日志(依据 14;审计 U8)

审计真相:机制四段链路通;埋点远未"全埋"——operate 逐方法/Java(tl-control/business) 埋点 ❌、配置下发 ❌(C4);front 接入 本会话已补(C5)

编号 任务 状态 依赖 出口验收 关联源码/文档 环境验证
M8-01 日志库 operation_log 表 + 微服务 aivfo-oplog 操作日志经 Kafka 入库 14;P1 完成(发消息→入库✔)
M8-02 Kafka topic tl-oplog + 统一 schema M8-01 两端日志格式一致 14 §5/6;三端同 schema
M8-03 Java @OperateLog 切面机制 + 关键方法注解 🟢 M8-02 Java 操作入库、trace 串联 14 §8;机制✔ + data-transmission✔;tl-control 15C/90法 + business 24C/121法 已贴 @OperateLog + 装三件套(G3-2),编译 BUILD SUCCESS;真入库待 Kafka+oplog 运行验
M8-04 C# 组件 Aivfo.OperationLog M8-02 组件可复用 14 §9;P3a 端到端✔
M8-05 C# 全埋 operate + front 🟢 M8-04 操作全覆盖 14 §2/9;operate 边界埋点✔ + front 接入✔(C5) + operate 逐方法手埋✔(G3-1:VM 层 HouseDebug/Buffer/Main/UnifiedConfig + View code-behind 加皿/胚胎/舱室设置/对焦设置命令入口,0 error);真入库待运行验
M8-06 可配置 + 配置集中下发 / 本地兜底补送 🟢 M8-03,M8-05 配置热生效 14 §10/11;组件开关✔ + §10 配置热加载(ConfigFilePath+OperationLogConfigWatcher)✔ + §11 投递失败落兜底+定时补送(TryResend)✔(G3-3);dotnet build 0 error;真入库/补送/热生效待运行验

M8 总评:🟢 机制全 + front 接入 + operate 逐方法埋点(G3-1) + Java(tl-control/business)埋点(G3-2) + 配置集中下发/本地兜底补送(G3-3) 均本会话补齐;M8 可写代码全清;真入库/补送/热生效待 Kafka+oplog 运行抽查。


剩余工作总览(本会话后仍未完成项 → 详见《当前开发计划》)

详细分组任务(目标/涉及文件/验收/真机门控)见 开发计划/2026-06-20-当前开发计划.md(Phase B 建立后由本表引用)。下列为指针。

  • G1 串口收尾:T1.4 真机验证(借用→暂停→调试复用句柄→归还恢复,不报端口占用,需 GUI);ComBin 枚举阶段迁移去重(B 栈枚举阶段未迁移、未全删,迁移后真机验);写 EEPROM 调试动作补全(待 V-010 真机)。
  • G2 UI:首页舱室弹框位置/大小修复;M4 13 子页自适应(去写死像素 + Viewbox);TabTip 程序级屏蔽;well 三态色彩。
  • G3 日志铺开operate 逐方法埋点(G3-1✅2026-06-20)Java(tl-control/business)埋点(G3-2✅)M8 §10 配置集中下发 / §11 本地兜底补送(C4,G3-3✅2026-06-20)G3 全清,真入库/补送/热生效待运行抽查。
  • G4 对焦/数据对焦标定清理任务(C6,G4-1✅2026-06-20)建库脚本与 migration 合并 + 幂等 runner(C2✅);本地 SQLite 列迁移(V-046,G4-3 真机门控)。
  • G5 业务回归 / 真机验收:M6 业务回归;M7 真机验收(按待验证清单逐条,含 operate 完整 GUI 业务流程、对焦实拍、首页舱室弹框、M4 子页自适应视觉)。

真机门控:G1 的 T1.4、G2 全部、G4 的对焦实拍、G5 全部需连下位机 + GUI 才能验收(见待验证清单 V-129~V-134)。