"ID","Title","Description","Acceptance","Test_Method","Tools","Dev_Status","Review1_Status","Regression_Status","Files","Dependencies","Notes" "WAUTO1-0","受控试用自动证据汇总合同建档","建立 WAUTO1 自动证据汇总合同:在不写企业微信、不启用真实员工的前提下,汇总 WROAD2/WARCH3/WCHECK1/WROAD2-BIZ1/WAPPR1/WEXT1 dry-run 证据,并准备三天受控试用汇总。企微 Secret 来源固定 WECOM_AGENT_SECRET;不尝试其他 Secret、无 fallback、不允许运行时猜 Secret;缺 Secret、权限、可信 IP、可见范围或外部配置时记录 NEEDS_CONFIG 或 SKIP/BLOCKED_BY_EXTERNAL_CONFIG。","1) 新合同使用 WAUTO1-0..WAUTO1-7;2) 明确全自动只读为主,不写企微、不创建模板、不提交审批单;3) OA 写库仅限既有巡检合同允许的补偿归档/打卡摘要路径,本脚本默认不写 OA;4) 输出结论限定 PASS_AUTO_EVIDENCE_READY、PASS_WITH_FINDINGS、PAUSED_MANUAL_CONFIRMATION 或 SKIP/BLOCKED_BY_EXTERNAL_CONFIG;5) 报告不泄露手机号、邮箱、token、Secret、EncodingAESKey、完整 userid、完整 template_id、完整 sp_no、表单值、附件、评论或原始 payload。","受影响流程:受控试用证据收集 -> 三天验收汇总 -> WEXT1-LIVE 问答准入;验证步骤:python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-05-20_18-04-16-wecom-controlled-trial-auto-evidence-v1.csv;node scripts/qa/check-process-contract.mjs --issue issues/2026-05-20_18-04-16-wecom-controlled-trial-auto-evidence-v1.csv --profile wecom --json。","python3|node","DONE","DONE","DONE","issues/2026-05-20_18-04-16-wecom-controlled-trial-auto-evidence-v1.csv","[]","回滚/清理:删除本 CSV 或恢复事实源即可;本合同不写 OA/企微业务数据,不部署时无运行态影响。" "WAUTO1-1","自动证据汇总脚本","新增 QA-only 脚本 scripts/qa/collect-wecom-controlled-trial-evidence.sh,自动读取本地或远端运行环境中的既有 WROAD2/WARCH3/WCHECK1/WEXT1 dry-run 报告,并复跑只读门禁。脚本不得调用会设置 WECOM_ARCHIVE_WRITE=1、WECOM_CHECKIN_ARCHIVE_WRITE=1 或 WECOM_APPROVAL_FIXTURE_WRITE=1 的路径。","1) 脚本可执行 bash -n;2) 复检公网 /ready;3) 使用 WARCH3 summary-only 聚合既有 WROAD2 报告,不触发 WROAD2 写库路径;4) 复跑审批补偿只读、审批归档离线读取、打卡摘要 offline、外出/加班 fixture dry-run;5) 不写企业微信、不创建模板、不提交审批单、不写 OA DB;6) 生成 artifacts/qa-flow/wecom-controlled-trial-evidence-/summary.json。","受影响流程:公网就绪 -> 只读补偿 -> OA 离线归档 -> 打卡摘要离线 -> 外出/加班 dry-run -> 汇总报告;验证步骤:bash -n scripts/qa/collect-wecom-controlled-trial-evidence.sh;scripts/qa/collect-wecom-controlled-trial-evidence.sh。","bash|node|npm|curl","DONE","DONE","DONE","scripts/qa/collect-wecom-controlled-trial-evidence.sh","[""WAUTO1-0""]","回滚/清理:删除脚本或恢复本文件;脚本默认只读,不设置写入环境变量,不持久安装 cron/systemd timer。" "WAUTO1-2","证据汇总结论和脱敏边界","自动汇总脚本读取子报告状态并归类 finding、manual gate 和外部阻断;报告只保存状态、计数、报告路径和脱敏边界。","1) 子报告包含 public-ready、WARCH3 summary、approval compensation readonly、approval archive offline、checkin summary offline、outing/overtime dry-run;2) 有阻断时输出 SKIP/BLOCKED_BY_EXTERNAL_CONFIG;3) 有已知 finding 或子报告 PASS_WITH_FINDINGS 时输出 PASS_WITH_FINDINGS;4) 自动证据可用但 WAPPR1/三天人工业务仍待确认时输出 PAUSED_MANUAL_CONFIRMATION;5) 隐私扫描覆盖 summary 和子报告日志。","受影响流程:子报告收集 -> 状态归类 -> 隐私扫描 -> 三天验收问答;验证步骤:scripts/qa/collect-wecom-controlled-trial-evidence.sh;rg -n ""PASS_AUTO_EVIDENCE_READY|PAUSED_MANUAL_CONFIRMATION|SKIP/BLOCKED_BY_EXTERNAL_CONFIG|privacy"" scripts/qa/collect-wecom-controlled-trial-evidence.sh。","bash|node|rg","DONE","DONE","DONE","scripts/qa/collect-wecom-controlled-trial-evidence.sh","[""WAUTO1-1""]","回滚/清理:报告位于 artifacts/qa-flow,可保留审计;如误生成报告,删除对应本地 artifacts 目录即可,不影响 OA/企微数据。" "WAUTO1-3","WAPPR1 人工确认模板","在管理员手册和事实源中补充 WAPPR1 逐模板人工确认清单:请假、补卡、外出、加班分别确认模板入口、适用范围、审批人规则、是否允许申请人手选、是否可能自审、主管链缺失时表现、审批人不可见或停用时表现。","1) 每个模板人工选项固定为 A 审批人自动带出且申请人不能任意选择、B 默认带出但申请人仍可改人、C 必须申请人手选审批人、D 当前看不到或模板未配置;2) B/C/D 均不得直接进入真实试用;3) 不保存 Secret、token、完整 userid、完整审批单号或表单值;4) 结果可写入试运行报告或 WAPPR1 Notes。","受影响流程:企微模板后台确认 -> 审批规则门禁 -> WREAL1 准入;验证步骤:rg -n ""WAPPR1 人工确认|审批人自动带出|申请人不能任意选择|必须申请人手选|当前看不到或模板未配置"" docs/管理员手册.md docs/trialrun/人工试运行报告.md docs/企微优先开发路线图.md。","rg|manual","DONE","DONE","DONE","docs/管理员手册.md|docs/trialrun/人工试运行报告.md|docs/企微优先开发路线图.md","[""WAUTO1-0""]","回滚/清理:恢复本轮文档改动;若模板规则不满足,保持测试账号范围或对应模板 OA 主办,不进入真实员工试用。" "WAUTO1-4","三天汇总问答准入","固化三天自动证据和人工业务冒烟后的问答出口,不自动进入外出/加班 live 或真实员工试用。","1) 三天汇总后问答选项固定为 A 接受 PASS_AUTO_EVIDENCE_READY 并进入 WEXT1-LIVE live 问答、B 接受 PASS_WITH_FINDINGS 但先处理指定 finding、C 暂停;2) 正常和已知 observation 不每日打扰;3) 新增异常、状态恶化、阻断或脚本失败才提醒;4) WEXT1-LIVE live 写入仍需独立合同和人工确认。","受影响流程:Day 0-3 自动报告 -> 人工业务冒烟 -> 审批规则门禁 -> WEXT1-LIVE 问答;验证步骤:rg -n ""PASS_AUTO_EVIDENCE_READY|PASS_WITH_FINDINGS|WEXT1-LIVE live 问答|暂停"" docs docs/管理员手册.md .agents/skills/hyb-oa-delivery/SKILL.md。","rg","DONE","DONE","DONE","docs/企微优先开发路线图.md|docs/管理员手册.md|docs/trialrun/人工试运行报告.md|.agents/skills/hyb-oa-delivery/SKILL.md","[""WAUTO1-3""]","回滚/清理:恢复事实源改动;不修改企微后台、不写业务数据。" "WAUTO1-5","事实源回写","更新路线图、管理员手册、试运行报告、文档索引、事实源矩阵和项目 skill,登记 WAUTO1 自动证据汇总和 WEXT1LD dry-run gate。","1) 路线明确 WAUTO1 是只读证据汇总,不替代 WARCH3 定时巡检;2) WEXT1LD 只执行外出/加班 dry-run,不创建模板或审批单;3) WEXT1-LIVE 只能在 WROAD2-CLOSEOUT、WROAD2-BIZ1、WAPPR1 和 dry-run 可解释通过后问答进入;4) 真实员工试用仍后置。","受影响流程:事实源 -> 自动证据汇总 -> WEXT1LD dry-run -> 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 ""WAUTO1|WEXT1LD|collect-wecom-controlled-trial-evidence|WAPPR1 人工确认"" docs .agents/skills/hyb-oa-delivery/SKILL.md。","node|python3|rg","DONE","DONE","DONE","docs/企微优先开发路线图.md|docs/管理员手册.md|docs/trialrun/人工试运行报告.md|docs/文档索引.md|docs/文档事实源状态矩阵.md|.agents/skills/hyb-oa-delivery/SKILL.md","[""WAUTO1-4""]","回滚/清理:恢复文档和 skill 改动;不影响已存在审计报告。" "WAUTO1-6","本地和公网只读验证","执行合同门禁、脚本语法、文档门禁、最小门禁,并在受控部署后远端只读执行自动证据汇总脚本。","1) 两个新 CSV 校验通过;2) baseline 和 issue-specific process gate 通过;3) bash -n 通过;4) audit-docs、skill quick_validate、git diff --check、scripts/check-minimal.sh 通过;5) SYNC_ENV=0 部署后远端 /ready 正常;6) 远端自动证据汇总报告不泄露敏感数据。","受影响流程:本地门禁 -> 受控部署 -> 远端只读证据汇总 -> 三天验收准备;验证步骤:python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-05-20_18-04-16-wecom-controlled-trial-auto-evidence-v1.csv;node scripts/qa/check-process-contract.mjs --baseline --json;bash -n scripts/qa/collect-wecom-controlled-trial-evidence.sh;SYNC_ENV=0 bash deploy/trialrun/deploy.sh;ssh 远端执行脚本。","python3|node|bash|ssh","DONE","DONE","DONE","issues/2026-05-20_18-04-16-wecom-controlled-trial-auto-evidence-v1.csv|scripts/qa/collect-wecom-controlled-trial-evidence.sh|deploy/trialrun/*","[""WAUTO1-5""]","回滚/清理:如远端只读验证失败,仅记录真实 PARTIAL/SKIP,不改远端 env,不写企微;部署使用 SYNC_ENV=0,不覆盖远端密钥。远端报告 /app/artifacts/qa-flow/wecom-controlled-trial-evidence-20260520-103617/summary.json 为 PAUSED_MANUAL_CONFIRMATION:自动子链可解释通过或 PASS_WITH_FINDINGS,但 WAPPR1/三天业务人工门禁仍待确认。" "WAUTO1-7","状态回填与中文提交","完成 WAUTO1/WEXT1LD 状态回填、本地门禁、公网只读验证和中文提交。","1) CSV 状态与真实执行结果一致;2) 自动证据汇总报告路径回写;3) WEXT1LD dry-run 结果回写;4) git status 干净;5) 中文提交包含 WAUTO1/WEXT1LD。","受影响流程:证据汇总 -> 状态回填 -> 提交 -> 后续人工问答;验证步骤:git diff --check;git status --short;git log -1 --oneline。","git","DONE","DONE","DONE","issues/2026-05-20_18-04-16-wecom-controlled-trial-auto-evidence-v1.csv|issues/2026-05-20_18-04-16-wecom-outing-overtime-live-dryrun-gate-v1.csv|scripts/qa/collect-wecom-controlled-trial-evidence.sh|docs/*|.agents/skills/hyb-oa-delivery/SKILL.md","[""WAUTO1-6""]","提交建议:WAUTO1 WEXT1LD 增加受控试用自动证据汇总。状态边界:远端汇总为 PAUSED_MANUAL_CONFIRMATION,不放行 live;后续必须等人工问答。"