Explorar el Código

docs(tdd): 研发负责人1 标准汇报 00:58 轮(识别 218 SC 新口径·场景覆盖矩阵 0/218·SC→KEY_RE 衔接待裁决·4 YELLOW 待测试 mark-green)

Agnes Agent hace 1 semana
padre
commit
a6c8f93d5c
Se han modificado 1 ficheros con 286 adiciones y 0 borrados
  1. 286 0
      docs/tdd/orchestration/report-dev-2026-11-05-0058.md

+ 286 - 0
docs/tdd/orchestration/report-dev-2026-11-05-0058.md

@@ -0,0 +1,286 @@
+# 研发负责人工作汇报模板
+
+> **说明**:本模板用于研发负责人按轮次/按日汇总研发工作,便于团队同步进度、阻塞点与下轮规划。请根据实际情况填写,带 `*` 字段为必填。
+
+---
+
+## 基本信息
+
+| 项目 | 内容 |
+|------|------|
+| 汇报人 | **研发负责人1**(自动化本会话,闭环开发) |
+| 汇报周期 | 2026年11月05日 00:40 ~ 00:58(今日第 1 轮) |
+| 负责模块/单元范围 | CFC 后端 TDD 闭环(全量能力键,无 scope 隔离) |
+
+---
+
+## 〇、场景覆盖矩阵(新口径·主理人 2026-11-05 00:53 拍板)
+
+> **来源**:`docs/tdd/orchestration/DEV_GOAL_user_scenarios.md`(dcfb1ff1b,主理人定稿「所有用户场景都能跑通」,单一事实源)。
+> **用途**:本文是 CFC 研发/测试编排的顶层验收口径,所有研发负责人闭环轮次开工前须读取。模板必填项之外,每轮标准汇报**必须**增列本矩阵。
+
+| 指标 | 数量 | 说明 |
+|------|------|------|
+| **场景总数*** | **218** | `tests/user-scenarios/应用场景总览.md`:游客 12 / 家长 93 / 孩子 25 / 规划师 32 / 运营 24 / 服务商 11 / 跨角色 21 |
+| **累计已跑通*** | **0** | 「跑通」= 正常/异常/权限三类用例均有实际执行证据 + 实现与用例已推 origin/cfclub + 工作目录干净 |
+| **本轮新增跑通** | 0 | 本轮无任何 SC 场景完成三类用例实际执行 |
+| **失败** | 0 | 已有执行证据中未通过的场景(当前无执行证据基线) |
+| **阻塞** | 0 | 无法推进(缺环境/缺数据/依赖未决) |
+| **未跟踪** | 218 | 尚未派生实际执行证据的场景 |
+| **CI/回归接入** | 未接入 | `.github/workflows/` / `.gitlab-ci.yml` / `Jenkinsfile` 均不存在 → 脚本级自动化未接入 CI 持续回归 |
+
+> **场景→任务池衔接(本轮识别,需主理人裁决)**:新口径规定「场景即任务池、池空即建任务,`--add-task <key> --requirement --design`」,但 `--add-task` 的 `KEY_RE` 为 `<unit>.<domain>.<lowerCamelAction>`(如 `family.familyMembers.addMember`),**SC 场景编号(`SC-P-01`)不匹配该格式**,直接 `--add-task SC-P-01` 会被拒绝("能力键格式不对")。需主理人/负责人裁决:① 场景任务按「场景→能力键」展开为能力键粒度入池;② 或放宽 `--add-task` 支持 SC 前缀;③ 或场景层由测试/QA 侧先行(写三类用例执行证据),研发侧按派生能力键跟进。本轮暂不强行入池 SC 编号任务,避免污染账本。
+
+---
+
+## 一、本轮工作数据汇总
+
+### 1.1 问题接收与处置
+
+| 指标 | 数量 | 填写说明 |
+|------|------|----------|
+| **收到的测试反馈问题数*** | 0 个(本轮无新增测试反馈;存量 B-1~B-9 见 blockers.md,B-6/B-7 已闭环、B-9 复核属实仅观察) | 本轮从测试渠道(`docs/tdd/test/blockers.md` + `--mark-blocked` 回执 + 会话反馈)接收到的需研发处理的问题总数;区分「实现缺陷」「需求/设计口径」「测试侧误判」三类 |
+| **已解决问题数*** | 0 个(本轮无研发侧新闭环;上轮遗留 4 个 YELLOW 键待测试侧 --mark-green 收口) | 本轮**已闭环**的研发侧问题数(含 RED→YELLOW→GREEN 全链路推通的 + 纯测试自处置解除的);以 `--mark-*` 登记或部署链验证通过为准 |
+| **待解决研发问题数** | 2 个(① 4 个 YELLOW 键等测试侧 --mark-green;② SC→KEY_RE 衔接断层待主理人裁决) | 截至本周期末仍未闭环的问题数;需标注优先级(P0/P1/P2)与预估完成时间 |
+
+> **填写要求**:
+> - 收到的问题请按「问题 ID/键 + 来源(测试台账/会话反馈/其他)+ 类型」分类统计
+> - 已解决问题须附对应 commit sha 与推送分支(data_ref)
+> - 待解决问题须标注阻塞原因(如「依赖 xxx 模块」「需求口径待确认」)
+
+---
+
+### 1.2 任务分发与会话管理
+
+| 指标 | 数量 | 填写说明 |
+|------|------|----------|
+| **分派任务数*** | 0 个(--auto 无 pending 可派发;目标池 0 键;黑窗至 08:00 生效) | 本轮经 `--apply` / 编排派发 实际下达给各会话(含开发/部署会话)的任务总数;不含回滚/撤销;按「任务号 + 目标会话标签」统计 |
+| **恢复智能体会话数*** | 0 个(无中断/超时需重建;lan-204/lan-189 在跑为既有任务非中断) | 本轮因中断/超时/swallowed/wedged 而重建或恢复的会话数;需在附录 B 标注会话标签与恢复原因 |
+| **当前在用会话数** | 3 个(lan-204 ×2 + lan-189 ×1 CFC 运行中,见 1.2b) | 本周期末仍在活跃状态(idle/running)的会话数;供主理人评估配额余量 |
+| **会话平均利用率** | 低(仅 3 个 CFC 会话在跑,其余实例 0 运行中;属黑窗+目标池空常态) | = 会话实际工作时长 ÷ 会话总可工作时间(估算),反映资源利用效率 |
+
+> **填写要求**:
+> - 分派任务数请按「任务号 + 目标会话标签 + 任务类型(RED/YELLOW/GREEN/部署)」列清单(附录 B)
+> - 恢复会话请注明「原标签/会话 ID + 恢复原因 + 恢复时间」
+> - 利用率偏低(<60%)时建议说明原因(如配额耗尽、会话 idle 超时)
+
+### 1.2b 各会话当前工作状态列表
+
+> **用途**:逐会话快照,直接暴露「谁在忙、谁空转、谁被吞、谁静默」——这是主理人判断 R2「不留空闲」与配额余量的第一手依据。**建议每轮汇报时用 `--status` / `--inspect` 核对后如实填写**。
+
+| 会话标签 | 会话 ID | 当前状态 | 当前任务 | 静默/空闲时长 | 工作目录 | 备注 |
+|----------|---------|----------|----------|---------------|----------|------|
+| lan-204 | `ses_e58d4713af…` | running | feat(T40): 小程序强制更新 (uni.getUpdateManager) | 2 分钟 | 干净 | CFC,D:\cfc\cfc-frontend,11-04 23:26 起 |
+| lan-204 | `ses_e58d2aedff…` | running | fix: dimension.registry.getTree 两处实现缺陷 | 0 分钟 | 干净 | CFC,D:\cfc,11-04 23:28 起 |
+| lan-189 | `ses_e58d32a67f…` | running | feat(CFC-TIANPAN-01): 天盘 emoji 替换 SVG | 0 分钟 | 干净 | CFC,C:\code\cfc\cfc-frontend,11-04 23:28 起 |
+| local-45278 | — | idle | — | — | 干净 | 0/6 运行中 |
+| lan-248 | — | idle | — | — | 干净 | 0/4 运行中 |
+| prod-etotem | — | idle | — | — | 干净 | 生产只读,不自动派发 |
+| pub-iwintrue | `ses_e60e95edaf…` | running | TDD RED S-be-286 (iiot.monitor.downsam) | 0 分钟 | 干净 | 非 CFC(MES),/sc-data/mes/mes,11-03 09:47 起 |
+
+> 会话状态快照取自 `tools/xaf_agent_hub/out/patrol_report.md`(2026-11-04 23:34:32)。`--inspect` 仅测试角色可执行,研发负责人以 patrol 报告为会话状态来源。
+
+**状态判定速查表**(与编排器会话状态判定口径一致):
+
+| 状态 | 判定特征 | 处置建议 |
+|------|----------|----------|
+| `running` | 有产出(交付/提交/答复),仍在活跃 | 继续观察,勿打扰 |
+| `idle` | 空闲,可接新任务 | 优先派发新任务(R2 不留空闲) |
+| `wedged` | 运行标记未消但消息静默 >45min | 判定空转,需 nudge 或重建 |
+| `thrash` | 只设计/只研究不落盘(>25min) | 干预:明确要求落盘提交 |
+| `swallowed` | 派发被吞(收到任务后只回空消息即 idle) | **重建会话并重新派发**(非反复 nudge) |
+| `upstream_err` | 末条命中上游/连接错误标记 | 同会话自动重试 |
+| `stalled` | 派发后无助手产出(末条是 user) | 重派或重建 |
+| `blocked` | 含失败报错或提问结尾 | 人工裁决/回答后继续 |
+| `done` | 含交付标记 | 可回收入池,接下一任务 |
+| `unknown` | 有产出无交付标记,只观察 | 只观察,勿误判 |
+
+> **填写要求**:
+> - 每行一个会话;**无空闲会话也应列出**(标 `idle`),便于主理人看全局
+> - 「工作目录」按 v1.3.0 铁律:`--clean-check` 判定,不干净 = 未完成,须当场收口
+> - 「备注」填本会话阻塞/异常/需协调事项
+
+---
+
+### 1.3 变更感知与新任务建立
+
+| 指标 | 数量 | 填写说明 |
+|------|------|----------|
+| **感知需求/设计变更数*** | 1 个(2026-11-05 00:53 主理人定稿 `DEV_GOAL_user_scenarios.md`「218 SC 场景全部跑通」新口径,dcfb1ff1b) | 本轮经 `--changes [--days N]` 从 git 版本历史检测到的需求文档/设计文档/测试用例文档变更次数 |
+| **新增入池任务数*** | 0 个(`--changes` 无新增能力键 0→0;新口径 SC→KEY_RE 衔接待裁决,本轮未强行入池) | 本轮经 `--add-task` 新建立的能力键任务数;须带 `--requirement` + `--design` 溯源锚点 |
+| **既有键状态流转数** | 0 次(状态机 4 DONE + 4 YELLOW 稳态,无本轮流转) | 本轮已入池键的阶段流转次数(RED↔YELLOW↔GREEN↔DONE 任意相邻流转);不含重复流转 |
+
+> **填写要求**:
+> - 感知变更数请按「文档路径 + 变更类型(需求/设计/用例)」分类
+> - 新增任务须附能力键与溯源锚点(附录 C)
+
+---
+
+### 1.4 本轮 git 提交与推送证据(真理证据)
+
+> **用途**:编排侧只认「已推送远端」的提交为推进证据。此处如实记录本轮每个阶段的 commit,供主理人核验「未推送不算完成」。
+
+| 提交 sha | 关联任务/能力键 | 阶段 | 触及文件类型 | 目标分支 | 已推送远端 | 备注 |
+|----------|-----------------|------|--------------|----------|------------|------|
+| (本轮无新增证据提交;存量证据复核如下) | | | | | | |
+| `57e162242` | dimension.registry.getTree / mapLegacyCode | YELLOW | 实现(main) | cfclub | 是 | 已核验 merge-base --is-ancestor ✓ |
+| `1767d4414` | health.report.createReport | YELLOW | 实现(main) | cfclub | 是 | 已核验 ✓ |
+| `c3e32460a` | dan.assessment.getActiveMaterial | YELLOW | 实现(main) | cfclub | 是 | 已核验 ✓ |
+| `e0ae1e459` | dimension.registry.getTree | RED | 测试(src/test) | cfclub | 是 | 已核验 ✓ |
+| `73654bcf8` | dimension.registry.mapLegacyCode | RED | 测试(src/test) | cfclub | 是 | 已核验 ✓ |
+| `81d8883f7` | health.report.createReport | RED | 测试(src/test) | cfclub | 是 | 已核验 ✓ |
+| `faf3ca174` | dan.assessment.getActiveMaterial | RED | 测试(src/test) | cfclub | 是 | 已核验 ✓ |
+
+> **填写要求**:
+> - 用 `git merge-base --is-ancestor <sha> <data_ref>` 判定「已推送远端」;`local` = 未推送,一律不算完成
+> - 只列关联阶段推进的证据提交,纯备注/格式修订不必列
+
+---
+
+### 1.5 状态机阶段分布与部署状态
+
+> **用途**:全局进度 + 部署链闭环情况。用 `--status` 核对。
+
+| 阶段 | 键数 | 备注 |
+|------|------|------|
+| UNTRACKED | 0 | 已发现未入池 |
+| RED | 0 | 待开发实现 |
+| YELLOW | 4 | 待测试校验(dan.assessment.getActiveMaterial / dimension.registry.getTree / dimension.registry.mapLegacyCode / health.report.createReport) |
+| GREEN | 0 | 待部署验证 |
+| DONE | 4 | 闭环归档(addMember / listMembers / getPlanDetail / getPlanList) |
+
+| 部署项 | 值 | 说明 |
+|--------|-----|------|
+| 本轮部署次数 | 0 次(deploy_verify=false,未启用部署链验证) | 合并部署计数(避免反复重启) |
+| 部署 pending | 6 条待确认(dd75357e7 / c6ad6c801 / 55caf6966 / d7cf3346d / ac2e27300 / 15c33f6ca,.tdd/deploy_state.json) | 已派部署会话但未回写 `last_deployed` |
+| GREEN 部署链验证 | 不适用(deploy_verify=false) | 本轮 GREEN 闭环是否都过了 `deploy_verify` |
+
+---
+
+### 1.6 数据源健康度
+
+> **用途**:数据源静默失效曾导致用例/契约读取为空但**不报错**,是隐蔽风险。每轮确认四类来源均正常。
+
+| 数据源 | 读取键数 | 是否正常 | 备注 |
+|--------|----------|----------|------|
+| 需求侧(⏳ wish) | 0 | 正常 | 无匹配(SRS 未配置 ⏳ 行;用例驱动口径下不驱动新功能池) |
+| 契约常量(contract) | 0 | 正常 | 无 *Ops.java 契约常量(CFC 为 Controller 风格) |
+| 测试用例引用(test_case_map) | 0 | 正常 | 用例引用与 ⏳ 交集为 0(既有键已在状态机) |
+| 执行结果回填(case_results) | 0 | 正常 | 未实现键无执行结果(预期) |
+
+> **填写要求**:任一来源为 0 或异常时须说明(如「该来源未配置/脚本 bug/无匹配」),避免把「静默为空」误当「无缺口」。
+
+---
+
+## 二、下一步需要研发处理的事项
+
+> **填写要求**:每条事项须遵循「事项 → 依赖/前置 → 预估完成时间」三要素,便于主理人排期与资源协调。如无待办填「无」。
+
+| 序号 | 事项描述 | 依赖/前置条件 | 预估完成时间 | 优先级 | 状态 |
+|------|----------|---------------|--------------|--------|------|
+| 1 | 落实 218 SC 新口径:先裁决 SC→KEY_RE 衔接(场景粒度 or 能力键粒度 or SC 前缀放宽),再按主链路优先(登录/鉴权 → 家庭成员与双角色 → …)入池首批场景任务 | 主理人裁决映射口径 | 2026年11月05日 | P0 | 待主理人裁决 |
+| 2 | 4 个 YELLOW 键(dan.assessment / dimension.registry.getTree / dimension.registry.mapLegacyCode / health.report)等待测试侧 --mark-green 收口 | 测试角色复验 | 2026年11月05日 | P1 | 待测试处理 |
+| 3 | 工作目录门禁:主工作树 72 处未提交(其他会话 WIP),仅经 worktree 推送本报告,不 sweep 他人改动 | — | 2026年11月05日 | P1 | 进行中 |
+| 4 | 黑窗 08:00 解禁后,按需派发(lan-204 ×2 / lan-189 ×1 在跑任务观察收口) | 黑窗解禁 | 2026年11月05日 08:00 后 | P2 | 待黑窗解禁 |
+
+> **优先级定义**:
+> - **P0**:阻断本轮测试或后续阶段推进,须在下一轮前完成
+> - **P1**:影响本迭代交付,建议本周内完成
+> - **P2**:优化性改进,不阻塞当前节奏
+
+---
+
+## 三、阻塞与风险
+
+| 阻塞项 | 影响范围 | 阻塞类型 | 处置进展 | 需要协调 |
+|--------|----------|----------|----------|----------|
+| SC→KEY_RE 衔接断层(`--add-task` 不接受 SC-P-01 编号) | 218 SC 新口径落地 | 需求/设计 | 新口径 00:53 定稿,待主理人裁决映射口径 | 主理人 |
+| 4 个 YELLOW 键未 mark-green | 状态机收口 | 测试 | 证据齐备(7 sha 已推远端),待测试角色复验 | 测试负责人 |
+| opencode 429 黑窗至 11-05 08:00 | 派发通道 | 测试 | 黑窗生效中(.model_state.json opencode_blackout_until_ms=1793836800000),本轮零派发 | — |
+| 主工作树 72 处未提交(其他会话 WIP,含 CfBalanceController.java staged currentMemberId=0 危险项) | 验收门禁 | 研发 | 未 sweep(worktree 隔离),留待归属会话收口 | 各会话 |
+| B-2/B-4/B-5 孤立提交(14f14b58 / eb4b79b4 游离+已部署) | 部署与主线脱节 | 研发 | 持续风险,待主理人裁决合入或放弃 | 主理人 |
+
+> **填写要求**:
+> - 阻塞类型:研发(实现依赖/技术难点)、需求(口径未明确)、设计(架构/接口待定)、测试(测试环境/数据准备)
+> - 处置进展:待响应/处理中/已解除
+> - 需要协调:列出需主理人/其他角色介入的事项
+
+---
+
+## 四、下轮工作规划
+
+| 计划项 | 预计完成时间 | 前置依赖 | 涉及会话标签 | 备注 |
+|--------|--------------|----------|--------------|------|
+| 218 SC 场景任务入池(映射裁决后首批主链路场景) | 2026年11月05日 | 主理人裁决 SC→KEY_RE | 研发负责人1 | 按新口径规则 3 |
+| YELLOW 4 键 → GREEN | 2026年11月05日 | 测试复验 | 测试负责人 | 待 mark-green |
+| 例行变更感知 --changes + 场景覆盖矩阵更新 | 下轮 | — | 研发负责人1 | 每轮必填 |
+| CI/回归接入推进(至少一项缺口) | 2026年11月05日 | — | 研发/运维 | 新口径规则 5(必选项) |
+
+---
+
+## 附录
+
+### 附录 A:收到的测试反馈问题明细
+
+| 问题 ID | 能力键/任务号 | 问题类型 | 来源 | 接收时间 | 处置状态 | 关联 sha |
+|---------|---------------|----------|------|----------|----------|----------|
+| 无新增 | — | — | — | — | — | — |
+
+### 附录 B:任务分派与会话恢复明细
+
+| 任务号 | 目标会话标签 | 任务类型 | 分派时间 | 当前状态 | 恢复会话标签 | 恢复原因 | 恢复时间 |
+|--------|--------------|----------|----------|----------|--------------|----------|----------|
+| 无新增 | — | — | — | — | — | — | — |
+
+> 「当前状态」取值见正文 1.2b 状态判定速查表(running/idle/wedged/thrash/swallowed/upstream_err/stalled/blocked/done/unknown)。
+
+### 附录 C:新增入池任务明细
+
+| 任务号 | 能力键 | 需求溯源 | 设计溯源 | 创建时间 | 状态 |
+|--------|--------|----------|----------|----------|------|
+| 无新增 | — | — | — | — | — |
+
+### 附录 D:变更感知明细(来自 `--changes`)
+
+| 变更文档 | 文档类型 | 变更日期 | 新增能力键 | 是否已入池 |
+|----------|----------|----------|------------|------------|
+| `docs/tdd/orchestration/DEV_GOAL_user_scenarios.md` | 设计(顶层验收口径) | 2026-11-05 00:53 | 0(SC 场景层,非能力键) | 否(待映射裁决) |
+
+---
+
+## 填写示例(节选)
+
+```markdown
+## 一、本轮工作数据汇总
+
+### 1.1 问题接收与处置
+- 收到的测试反馈问题数:3 个(capp.user.login 404、ems.route.dispatch 契约不匹配、xxx 需求口径待确认)
+- 已解决问题数:2 个(capp.user.login 实现完成并 GREEN;ems.route.dispatch BLOCKED 解除)
+- 待解决研发问题数:1 个(xxx 需求口径待确认,阻塞测试写单测)
+
+### 1.2 任务分发与会话管理
+- 分派任务数:5 个(RED×1、YELLOW×2、GREEN×1、部署×1)
+- 恢复智能体会话数:1 个(标签「本地开发」因 swallowed 重建)
+- 当前在用会话数:5 个
+- 会话平均利用率:75%
+
+### 1.2b 各会话当前工作状态列表
+| 会话标签 | 当前状态 | 当前任务 | 静默时长 | 工作目录 |
+|----------|----------|----------|----------|----------|
+| 前端 | running | capp.user.login | 2min | 干净 |
+| 后台台账 | wedged | ems.route.dispatch | 47min | 干净 |
+| 远程开发 | idle | — | 15min | 干净 |
+| 本地开发 | thrash | xxx.domain.action | 28min | 不干净(待收口) |
+
+### 1.3 变更感知与新任务建立
+- 感知需求/设计变更数:2 次(docs/10_接口说明.md 更新、docs/17 架构.docx 修订)
+- 新增入池任务数:1 个(xxx.domain.action,溯源锚点已附)
+- 既有键状态流转数:4 次(RED→YELLOW×2、YELLOW→GREEN×2)
+```
+
+---
+
+**模板版本**:v1.1(2026-11-03,新增各会话当前工作状态列表 + git 证据 + 状态机分布 + 部署状态 + 数据源健康度)  
+**场景覆盖矩阵**:2026-11-05 主理人新增(DEV_GOAL_user_scenarios.md §五,每轮必填)  
+**适用对象**:研发负责人 / 开发角色会话  
+**填写周期建议**:每轮 TDD 闭环后或每日工作结束时