From 0922f006d1b4eabcd95b2d2e5d7be1a99cf6b78a Mon Sep 17 00:00:00 2001 From: shunli Date: Sun, 17 May 2026 17:18:36 +0800 Subject: [PATCH] =?UTF-8?q?ATTV1=20=E6=94=B6=E5=8F=A3=E5=85=AC=E7=BD=91?= =?UTF-8?q?=E8=80=83=E5=8B=A4=E7=BB=9F=E4=B8=80=E5=85=A5=E5=8F=A3=E5=A4=8D?= =?UTF-8?q?=E6=A3=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/trialrun/人工试运行报告.md | 6 +++--- docs/文档事实源状态矩阵.md | 4 ++-- docs/文档索引.md | 4 ++-- ...2026-05-17_14-59-28-attendance-unified-wecom-sync-v1.csv | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/trialrun/人工试运行报告.md b/docs/trialrun/人工试运行报告.md index b2dc7e8b..c5b05218 100644 --- a/docs/trialrun/人工试运行报告.md +++ b/docs/trialrun/人工试运行报告.md @@ -34,7 +34,7 @@ DCL7 已删除本文件中 R70-R91 的长流水历史,避免旧环境、旧开 - 2026-05-17 SYSTEM-COMPLETE-GATE 已完成系统开发完成门禁:公网 `/ready`、public bundle、live smoke `3 passed`、PDF live OCR `1 passed`,只读 flag 核验显示 `payment_batch_v1=force_on`、`erp_sync=force_off`;公网移动/企业微信 UA 矩阵 `14 passed`;结论 `GO_TO_USE`。当前首批正式能力为员工报销、PDF OCR、审批、请假、采购、通知、移动/企业微信入口、财务台账、付款批次、银行回单附件和代账交接。 - 2026-05-17 LAUNCH-OPS-V1 已固定首周正式使用运营口径:`wangshunli` 为上线拍板、管理员复核和回滚决策人,`wangzhiling` 为出纳/付款执行和代账资料准备人;首周问题登记、每日巡检、暂停条件、代账交接节奏和 UX8/可选功能冻结口径已回写现有手册。后续新增功能只按真实反馈和业务频次另建 Issue CSV。 - 2026-05-17 REQ-COMPLETE-AUDIT 已完成需求完成度复核和考勤边界校正:首批正式能力保持 `GO_TO_USE` 结论不变;企业微信打卡作为原始采集和风控底座,OA 不重造定位、人脸、Wi-Fi、排班、设备和防作弊。 -- 2026-05-17 ATTV1 已进入考勤统一入口实现:历史 OA 自建打卡 `attendance_v1` 关闭;OA 新增企微打卡摘要同步、补卡/外出/加班修正审批和月度考勤解释;所有审批继续统一在 OA,企业微信只负责打卡原始采集和风控。企微 live 同步依赖 `WECOM_CHECKIN_SECRET` 和企微打卡 API 权限,缺配置时记 `SKIP`。 +- 2026-05-17 ATTV1 已完成考勤统一入口实现并部署到公网:历史 OA 自建打卡 `attendance_v1` 关闭;OA 新增企微打卡摘要同步、补卡/外出/加班修正审批和月度考勤解释;所有审批继续统一在 OA,企业微信只负责打卡原始采集和风控。公网复检显示旧打卡 API 返回 409、统一考勤月度汇总和修正列表可读、移动/企业微信矩阵 14 passed;企微 live 同步依赖 `WECOM_CHECKIN_SECRET` 和企微打卡 API 权限,缺配置时记 `SKIP`。 ## 关键证据索引 @@ -76,7 +76,7 @@ DCL7 已删除本文件中 R70-R91 的长流水历史,避免旧环境、旧开 | SYSTEM-COMPLETE-GATE | 已收口:系统开发完成门禁通过,结论 `GO_TO_USE`;live smoke 3 passed、PDF live OCR 1 passed、public bundle findings=0、pending OCR 非阻断 SKIP、正式 flag 状态正确、公网移动/企微矩阵 14 passed | `issues/2026-05-17_12-55-49-system-complete-gate.csv`、`artifacts/qa-flow/live-smoke-readiness-20260517-125805/summary.json` | | LAUNCH-OPS-V1 | 已收口:首周运营保障口径固定;支持人、问题登记、每日巡检、暂停条件、代账交接节奏和可选功能冻结口径已回写手册 | `issues/2026-05-17_12-55-50-launch-ops-v1.csv`、`docs/管理员手册.md`、`docs/员工快速上手.md`、`docs/试运行与自动化验证手册.md` | | REQ-COMPLETE-AUDIT | 已收口:需求完成度复核和考勤边界校正完成;企微打卡与 OA 考勤解释边界已纠偏,补卡/外出/加班缺口已分级 | `issues/2026-05-17_13-32-26-requirements-completion-audit.csv`、`docs/海音达OA-MVP需求规格说明书.md`、`docs/需求-请假考勤修正规约.md`、`docs/需求-企业微信基础设施规约.md` | -| ATTV1 | 执行中:考勤统一入口与企微打卡同步 V1;关闭 OA 自建打卡,新增企微打卡摘要同步、OA 补卡/外出/加班审批和月度解释 | `issues/2026-05-17_14-59-28-attendance-unified-wecom-sync-v1.csv`、`docs/需求-请假考勤修正规约.md`、`docs/需求-企业微信基础设施规约.md` | +| ATTV1 | 已收口:考勤统一入口与企微打卡同步 V1 已部署公网;关闭 OA 自建打卡,新增企微打卡摘要同步、OA 补卡/外出/加班审批和月度解释;公网 readiness、移动/企微矩阵和考勤关键接口复检通过 | `issues/2026-05-17_14-59-28-attendance-unified-wecom-sync-v1.csv`、`artifacts/qa-flow/live-smoke-readiness-20260517-171535/summary.json`、`docs/需求-请假考勤修正规约.md`、`docs/需求-企业微信基础设施规约.md` | ## 当前门禁 @@ -108,7 +108,7 @@ DCL7 已删除本文件中 R70-R91 的长流水历史,避免旧环境、旧开 | SYSTEM-COMPLETE-GATE 系统完成门禁 | 通过,结论 `GO_TO_USE` | `check-live-smoke-env --strict` PASS;`run-live-smoke-readiness.sh` PASS,报告 `artifacts/qa-flow/live-smoke-readiness-20260517-125805/`;只读 flag 核验 `payment_batch_v1=force_on`、`erp_sync=force_off`;公网移动/企业微信矩阵 14 passed。 | | LAUNCH-OPS-V1 首周运营保障 | 通过,无新增业务功能 | 管理员手册、员工快速上手和试运行手册已更新正式启用口径;首周问题登记、每日巡检、暂停条件、回滚联系人、代账交接节奏和 UX8/冻结项处理方式已固定。 | | REQ-COMPLETE-AUDIT 需求完成度复核 | 通过,无运行时变更 | 完成首批能力和考勤边界复核;企业微信打卡为原始采集,OA 不重造打卡风控。 | -| ATTV1 考勤统一入口 | 执行中,待本地全测后部署 | 历史 OA 自建打卡关闭;补卡、外出、加班已进入 OA 统一审批和月度解释;企微 live 同步缺配置时按 `SKIP` 记录。 | +| ATTV1 考勤统一入口 | 通过,已部署 | 部署提交 `916cc3b` + 移动入口修正 `b2b4447`;历史 OA 自建打卡关闭,补卡、外出、加班已进入 OA 统一审批和月度解释;公网 `/ready`、live smoke、PDF live OCR、移动/企业微信矩阵 14 passed;企微 live 同步缺配置时按 `SKIP` 记录。 | ## R7EP / OPS8 / QAF8 / UX8 / P2T 预检推进 diff --git a/docs/文档事实源状态矩阵.md b/docs/文档事实源状态矩阵.md index cf7682ae..1c969659 100644 --- a/docs/文档事实源状态矩阵.md +++ b/docs/文档事实源状态矩阵.md @@ -55,7 +55,7 @@ | `SYSTEM-COMPLETE-GATE` | `issues/2026-05-17_12-55-49-system-complete-gate.csv` | `EVIDENCE` | 系统开发完成门禁已收口;公网 readiness、live smoke、PDF live OCR、flag 状态、移动/企微矩阵和事实源核对通过,结论 `GO_TO_USE` | | `LAUNCH-OPS-V1` | `issues/2026-05-17_12-55-50-launch-ops-v1.csv` | `EVIDENCE` | 首周正式使用运营保障已收口;支持人、问题登记、每日巡检、暂停条件、回滚联系人、代账交接节奏和冻结项口径已固定 | | `REQ-COMPLETE-AUDIT` | `issues/2026-05-17_13-32-26-requirements-completion-audit.csv` | `EVIDENCE` | 需求完成度复核和考勤边界校正已收口;首批能力可交付不变,企业微信打卡作为原始采集和风控底座,OA 不重造定位/人脸/Wi-Fi/排班/防作弊;员工补卡/外出/加班审批和企微打卡 API 同步需后续合同 | -| `ATTV1` | `issues/2026-05-17_14-59-28-attendance-unified-wecom-sync-v1.csv` | `ACTIVE` | 考勤统一入口与企微打卡同步 V1:关闭历史 OA 自建打卡,新增企微打卡摘要同步、补卡/外出/加班 OA 审批和月度解释;本地全测通过后再部署公网复检 | +| `ATTV1` | `issues/2026-05-17_14-59-28-attendance-unified-wecom-sync-v1.csv` | `EVIDENCE` | 考勤统一入口与企微打卡同步 V1 已收口:提交 `916cc3b` 和 `b2b4447` 已部署到公网;历史 OA 自建打卡关闭,补卡/外出/加班 OA 审批和月度解释可用;公网 readiness、PDF live OCR、移动/企业微信矩阵 14 passed,旧打卡 API 返回 409,企微打卡同步缺配置时记录 `SKIP` | 旧 Issue CSV 保留为历史审计证据:不删除、不批量回写、不移动到 `docs/archive/` 或其他归档目录。新连续合同如替代旧合同,只在新合同 `Notes` 或文档索引中说明 supersedes。 @@ -169,4 +169,4 @@ - `ME6-3` 代表性企业微信真机门禁已关闭。 - MIF7-1..7 与 MIF7T 已完成本地整改、公网部署、公网匿名复检和带凭据 live smoke/OCR 复检。 -- R7E 真实扩大试运行阶段验收、P2 排序、R7E 收口、QAOPS8 上线硬化阶段收口、QAOPS9 上线硬化连续合同、PRELAUNCH 正式启用前公网预回归、CASHIER-VOUCHER-V1 财务闭环与银行回单附件、LAUNCH-DEPLOY-FINANCE 部署复检、FIN-PROD-ENABLE 正式常开、ACCOUNTING-HANDOFF-V1 代账交接 SOP、SYSTEM-COMPLETE-GATE 系统完成门禁、LAUNCH-OPS-V1 首周运营保障和 REQ-COMPLETE-AUDIT 需求完成度复核均已完成,当前 P0/P1 阻断为 0;P2D 已完成决策分流,P2-ORG 只读巡检已完成且无需写修复合同;当前公网 `payment_batch_v1=force_on`,`erp_sync=force_off`,正式支付接口、ERP、图片 OCR 和银行流水导入继续冻结。ATTV1 进入执行:历史 OA 自建打卡 `attendance_v1` 关闭,OA 补卡/外出/加班审批和月度考勤解释已纳入统一考勤主线;企微打卡 live 同步能力依赖 `WECOM_CHECKIN_SECRET` 和企微 API 权限,缺配置时记录 `SKIP`。 +- R7E 真实扩大试运行阶段验收、P2 排序、R7E 收口、QAOPS8 上线硬化阶段收口、QAOPS9 上线硬化连续合同、PRELAUNCH 正式启用前公网预回归、CASHIER-VOUCHER-V1 财务闭环与银行回单附件、LAUNCH-DEPLOY-FINANCE 部署复检、FIN-PROD-ENABLE 正式常开、ACCOUNTING-HANDOFF-V1 代账交接 SOP、SYSTEM-COMPLETE-GATE 系统完成门禁、LAUNCH-OPS-V1 首周运营保障、REQ-COMPLETE-AUDIT 需求完成度复核和 ATTV1 考勤统一入口均已完成,当前 P0/P1 阻断为 0;P2D 已完成决策分流,P2-ORG 只读巡检已完成且无需写修复合同;当前公网 `payment_batch_v1=force_on`,`erp_sync=force_off`,正式支付接口、ERP、图片 OCR 和银行流水导入继续冻结。ATTV1 已部署:历史 OA 自建打卡 `attendance_v1` 关闭,OA 补卡/外出/加班审批和月度考勤解释已纳入统一考勤主线;企微打卡 live 同步能力依赖 `WECOM_CHECKIN_SECRET` 和企微 API 权限,缺配置时记录 `SKIP`。 diff --git a/docs/文档索引.md b/docs/文档索引.md index e4090876..a2cbc86f 100644 --- a/docs/文档索引.md +++ b/docs/文档索引.md @@ -49,7 +49,7 @@ R6 -> PC6 -> PA6 -> FL6 -> AP6 -> RI6 -> LP6 -> ME6/QG6 -> DG7/MRF7 -> MIA7 -> M - SYSTEM-COMPLETE-GATE 是系统开发完成收口合同:公网 readiness、live smoke、PDF live OCR、正式 flag 状态、FINPROD/ACCTH 证据、移动/企业微信矩阵和文档事实源均通过;结论 `GO_TO_USE`,系统按首批正式能力可交付使用。 - LAUNCH-OPS-V1 是正式使用首周运营保障合同:固定 `wangshunli` 为上线拍板、管理员复核和回滚决策人,`wangzhiling` 为出纳/付款执行和代账资料准备人;首周问题登记、每日巡检、暂停条件、代账交接节奏和可选功能冻结口径已回写现有手册。 - REQ-COMPLETE-AUDIT 是系统完成门禁后的需求完成度复核合同:确认首批正式能力仍为报销、PDF OCR、审批、请假、采购、通知、移动/企业微信入口、财务台账、付款批次、银行回单附件和代账交接;考勤边界纠偏为“企业微信打卡做原始采集和风控,OA 不重造定位/人脸/Wi-Fi/排班/防作弊”。 -- ATTV1 是 REQ-COMPLETE-AUDIT 后的考勤统一入口实现合同:关闭历史 OA 自建打卡 `attendance_v1`;新增 `attendance_unified_v1`、企微打卡摘要同步批次、补卡/外出/加班 OA 审批和月度考勤解释;企微 live 同步缺 Secret 或 API 权限时记 `SKIP`,不使用企微原生审批,不保存完整位置、人脸、设备明文或原始 payload。 +- ATTV1 是 REQ-COMPLETE-AUDIT 后的考勤统一入口实现合同:已部署到公网,关闭历史 OA 自建打卡 `attendance_v1`;新增 `attendance_unified_v1`、企微打卡摘要同步批次、补卡/外出/加班 OA 审批和月度考勤解释;公网复检 `/ready`、live smoke、PDF live OCR、移动/企业微信矩阵和考勤关键接口均通过,企微 live 同步缺 Secret 或 API 权限时记 `SKIP`,不使用企微原生审批,不保存完整位置、人脸、设备明文或原始 payload。 ## 当前活跃治理流 @@ -85,7 +85,7 @@ R6 -> PC6 -> PA6 -> FL6 -> AP6 -> RI6 -> LP6 -> ME6/QG6 -> DG7/MRF7 -> MIA7 -> M | `SYSTEM-COMPLETE-GATE` | `issues/2026-05-17_12-55-49-system-complete-gate.csv` | 已收口:系统开发完成门禁通过,结论 `GO_TO_USE` | 公网 `/ready`、public bundle、live smoke、PDF live OCR、正式 flag 状态、FINPROD/ACCTH 证据、移动/企微矩阵和文档事实源 | 不新增业务功能、不部署、不接真实支付、不接 ERP、不开放图片 OCR、不导入银行流水 | | `LAUNCH-OPS-V1` | `issues/2026-05-17_12-55-50-launch-ops-v1.csv` | 已收口:首周运营保障口径固定 | 首周支持人、问题登记、每日巡检、暂停条件、回滚联系人、代账月度交接节奏、UX8 真实反馈池和冻结项 | 不做真实恢复演练、不重置数据库、不主动开发可选功能 | | `REQ-COMPLETE-AUDIT` | `issues/2026-05-17_13-32-26-requirements-completion-audit.csv` | 已收口:需求完成度复核和考勤边界校正完成 | 首批能力完成度、企微打卡边界、请假/补卡/外出/加班缺口、`attendance_v1` 处理建议 | 不改业务代码、不部署、不切换公网开关;后续考勤同步或修正审批必须另建合同 | -| `ATTV1` | `issues/2026-05-17_14-59-28-attendance-unified-wecom-sync-v1.csv` | 执行中:考勤统一入口与企微打卡同步 V1 | 关闭历史 OA 自建打卡;新增企微打卡摘要同步、补卡/外出/加班 OA 修正审批、月度解释页和移动入口 | 不用企业微信原生审批;不重造定位/人脸/Wi-Fi/设备风控;不保存完整位置、原始 payload 或人脸信息 | +| `ATTV1` | `issues/2026-05-17_14-59-28-attendance-unified-wecom-sync-v1.csv` | 已收口:考勤统一入口与企微打卡同步 V1 已部署并复检通过 | 关闭历史 OA 自建打卡;新增企微打卡摘要同步、补卡/外出/加班 OA 修正审批、月度解释页和移动入口;公网移动/企微矩阵 14 passed | 不用企业微信原生审批;不重造定位/人脸/Wi-Fi/设备风控;不保存完整位置、原始 payload 或人脸信息 | 旧 Issue CSV 不删除、不批量回写、不移动到归档目录。若新治理流替代旧合同,只在新 CSV 的 `Notes` 或本索引说明 supersedes,旧文件保留历史审计语义。 diff --git a/issues/2026-05-17_14-59-28-attendance-unified-wecom-sync-v1.csv b/issues/2026-05-17_14-59-28-attendance-unified-wecom-sync-v1.csv index dadde359..3a806e8b 100644 --- a/issues/2026-05-17_14-59-28-attendance-unified-wecom-sync-v1.csv +++ b/issues/2026-05-17_14-59-28-attendance-unified-wecom-sync-v1.csv @@ -5,4 +5,4 @@ "ATTV1-3","OA 考勤修正审批","新增 OA 补卡、外出、加班三类考勤修正申请,复用统一审批中心;补卡只解释企微缺卡,不向企微写回。","1) 员工可提交补卡/外出/加班申请;2) 申请进入 OA 统一审批并可撤回或被审批;3) 审批通过后进入月度考勤解释;4) 普通员工只能看本人,主管/HR/管理员按权限查看;5) 审计记录完整。","受影响流程:员工提交修正 -> OA 审批 -> 月度考勤解释;验证步骤:node --check routes 和 workflow 相关文件;npm test 覆盖提交、权限、撤回、审批回写、审计。","node|npm","DONE","DONE","DONE","server/src/routes/attendanceCorrections.js|server/src/routes/workflow.js|server/prisma/schema.prisma|server/tests/unit/routes/attendanceCorrections.test.js","[""ATTV1-2""]","涉及审批和状态机,需 reviewer 只读复核;回滚路径:回退路由和模型,删除新增修正表,不影响请假。" "ATTV1-4","考勤汇总页和移动入口调整","将 /attendance 改为企微考勤汇总与解释页;员工看本人,主管/HR/管理员看团队;移动首页只保留企业微信打卡说明和考勤汇总入口,不提供 OA 打卡动作。","1) /attendance 文案明确日常打卡在企业微信、审批解释在 OA;2) 月度汇总展示企微打卡摘要、OA 请假、补卡、外出、加班解释;3) 角色视图按权限裁剪;4) 移动 320/360/375/390/393/414/430 无溢出。","受影响流程:员工/主管/HR/管理员查看考勤 -> 发起修正 -> 查看审批状态;验证步骤:cd client && npm run typecheck && npm run build;Playwright 覆盖 PC /attendance、移动首页、企业微信 UA。","npm|playwright","DONE","DONE","DONE","client/src/pages/AttendancePage.tsx|client/src/pages/MobilePortalPage.tsx|client/src/api/attendance.ts|client/tests/e2e","[""ATTV1-3""]","页面需参考 docs/产品设计规则.md;回滚路径:恢复旧页面或仅显示统一空态。" "ATTV1-5","权限审计隐私与回归","收口权限、审计、隐私和自动化回归,确保同步、修正、导出和查看不泄露企微 secret、access token、完整定位、手机号、身份证号或原始 payload。","1) 普通员工不可查看他人考勤;2) 主管只能看下属;3) HR/管理员可看全员;4) 日志和测试报告脱敏;5) 旧 attendance_v1 入口关闭态稳定;6) 本地后端、前端和业务流回归通过。","受影响流程:同步 -> 修正审批 -> 月度汇总 -> 权限直连;验证步骤:server prisma validate、node --check、focused 单测;client typecheck/build;权限直连和移动矩阵;git diff --check。","node|npm|playwright|git","DONE","DONE","DONE","server/tests|client/tests|scripts/qa|issues/2026-05-17_14-59-28-attendance-unified-wecom-sync-v1.csv","[""ATTV1-4""]","如发现企微 live 凭据不足,live sync 记 SKIP;不打印 secret 或远端 env。" -"ATTV1-6","文档回写部署复检和提交","回写现有事实源和手册,部署前本地全测;若本地通过则部署公网并复检 /ready、public bundle、live smoke、移动/企业微信 UA 和考勤关键流程。","1) docs/文档索引、事实源矩阵、人工试运行报告和相关规约已回写;2) Issue 状态按实测回填;3) 本地全测通过后才部署;4) 部署后公网复检通过或记录阻断;5) 中文 commit 引用 ATTV1。","受影响流程:事实源读取 -> 正式使用 -> 公网验收;验证步骤:node scripts/qa/audit-docs.mjs --check-registry;LIVE_SMOKE_BASE_URL=https://oa.hyinda.com bash scripts/qa/run-live-smoke-readiness.sh;公网移动/企微矩阵;git status --short。","node|bash|playwright|git","DONE","DONE","DOING","docs/海音达OA-MVP需求规格说明书.md|docs/需求-请假考勤修正规约.md|docs/需求-企业微信基础设施规约.md|docs/管理员手册.md|docs/员工快速上手.md|docs/trialrun/人工试运行报告.md|docs/文档索引.md|docs/文档事实源状态矩阵.md","[""ATTV1-5""]","本地全测通过,报告:business-flow-20260517-163647、business-flow-20260517-163930、ATTV1-visual-matrix-20260517-164915;待部署公网复检;部署规则:不覆盖远端 env,不重置数据库,不执行生产恢复;回滚路径:恢复上一部署版本并关闭 attendance_unified_v1。" +"ATTV1-6","文档回写部署复检和提交","回写现有事实源和手册,部署前本地全测;若本地通过则部署公网并复检 /ready、public bundle、live smoke、移动/企业微信 UA 和考勤关键流程。","1) docs/文档索引、事实源矩阵、人工试运行报告和相关规约已回写;2) Issue 状态按实测回填;3) 本地全测通过后才部署;4) 部署后公网复检通过或记录阻断;5) 中文 commit 引用 ATTV1。","受影响流程:事实源读取 -> 正式使用 -> 公网验收;验证步骤:node scripts/qa/audit-docs.mjs --check-registry;LIVE_SMOKE_BASE_URL=https://oa.hyinda.com bash scripts/qa/run-live-smoke-readiness.sh;公网移动/企微矩阵;git status --short。","node|bash|playwright|git","DONE","DONE","DONE","docs/海音达OA-MVP需求规格说明书.md|docs/需求-请假考勤修正规约.md|docs/需求-企业微信基础设施规约.md|docs/管理员手册.md|docs/员工快速上手.md|docs/trialrun/人工试运行报告.md|docs/文档索引.md|docs/文档事实源状态矩阵.md","[""ATTV1-5""]","本地全测通过,报告:business-flow-20260517-163647、business-flow-20260517-163930、ATTV1-visual-matrix-20260517-164915;公网已部署提交 916cc3b,移动首页重复考勤入口修正提交 b2b4447 后复检通过;live readiness 报告:live-smoke-readiness-20260517-171535;公网移动/企业微信矩阵 14 passed;考勤关键接口:旧 clock-in 409 attendance_v1_disabled、monthly 200、corrections 200、wecom sync 200 SKIP wecom_checkin_sync_disabled;部署规则:未覆盖远端 env,未重置数据库,未执行生产恢复;回滚路径:恢复上一部署版本并关闭 attendance_unified_v1。"