WROAD2B/WAPPR1 固化业务冒烟和审批规则门禁

这个提交包含在:
2026-05-20 17:48:31 +08:00
父节点 206a3b95b8
当前提交 15e665d91e
共修改 16 个文件,包含 113 行新增和 70 行删除
@@ -0,0 +1,7 @@
"ID","Title","Description","Acceptance","Test_Method","Tools","Dev_Status","Review1_Status","Regression_Status","Files","Dependencies","Notes"
"WAPPR1-0","审批规则规范化合同建档","建立 WAPPR1 企微审批规则规范化门禁;承接用户发现补卡申请需要手动选择审批人这一风险。本阶段只做合同和事实源治理,不改业务代码、不部署、不写企业微信;真实试用前必须证明审批人规则自动化。","1) 明确申请人不得任意选择审批人;2) 测试模板固定 SMOKE002 -> SMOKE101,禁止自审;3) 正式模板必须按直属主管、部门负责人或指定审批角色自动生成审批人;4) 审批人缺失、停用、未绑定企微、不可见或等于申请人本人时阻断;5) 企微 Secret 来源固定 WECOM_AGENT_SECRET,不尝试其他 Secret、无 fallback、不允许运行时猜 Secret;6) 缺配置或权限时记录 NEEDS_CONFIG 或 SKIP/BLOCKED_BY_EXTERNAL_CONFIG。","受影响流程:企微审批模板配置 -> 申请人提交请假/补卡/外出/加班 -> 自动审批人解析 -> 非自审审批;验证步骤:python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-05-20_17-13-57-wecom-approval-rule-governance-v1.csv;node scripts/qa/check-process-contract.mjs --issue issues/2026-05-20_17-13-57-wecom-approval-rule-governance-v1.csv --profile wecom --json。","python3|node|manual","DONE","DONE","DONE","issues/2026-05-20_17-13-57-wecom-approval-rule-governance-v1.csv","[]","回滚/清理:本合同仅治理规则口径;如规则无法在企微配置自动审批人,对应模板不得进入真实试用,保留测试账号范围或改由 OA 主办。本行合同建档、CSV 校验和 process gate 已通过。"
"WAPPR1-1","测试模板审批链冻结","固定 OA-POC 测试模板和测试审批链路为 SMOKE002 -> SMOKE101;若页面要求申请人手选审批人,只能选择 SMOKE101 并记录为 blocking finding。","1) 测试申请人和审批人不是同一 OA 员工;2) 不是同一企微 userid;3) 自审硬阻断;4) 不自动替换 SMOKE101 为其他员工;5) 手动选择审批人现象不得视为规则通过。","受影响流程:测试账号提交审批 -> 审批链校验 -> 回调/补偿/归档证据;验证步骤:人工提交请假/补卡时记录审批人是否自动带出;rg -n ""SMOKE002 -> SMOKE101|手选审批人|禁止自审|不是同一企微 userid"" docs .agents/skills/hyb-oa-delivery/SKILL.md。","manual|rg","TODO","TODO","TODO","docs/需求-统一审批中心规约.md|docs/需求-请假考勤修正规约.md","[""WAPPR1-0""]","回滚/清理:如 SMOKE101 不可用,不自动换人,暂停并问答确认新的非本人审批人。"
"WAPPR1-2","正式模板自动审批人规则","固化正式请假、补卡、外出、加班模板的审批人规则:默认按直属主管、部门负责人或指定审批角色自动生成,不允许申请人任意选审批人。","1) 四类模板均需记录审批人规则类型、适用范围、可见范围和所属自建应用权限;2) 申请页不应让申请人自由选择任意审批人;3) 允许管理员预配置固定角色或主管链,但不能由申请人绕过规则;4) 主管链断裂、审批人停用或不可见时阻断提交;5) 规则 finding 解决前不启动 WREAL1 真实小范围试用。","受影响流程:正式模板配置 -> 员工申请 -> 企微自动审批人 -> OA 留存和审计;验证步骤:管理员在企微后台检查四类模板审批流程配置;rg -n ""自动审批人|直属主管|部门负责人|指定审批角色|申请人任意选择审批人"" docs .agents/skills/hyb-oa-delivery/SKILL.md。","manual|rg","TODO","TODO","TODO","docs/企微优先开发路线图.md|docs/管理员手册.md|docs/需求-请假考勤修正规约.md","[""WAPPR1-1""]","回滚/清理:如企微模板能力或后台配置不支持自动审批人,对应模板保持测试账号 POC 或 OA 主办,不进入真实员工试用。"
"WAPPR1-3","真实试用准入阻断","把审批规则规范化作为 WREAL1 前置门禁;四类模板只要仍存在申请人任意选择审批人、自审可能、审批人缺失或不可见,即暂停真实试用。","1) WREAL1 启动前必须有 WAPPR1 结论;2) 请假、补卡、外出、加班按模板分别判定;3) 结论限定为 PASS_APPROVER_RULES_READY、PASS_WITH_TEMPLATE_ADJUSTMENTS、FAIL_KEEP_OA_PRIMARY_FOR_THIS_TEMPLATE 或 SKIP/BLOCKED_BY_EXTERNAL_CONFIG;4) FAIL 模板不得进入真实员工范围;5) 不因测试号通过而直接进入镜像。","受影响流程:四类测试号证据 -> 审批规则门禁 -> WREAL1 问答;验证步骤:三天业务冒烟和 WEXT1-LIVE 后汇总每类模板规则结论;rg -n ""PASS_APPROVER_RULES_READY|FAIL_KEEP_OA_PRIMARY_FOR_THIS_TEMPLATE|WREAL1|镜像"" docs .agents/skills/hyb-oa-delivery/SKILL.md。","manual|rg","TODO","TODO","TODO","docs/企微优先开发路线图.md|docs/管理员手册.md|docs/trialrun/人工试运行报告.md","[""WAPPR1-2""]","回滚/清理:准入失败只暂停真实试用和镜像,不删除已有 OA-POC 审计记录。"
"WAPPR1-4","事实源回写","更新路线图、统一审批规约、请假考勤规约、管理员手册、试运行报告、文档索引、事实源矩阵和项目 skill,固化 WROAD2-BIZ1 与 WAPPR1。","1) 路线明确 WROAD2-CLOSEOUT 与 WROAD2-BIZ1/WAPPR1 并行;2) WEXT1-LIVE 可三天内规划,但写入前必须独立合同和人工确认;3) 真实试用必须等四类测试号证据和审批规则门禁通过;4) 文档记录补卡手选审批人为 blocking finding;5) P2 大功能继续冻结。","受影响流程:事实源 -> 三天业务冒烟 -> 审批规则治理 -> WEXT1-LIVE/WREAL1;验证步骤:node scripts/qa/audit-docs.mjs --check-registry;python3 /home/shunli/.codex/skills/.system/skill-creator/scripts/quick_validate.py .agents/skills/hyb-oa-delivery;rg -n ""WROAD2-BIZ1|WAPPR1|自动审批人|申请人任意选择审批人|WEXT1-LIVE|四类测试号证据"" docs .agents/skills/hyb-oa-delivery/SKILL.md。","node|python3|rg","TODO","TODO","TODO","docs/企微优先开发路线图.md|docs/需求-统一审批中心规约.md|docs/需求-请假考勤修正规约.md|docs/管理员手册.md|docs/trialrun/人工试运行报告.md|docs/文档索引.md|docs/文档事实源状态矩阵.md|.agents/skills/hyb-oa-delivery/SKILL.md","[""WAPPR1-3""]","回滚/清理:恢复本轮文档和 skill 改动即可;不修改历史 Issue 快照。"
"WAPPR1-5","状态回填与提交","完成 WROAD2-BIZ1/WAPPR1 合同门禁、事实源门禁、状态回填和中文提交。","1) 两个 CSV 校验通过;2) process gate 通过;3) 文档审计和 skill 校验通过;4) git diff --check 通过;5) 中文提交包含 WROAD2B/WAPPR1。","受影响流程:合同落地 -> 文档门禁 -> 三天业务冒烟和规则治理执行准备;验证步骤:validate_issues_csv.py 两个 CSV;node scripts/qa/check-process-contract.mjs --baseline --json;node scripts/qa/check-process-contract.mjs --issue 两个 CSV --profile wecom --json;node scripts/qa/audit-docs.mjs --check-registry;quick_validate.py .agents/skills/hyb-oa-delivery;git diff --check;git status --short。","python3|node|git","TODO","TODO","TODO","issues/2026-05-20_17-13-57-wroad2-business-smoke-v1.csv|issues/2026-05-20_17-13-57-wecom-approval-rule-governance-v1.csv|docs/*|.agents/skills/hyb-oa-delivery/SKILL.md","[""WAPPR1-4""]","提交建议:WROAD2B WAPPR1 固化业务冒烟和审批规则门禁。"
1 ID Title Description Acceptance Test_Method Tools Dev_Status Review1_Status Regression_Status Files Dependencies Notes
2 WAPPR1-0 审批规则规范化合同建档 建立 WAPPR1 企微审批规则规范化门禁;承接用户发现补卡申请需要手动选择审批人这一风险。本阶段只做合同和事实源治理,不改业务代码、不部署、不写企业微信;真实试用前必须证明审批人规则自动化。 1) 明确申请人不得任意选择审批人;2) 测试模板固定 SMOKE002 -> SMOKE101,禁止自审;3) 正式模板必须按直属主管、部门负责人或指定审批角色自动生成审批人;4) 审批人缺失、停用、未绑定企微、不可见或等于申请人本人时阻断;5) 企微 Secret 来源固定 WECOM_AGENT_SECRET,不尝试其他 Secret、无 fallback、不允许运行时猜 Secret;6) 缺配置或权限时记录 NEEDS_CONFIG 或 SKIP/BLOCKED_BY_EXTERNAL_CONFIG。 受影响流程:企微审批模板配置 -> 申请人提交请假/补卡/外出/加班 -> 自动审批人解析 -> 非自审审批;验证步骤:python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-05-20_17-13-57-wecom-approval-rule-governance-v1.csv;node scripts/qa/check-process-contract.mjs --issue issues/2026-05-20_17-13-57-wecom-approval-rule-governance-v1.csv --profile wecom --json。 python3|node|manual DONE DONE DONE issues/2026-05-20_17-13-57-wecom-approval-rule-governance-v1.csv [] 回滚/清理:本合同仅治理规则口径;如规则无法在企微配置自动审批人,对应模板不得进入真实试用,保留测试账号范围或改由 OA 主办。本行合同建档、CSV 校验和 process gate 已通过。
3 WAPPR1-1 测试模板审批链冻结 固定 OA-POC 测试模板和测试审批链路为 SMOKE002 -> SMOKE101;若页面要求申请人手选审批人,只能选择 SMOKE101 并记录为 blocking finding。 1) 测试申请人和审批人不是同一 OA 员工;2) 不是同一企微 userid;3) 自审硬阻断;4) 不自动替换 SMOKE101 为其他员工;5) 手动选择审批人现象不得视为规则通过。 受影响流程:测试账号提交审批 -> 审批链校验 -> 回调/补偿/归档证据;验证步骤:人工提交请假/补卡时记录审批人是否自动带出;rg -n "SMOKE002 -> SMOKE101|手选审批人|禁止自审|不是同一企微 userid" docs .agents/skills/hyb-oa-delivery/SKILL.md。 manual|rg TODO TODO TODO docs/需求-统一审批中心规约.md|docs/需求-请假考勤修正规约.md ["WAPPR1-0"] 回滚/清理:如 SMOKE101 不可用,不自动换人,暂停并问答确认新的非本人审批人。
4 WAPPR1-2 正式模板自动审批人规则 固化正式请假、补卡、外出、加班模板的审批人规则:默认按直属主管、部门负责人或指定审批角色自动生成,不允许申请人任意选审批人。 1) 四类模板均需记录审批人规则类型、适用范围、可见范围和所属自建应用权限;2) 申请页不应让申请人自由选择任意审批人;3) 允许管理员预配置固定角色或主管链,但不能由申请人绕过规则;4) 主管链断裂、审批人停用或不可见时阻断提交;5) 规则 finding 解决前不启动 WREAL1 真实小范围试用。 受影响流程:正式模板配置 -> 员工申请 -> 企微自动审批人 -> OA 留存和审计;验证步骤:管理员在企微后台检查四类模板审批流程配置;rg -n "自动审批人|直属主管|部门负责人|指定审批角色|申请人任意选择审批人" docs .agents/skills/hyb-oa-delivery/SKILL.md。 manual|rg TODO TODO TODO docs/企微优先开发路线图.md|docs/管理员手册.md|docs/需求-请假考勤修正规约.md ["WAPPR1-1"] 回滚/清理:如企微模板能力或后台配置不支持自动审批人,对应模板保持测试账号 POC 或 OA 主办,不进入真实员工试用。
5 WAPPR1-3 真实试用准入阻断 把审批规则规范化作为 WREAL1 前置门禁;四类模板只要仍存在申请人任意选择审批人、自审可能、审批人缺失或不可见,即暂停真实试用。 1) WREAL1 启动前必须有 WAPPR1 结论;2) 请假、补卡、外出、加班按模板分别判定;3) 结论限定为 PASS_APPROVER_RULES_READY、PASS_WITH_TEMPLATE_ADJUSTMENTS、FAIL_KEEP_OA_PRIMARY_FOR_THIS_TEMPLATE 或 SKIP/BLOCKED_BY_EXTERNAL_CONFIG;4) FAIL 模板不得进入真实员工范围;5) 不因测试号通过而直接进入镜像。 受影响流程:四类测试号证据 -> 审批规则门禁 -> WREAL1 问答;验证步骤:三天业务冒烟和 WEXT1-LIVE 后汇总每类模板规则结论;rg -n "PASS_APPROVER_RULES_READY|FAIL_KEEP_OA_PRIMARY_FOR_THIS_TEMPLATE|WREAL1|镜像" docs .agents/skills/hyb-oa-delivery/SKILL.md。 manual|rg TODO TODO TODO docs/企微优先开发路线图.md|docs/管理员手册.md|docs/trialrun/人工试运行报告.md ["WAPPR1-2"] 回滚/清理:准入失败只暂停真实试用和镜像,不删除已有 OA-POC 审计记录。
6 WAPPR1-4 事实源回写 更新路线图、统一审批规约、请假考勤规约、管理员手册、试运行报告、文档索引、事实源矩阵和项目 skill,固化 WROAD2-BIZ1 与 WAPPR1。 1) 路线明确 WROAD2-CLOSEOUT 与 WROAD2-BIZ1/WAPPR1 并行;2) WEXT1-LIVE 可三天内规划,但写入前必须独立合同和人工确认;3) 真实试用必须等四类测试号证据和审批规则门禁通过;4) 文档记录补卡手选审批人为 blocking finding;5) P2 大功能继续冻结。 受影响流程:事实源 -> 三天业务冒烟 -> 审批规则治理 -> WEXT1-LIVE/WREAL1;验证步骤:node scripts/qa/audit-docs.mjs --check-registry;python3 /home/shunli/.codex/skills/.system/skill-creator/scripts/quick_validate.py .agents/skills/hyb-oa-delivery;rg -n "WROAD2-BIZ1|WAPPR1|自动审批人|申请人任意选择审批人|WEXT1-LIVE|四类测试号证据" docs .agents/skills/hyb-oa-delivery/SKILL.md。 node|python3|rg TODO TODO TODO docs/企微优先开发路线图.md|docs/需求-统一审批中心规约.md|docs/需求-请假考勤修正规约.md|docs/管理员手册.md|docs/trialrun/人工试运行报告.md|docs/文档索引.md|docs/文档事实源状态矩阵.md|.agents/skills/hyb-oa-delivery/SKILL.md ["WAPPR1-3"] 回滚/清理:恢复本轮文档和 skill 改动即可;不修改历史 Issue 快照。
7 WAPPR1-5 状态回填与提交 完成 WROAD2-BIZ1/WAPPR1 合同门禁、事实源门禁、状态回填和中文提交。 1) 两个 CSV 校验通过;2) process gate 通过;3) 文档审计和 skill 校验通过;4) git diff --check 通过;5) 中文提交包含 WROAD2B/WAPPR1。 受影响流程:合同落地 -> 文档门禁 -> 三天业务冒烟和规则治理执行准备;验证步骤:validate_issues_csv.py 两个 CSV;node scripts/qa/check-process-contract.mjs --baseline --json;node scripts/qa/check-process-contract.mjs --issue 两个 CSV --profile wecom --json;node scripts/qa/audit-docs.mjs --check-registry;quick_validate.py .agents/skills/hyb-oa-delivery;git diff --check;git status --short。 python3|node|git TODO TODO TODO issues/2026-05-20_17-13-57-wroad2-business-smoke-v1.csv|issues/2026-05-20_17-13-57-wecom-approval-rule-governance-v1.csv|docs/*|.agents/skills/hyb-oa-delivery/SKILL.md ["WAPPR1-4"] 提交建议:WROAD2B WAPPR1 固化业务冒烟和审批规则门禁。
@@ -0,0 +1,7 @@
"ID","Title","Description","Acceptance","Test_Method","Tools","Dev_Status","Review1_Status","Regression_Status","Files","Dependencies","Notes"
"WROAD2B-0","三天业务冒烟合同建档","建立 WROAD2-BIZ1 合同;在 WROAD2C/WARCH3 自动巡检之外,补充测试账号真实业务动作清单。范围为三天内并行测试打卡、请假、补卡,并在 WEXT1-LIVE 经独立批准后补外出/加班测试号 live POC;当前不启用真实员工、不部署、不改业务代码、不写企业微信。","1) 明确系统巡检与人工业务冒烟分层;2) 测试账号固定 SMOKE002 -> SMOKE101,管理员观察和告警员工号为 HYD000006;3) 自动巡检仍每日 07:30 由 WARCH3 执行;4) 人工业务动作只使用低风险测试数据;5) 外出/加班 live 写入必须另建 WEXT1-LIVE Issue CSV 并再次人工确认;6) 企微 Secret 来源固定 WECOM_AGENT_SECRET,不尝试其他 Secret、无 fallback、不允许运行时猜 Secret;7) 缺 Secret、权限、可信 IP、可见范围、审批规则或企微后台配置时记录 NEEDS_CONFIG 或 SKIP/BLOCKED_BY_EXTERNAL_CONFIG。","受影响流程:WROAD2 自动巡检 -> 测试账号人工打卡/审批冒烟 -> OA 自建留存和离线查看;验证步骤:python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-05-20_17-13-57-wroad2-business-smoke-v1.csv;node scripts/qa/check-process-contract.mjs --issue issues/2026-05-20_17-13-57-wroad2-business-smoke-v1.csv --profile wecom --json。","python3|node|manual","DONE","DONE","DONE","issues/2026-05-20_17-13-57-wroad2-business-smoke-v1.csv","[]","回滚/清理:本合同仅规划人工动作和事实源,不创建模板、不提交审批单、不写企微、不部署;如停止三天业务冒烟,保持后续行 TODO 并在 Notes 写明原因。本行合同建档、CSV 校验和 process gate 已通过。"
"WROAD2B-1","打卡业务冒烟清单","固定三天内测试账号打卡动作:每天上/下班时段由 SMOKE002 执行企微打卡,可选 SMOKE101 作为第二测试账号;如果因企微规则、位置、设备、权限或排班无法打卡,记录真实原因。","1) 至少记录每天是否尝试上班/下班打卡;2) 不要求绕过企微定位、人脸、设备或规则限制;3) WCHECK1/WARCH3 次日巡检能读取打卡摘要、规则快照或真实 BLOCKED 原因;4) OA 离线打卡摘要可读;5) 报告不输出手机号、邮箱、token、Secret、完整 userid、位置、人脸、设备明文或原始 payload。","受影响流程:SMOKE002 企微打卡 -> WCHECK1 打卡摘要留存 -> OA 离线查看;验证步骤:每天人工记录打卡动作和异常;次日查看 WARCH3/WCHECK1 summary;rg -n ""打卡业务冒烟|SMOKE002|WCHECK1|位置|人脸|设备明文"" docs .agents/skills/hyb-oa-delivery/SKILL.md。","manual|rg","TODO","TODO","TODO","docs/管理员手册.md|docs/trialrun/人工试运行报告.md","[""WROAD2B-0""]","回滚/清理:不改企微规则;无法打卡时记录 NEEDS_CONFIG 或 SKIP/BLOCKED_BY_EXTERNAL_CONFIG,不伪造成 PASS。"
"WROAD2B-2","请假和补卡业务冒烟清单","固定三天内由 SMOKE002 提交低风险请假和补卡测试申请,SMOKE101 先打开详情再审批;若企微页面仍要求申请人手动选择审批人,只能选择 SMOKE101 并记录为审批规则 finding。","1) 请假和补卡均使用低风险测试内容,不包含采购、合同、报销、发票、银行回单、高敏附件或真实敏感业务资料;2) 申请人不得选择自己作为审批人;3) SMOKE101 不直接点快捷同意,必须先查看详情;4) 触发回调、补偿拉取、OA 归档和离线历史查看;5) 手选审批人现象记录为 WAPPR1 blocking finding,真实试用前必须修正规则。","受影响流程:SMOKE002 提交请假/补卡 -> SMOKE101 查看详情并审批 -> WCBK1 回调/WACP3 补偿/WARCH1 归档/WARCH2 查看;验证步骤:人工记录提交和审批时间;远端每日 WARCH3 巡检读取审批补偿归档;rg -n ""补卡|请假|手动选择审批人|SMOKE101|WAPPR1"" docs .agents/skills/hyb-oa-delivery/SKILL.md。","manual|rg","TODO","TODO","TODO","docs/管理员手册.md|docs/需求-请假考勤修正规约.md|docs/trialrun/人工试运行报告.md","[""WROAD2B-0""]","回滚/清理:测试审批记录保留审计;如误提交高风险材料,停止试用并人工处理企微记录,不在 OA 报告保存表单值、附件、评论或原始 payload。"
"WROAD2B-3","外出加班 live POC 前置清单","将外出/加班纳入三天业务冒烟规划,但 live 创建模板和审批单必须走后续 WEXT1-LIVE 独立合同。执行前先远端 dry-run,再向用户说明当前状态、改了什么、测试了什么、结果是什么、会留下什么企微记录,并取得写入确认。","1) 当前 WEXT1 dry-run 通过不等于 live 许可;2) WEXT1-LIVE 必须固定 SMOKE002 -> SMOKE101、WECOM_AGENT_SECRET 和双开关 WECOM_APPROVAL_FIXTURE_WRITE=1 + --live --create-templates --submit-test-approvals;3) 不修改正式模板;4) 样件保留审计;5) 报告只保存脱敏 template/sp_no/userid 前缀;6) 权限、可信 IP、可见范围或审批规则阻断时记录 SKIP/BLOCKED_BY_EXTERNAL_CONFIG。","受影响流程:WEXT1 dry-run -> WEXT1-LIVE 问答批准 -> 外出/加班测试号审批样件 -> SMOKE101 真机确认;验证步骤:后续新建 WEXT1-LIVE CSV 后运行 process gate;本轮仅 rg -n ""WEXT1-LIVE|外出/加班|WECOM_APPROVAL_FIXTURE_WRITE=1|--create-templates|--submit-test-approvals"" docs .agents/skills/hyb-oa-delivery/SKILL.md。","rg|manual","TODO","TODO","TODO","docs/企微优先开发路线图.md|docs/管理员手册.md|.agents/skills/hyb-oa-delivery/SKILL.md","[""WROAD2B-2""]","回滚/清理:本行不执行 live;后续 WEXT1-LIVE 如执行失败,不自动重试写入,不换审批人,不改正式模板。"
"WROAD2B-4","OA 离线查看与人工验收清单","固定每天巡检后由 HYD000006/管理员查看 OA 企微审批归档历史和打卡摘要,确认企微不可用时 OA 至少可查看既有历史摘要。","1) 管理员每天查看 OA 企微审批历史和打卡摘要;2) 只验证已归档历史可读,不要求 OA 替代企微继续办理;3) 发现权限、空数据、归档缺口或隐私展示问题时记录 finding;4) 不输出完整 sp_no、template_id、userid、手机号、邮箱、token、Secret、表单值、附件、评论或原始 payload。","受影响流程:WARCH3/WCHECK1 归档 -> OA 只读历史页面/API -> 管理员验收;验证步骤:人工查看 OA 企微审批归档历史和打卡摘要;node scripts/qa/audit-docs.mjs --check-registry;rg -n ""OA 离线|企微审批归档|打卡摘要|HYD000006|不可用时"" docs .agents/skills/hyb-oa-delivery/SKILL.md。","manual|node|rg","TODO","TODO","TODO","docs/管理员手册.md|docs/trialrun/人工试运行报告.md","[""WROAD2B-1"",""WROAD2B-2""]","回滚/清理:如 OA 离线查看不通过,暂停真实试用和镜像规划;不删除已归档审计数据。"
"WROAD2B-5","状态回填与三天收口","三天业务冒烟结束后回填实际操作、报告路径、finding 和是否进入 WEXT1-LIVE/WREAL1 的建议。","1) WROAD2B 行状态按真实结果回填;2) 与 WROAD2C Day 0/1/2/3 报告合并判断;3) 结论限定为 PASS_BUSINESS_SMOKE_READY、PASS_WITH_FINDINGS、PAUSED_MANUAL_CONFIRMATION 或 SKIP/BLOCKED_BY_EXTERNAL_CONFIG;4) 未经确认不启用真实员工;5) 未经 WEXT1-LIVE 独立批准不创建外出/加班模板或审批单。","受影响流程:三天人工业务冒烟 -> 三天系统巡检 -> 后续 WEXT1-LIVE 或暂停;验证步骤:汇总人工记录、WARCH3 summary、WAPPR1 finding;git diff --check;git status --short。","git|manual","TODO","TODO","TODO","issues/2026-05-20_17-13-57-wroad2-business-smoke-v1.csv|docs/trialrun/人工试运行报告.md","[""WROAD2B-4""]","回滚/清理:如结论为暂停,不进入 WEXT1-LIVE、WREAL1 或镜像;测试数据和报告保留审计。"
1 ID Title Description Acceptance Test_Method Tools Dev_Status Review1_Status Regression_Status Files Dependencies Notes
2 WROAD2B-0 三天业务冒烟合同建档 建立 WROAD2-BIZ1 合同;在 WROAD2C/WARCH3 自动巡检之外,补充测试账号真实业务动作清单。范围为三天内并行测试打卡、请假、补卡,并在 WEXT1-LIVE 经独立批准后补外出/加班测试号 live POC;当前不启用真实员工、不部署、不改业务代码、不写企业微信。 1) 明确系统巡检与人工业务冒烟分层;2) 测试账号固定 SMOKE002 -> SMOKE101,管理员观察和告警员工号为 HYD000006;3) 自动巡检仍每日 07:30 由 WARCH3 执行;4) 人工业务动作只使用低风险测试数据;5) 外出/加班 live 写入必须另建 WEXT1-LIVE Issue CSV 并再次人工确认;6) 企微 Secret 来源固定 WECOM_AGENT_SECRET,不尝试其他 Secret、无 fallback、不允许运行时猜 Secret;7) 缺 Secret、权限、可信 IP、可见范围、审批规则或企微后台配置时记录 NEEDS_CONFIG 或 SKIP/BLOCKED_BY_EXTERNAL_CONFIG。 受影响流程:WROAD2 自动巡检 -> 测试账号人工打卡/审批冒烟 -> OA 自建留存和离线查看;验证步骤:python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-05-20_17-13-57-wroad2-business-smoke-v1.csv;node scripts/qa/check-process-contract.mjs --issue issues/2026-05-20_17-13-57-wroad2-business-smoke-v1.csv --profile wecom --json。 python3|node|manual DONE DONE DONE issues/2026-05-20_17-13-57-wroad2-business-smoke-v1.csv [] 回滚/清理:本合同仅规划人工动作和事实源,不创建模板、不提交审批单、不写企微、不部署;如停止三天业务冒烟,保持后续行 TODO 并在 Notes 写明原因。本行合同建档、CSV 校验和 process gate 已通过。
3 WROAD2B-1 打卡业务冒烟清单 固定三天内测试账号打卡动作:每天上/下班时段由 SMOKE002 执行企微打卡,可选 SMOKE101 作为第二测试账号;如果因企微规则、位置、设备、权限或排班无法打卡,记录真实原因。 1) 至少记录每天是否尝试上班/下班打卡;2) 不要求绕过企微定位、人脸、设备或规则限制;3) WCHECK1/WARCH3 次日巡检能读取打卡摘要、规则快照或真实 BLOCKED 原因;4) OA 离线打卡摘要可读;5) 报告不输出手机号、邮箱、token、Secret、完整 userid、位置、人脸、设备明文或原始 payload。 受影响流程:SMOKE002 企微打卡 -> WCHECK1 打卡摘要留存 -> OA 离线查看;验证步骤:每天人工记录打卡动作和异常;次日查看 WARCH3/WCHECK1 summary;rg -n "打卡业务冒烟|SMOKE002|WCHECK1|位置|人脸|设备明文" docs .agents/skills/hyb-oa-delivery/SKILL.md。 manual|rg TODO TODO TODO docs/管理员手册.md|docs/trialrun/人工试运行报告.md ["WROAD2B-0"] 回滚/清理:不改企微规则;无法打卡时记录 NEEDS_CONFIG 或 SKIP/BLOCKED_BY_EXTERNAL_CONFIG,不伪造成 PASS。
4 WROAD2B-2 请假和补卡业务冒烟清单 固定三天内由 SMOKE002 提交低风险请假和补卡测试申请,SMOKE101 先打开详情再审批;若企微页面仍要求申请人手动选择审批人,只能选择 SMOKE101 并记录为审批规则 finding。 1) 请假和补卡均使用低风险测试内容,不包含采购、合同、报销、发票、银行回单、高敏附件或真实敏感业务资料;2) 申请人不得选择自己作为审批人;3) SMOKE101 不直接点快捷同意,必须先查看详情;4) 触发回调、补偿拉取、OA 归档和离线历史查看;5) 手选审批人现象记录为 WAPPR1 blocking finding,真实试用前必须修正规则。 受影响流程:SMOKE002 提交请假/补卡 -> SMOKE101 查看详情并审批 -> WCBK1 回调/WACP3 补偿/WARCH1 归档/WARCH2 查看;验证步骤:人工记录提交和审批时间;远端每日 WARCH3 巡检读取审批补偿归档;rg -n "补卡|请假|手动选择审批人|SMOKE101|WAPPR1" docs .agents/skills/hyb-oa-delivery/SKILL.md。 manual|rg TODO TODO TODO docs/管理员手册.md|docs/需求-请假考勤修正规约.md|docs/trialrun/人工试运行报告.md ["WROAD2B-0"] 回滚/清理:测试审批记录保留审计;如误提交高风险材料,停止试用并人工处理企微记录,不在 OA 报告保存表单值、附件、评论或原始 payload。
5 WROAD2B-3 外出加班 live POC 前置清单 将外出/加班纳入三天业务冒烟规划,但 live 创建模板和审批单必须走后续 WEXT1-LIVE 独立合同。执行前先远端 dry-run,再向用户说明当前状态、改了什么、测试了什么、结果是什么、会留下什么企微记录,并取得写入确认。 1) 当前 WEXT1 dry-run 通过不等于 live 许可;2) WEXT1-LIVE 必须固定 SMOKE002 -> SMOKE101、WECOM_AGENT_SECRET 和双开关 WECOM_APPROVAL_FIXTURE_WRITE=1 + --live --create-templates --submit-test-approvals;3) 不修改正式模板;4) 样件保留审计;5) 报告只保存脱敏 template/sp_no/userid 前缀;6) 权限、可信 IP、可见范围或审批规则阻断时记录 SKIP/BLOCKED_BY_EXTERNAL_CONFIG。 受影响流程:WEXT1 dry-run -> WEXT1-LIVE 问答批准 -> 外出/加班测试号审批样件 -> SMOKE101 真机确认;验证步骤:后续新建 WEXT1-LIVE CSV 后运行 process gate;本轮仅 rg -n "WEXT1-LIVE|外出/加班|WECOM_APPROVAL_FIXTURE_WRITE=1|--create-templates|--submit-test-approvals" docs .agents/skills/hyb-oa-delivery/SKILL.md。 rg|manual TODO TODO TODO docs/企微优先开发路线图.md|docs/管理员手册.md|.agents/skills/hyb-oa-delivery/SKILL.md ["WROAD2B-2"] 回滚/清理:本行不执行 live;后续 WEXT1-LIVE 如执行失败,不自动重试写入,不换审批人,不改正式模板。
6 WROAD2B-4 OA 离线查看与人工验收清单 固定每天巡检后由 HYD000006/管理员查看 OA 企微审批归档历史和打卡摘要,确认企微不可用时 OA 至少可查看既有历史摘要。 1) 管理员每天查看 OA 企微审批历史和打卡摘要;2) 只验证已归档历史可读,不要求 OA 替代企微继续办理;3) 发现权限、空数据、归档缺口或隐私展示问题时记录 finding;4) 不输出完整 sp_no、template_id、userid、手机号、邮箱、token、Secret、表单值、附件、评论或原始 payload。 受影响流程:WARCH3/WCHECK1 归档 -> OA 只读历史页面/API -> 管理员验收;验证步骤:人工查看 OA 企微审批归档历史和打卡摘要;node scripts/qa/audit-docs.mjs --check-registry;rg -n "OA 离线|企微审批归档|打卡摘要|HYD000006|不可用时" docs .agents/skills/hyb-oa-delivery/SKILL.md。 manual|node|rg TODO TODO TODO docs/管理员手册.md|docs/trialrun/人工试运行报告.md ["WROAD2B-1","WROAD2B-2"] 回滚/清理:如 OA 离线查看不通过,暂停真实试用和镜像规划;不删除已归档审计数据。
7 WROAD2B-5 状态回填与三天收口 三天业务冒烟结束后回填实际操作、报告路径、finding 和是否进入 WEXT1-LIVE/WREAL1 的建议。 1) WROAD2B 行状态按真实结果回填;2) 与 WROAD2C Day 0/1/2/3 报告合并判断;3) 结论限定为 PASS_BUSINESS_SMOKE_READY、PASS_WITH_FINDINGS、PAUSED_MANUAL_CONFIRMATION 或 SKIP/BLOCKED_BY_EXTERNAL_CONFIG;4) 未经确认不启用真实员工;5) 未经 WEXT1-LIVE 独立批准不创建外出/加班模板或审批单。 受影响流程:三天人工业务冒烟 -> 三天系统巡检 -> 后续 WEXT1-LIVE 或暂停;验证步骤:汇总人工记录、WARCH3 summary、WAPPR1 finding;git diff --check;git status --short。 git|manual TODO TODO TODO issues/2026-05-20_17-13-57-wroad2-business-smoke-v1.csv|docs/trialrun/人工试运行报告.md ["WROAD2B-4"] 回滚/清理:如结论为暂停,不进入 WEXT1-LIVE、WREAL1 或镜像;测试数据和报告保留审计。