diff --git a/docs/trialrun/R7E后功能边界审计.md b/docs/trialrun/R7E后功能边界审计.md index 48b8dda6..99b7a303 100644 --- a/docs/trialrun/R7E后功能边界审计.md +++ b/docs/trialrun/R7E后功能边界审计.md @@ -9,7 +9,7 @@ ## 1. 结论摘要 -- R7E 阶段验收已通过,当前 P0/P1 阻断为 0;R7E 后仍需完成 `R7E-19/R7E-20` 的 P2 排序与收口,以及 `QAOPS8-19/QAOPS8-20` 的上线硬化收口。 +- R7E 阶段验收已通过,当前 P0/P1 阻断为 0;2026-05-16 已完成 `R7E-19/R7E-20` 的 P2 排序与阶段收口,以及 `QAOPS8-19/QAOPS8-20` 的上线硬化阶段收口。 - 当前全端功能边界已经从“能跑主链路”进入“明确哪些是可验收主线、哪些是低频备用、哪些只做 P2 候选、哪些冻结”的阶段。 - 代码中存在差旅、ERP、AI、预算、付款批次、资产扫描等历史实现或开关,不等于当前 MVP/R7E 必须验收;当前边界仍以最新 Issue CSV、PRD、模块规约和产品口径为准。 - 付款批次、图片 OCR、组织账号主数据持续治理、测试数据/公网业务流稳定化、UX8 真机体验池、备份恢复演练和上线硬化,是 R7E 后最应优先整理的优化候选。 @@ -78,10 +78,10 @@ | 建议归属 | 建议事项 | 验收边界 | | --- | --- | --- | -| `R7E-19` | 根据 R7E 真实反馈调整 P2 候选优先级 | 只排序和分流,不改功能 | -| `R7E-20` | R7E CSV、报告和提交收口 | 所有 DONE 有证据;未完成项进入后续合同 | -| `QAOPS8-19` | 上线硬化收口、测试数据稳定化、恢复演练准备、Go/No-Go 缺口登记 | 不执行破坏性恢复;只读和自动化优先 | -| `QAOPS8-20` | QAOPS8 状态回填、文档索引和证据归档 | registry、diff 和 CSV 校验通过 | +| `R7E-19` | 根据 R7E 真实反馈调整 P2 候选优先级 | 已于 2026-05-16 完成排序和分流,不改功能 | +| `R7E-20` | R7E CSV、报告和提交收口 | 已于 2026-05-16 完成阶段收口;未完成项进入后续合同 | +| `QAOPS8-19` | 上线硬化收口、测试数据稳定化、恢复演练准备、Go/No-Go 缺口登记 | 已于 2026-05-16 完成阶段分流;不执行破坏性恢复 | +| `QAOPS8-20` | QAOPS8 状态回填、文档索引和证据归档 | 已于 2026-05-16 完成阶段收口;registry、diff 和 CSV 校验作为交付门禁 | | `UX8` | iPhone12 间距、详情字段扫读、财务摘要、列表卡片反馈、移动采购创建评估 | 真实反馈驱动;体验修复不新增后端字段 | | 新 P2 财务合同 | 付款批次启用、复核、执行、导出和审计闭环 | 必须先决定 feature flag、角色、测试账号、回滚和公网验收窗口 | | 新 P2 OCR 合同 | 图片 OCR、批量样票、OFD/多票种能力评估 | 样票授权和脱敏先行;无授权样票不得写 PASS | diff --git a/docs/trialrun/人工试运行报告.md b/docs/trialrun/人工试运行报告.md index 8f468a96..905c3894 100644 --- a/docs/trialrun/人工试运行报告.md +++ b/docs/trialrun/人工试运行报告.md @@ -12,9 +12,9 @@ DCL7 已删除本文件中 R70-R91 的长流水历史,避免旧环境、旧开 - 2026-05-13 用户完成 iPhone 12、iPhone 14、Redmi K60 企业微信代表性真机主流程复测,`ME6-3` 已按主流程门禁关闭;iPhone 12 图文上下间距偏紧按非阻断观察项记录。 - MIF7-1..7 与 MIF7T 已完成本地整改、公网部署、公网匿名复检和带凭据 live smoke/OCR 复检;2026-05-13 已将包含 `cf2bba0` 的 MIF7T 代码部署到 `https://oa.hyinda.com`。 - MIF7TD 收口报告为 `artifacts/qa-flow/live-smoke-readiness-20260513-115455/`:公网 live smoke `3 passed`,真实 OCR `1 passed`,样票为重复发票可解释终态;`pending OCR` 因本地未注入 `DATABASE_URL` 记录 `SKIP`,不作为 MIF7-7 硬阻断。 -- R7/OPS7/DOC7 是准备材料;R7EP 自动门禁和 OPS8 只读检查已完成;R7E 已完成参与人、窗口、回滚联系人、问题登记负责人和每日收口节奏确认,并已进入试运行收口阶段。 +- R7/OPS7/DOC7 是准备材料;R7EP 自动门禁和 OPS8 只读检查已完成;R7E 已于 2026-05-15 23:35 CST 由用户确认阶段验收通过,并于 2026-05-16 完成 R7E-19/R7E-20 和 QAOPS8-19/QAOPS8-20 阶段收口。 - 2026-05-13 后续计划调整直接回写现有 R7EP、OPS8、QAF8、UX8、P2T 合同,不新建专门调整 Issue;调整后 R7EP 门禁可并行执行,OPS8-1/2/4 纳入 R7EP Go/No-Go,UX8 和 P2T 候选按真实反馈并行推进。 -- ORG8 组织账号与权限主数据已完成本地代表性角色验收和阶段收口;该结论只覆盖本地自动化/只读/注入验证,不代表 R7E 真实人工试运行已启动或完成。 +- ORG8 组织账号与权限主数据已完成本地代表性角色验收和阶段收口;后续组织主数据治理只作为 P2 只读巡检候选,不自动进入写修复。 ## 关键证据索引 @@ -34,6 +34,8 @@ DCL7 已删除本文件中 R70-R91 的长流水历史,避免旧环境、旧开 | MIF7 | 已收口;本地整改、返回语义、部署、公网匿名、真机门禁、带凭据 live smoke/OCR 均已通过 | `issues/2026-05-12_21-48-40-mobile-ia-flow-remediation.csv`、`issues/2026-05-13_00-38-05-mif7-follow-up-return-and-release.csv`、`issues/2026-05-13_11-37-02-mif7t-deploy-live-closeout.csv`、`artifacts/qa-flow/live-smoke-readiness-20260513-115455/summary.json` | | MIF7T | 真机反馈移动体验统一整改已部署并完成公网复检 | `issues/2026-05-13_09-18-05-mif7-real-device-feedback-mobile-unification.csv`、`issues/2026-05-13_11-37-02-mif7t-deploy-live-closeout.csv` | | ORG8 | 组织账号和权限主数据本地代表性验收已收口;不替代 R7E 真实人工试运行 | `issues/2026-05-13_18-23-51-org8-master-data-permission.csv` | +| R7E | 阶段验收和 P2 排序收口已完成;当前 P0/P1 阻断为 0 | `issues/2026-05-13_17-11-44-r7e-human-trialrun.csv` | +| QAOPS8 | Go/No-Go 与上线硬化阶段收口已完成;后续建议另起 QAOPS9 或等价连续合同 | `issues/2026-05-13_17-30-00-qaops8-test-release-ops.csv` | ## 当前门禁 @@ -44,7 +46,7 @@ DCL7 已删除本文件中 R70-R91 的长流水历史,避免旧环境、旧开 | 企业微信个人应用消息 | 正式通知通道 | 企业微信只做入口、身份、消息和 deeplink | | `ME6-3` 真机抽查 | 已关闭 | 2026-05-13 用户确认 iPhone 12、iPhone 14、Redmi K60 企业微信主流程通过;iPhone 12 间距偏紧为非阻断观察项 | | MIF7-7 | 已关闭 | MIF7T 已部署;公网 `/ready`、public bundle、公网 MIF7 移动矩阵、带凭据 live smoke/OCR 均通过 | -| R7E 真实执行 | 当前执行 | 浏览器业务线已通过,`f945c0b` 已部署;企业微信消息 deeplink 已按代表设备关闭,移动二次修复真机反馈和最终验收结论仍待关闭 | +| R7E 真实执行 | 已收口 | 阶段验收通过,当前 P0/P1 阻断为 0;付款批次、图片 OCR、Android 系统选择器等按 P2 或平台限制延期 | ## R7EP / OPS8 / QAF8 / UX8 / P2T 预检推进 @@ -323,7 +325,7 @@ Go 结论边界: - 企业微信真机后续只保留消息、免登录、WebView 文件选择器和系统选择器这类真实环境差异项。 - 付款批次闭环已延期到 P2,不作为当前 R7E 阻断。 -结论:当前可以关闭 `WF8-11`、`R7E-9`、`R7E-15`、`R7E-17`、`R7E-18`、`QAOPS8-17` 和 BIZ8 阶段流。`R7E-14` 已按付款批次延期到 P2 的变更口径收口;`R7E-19/R7E-20` 和 `QAOPS8-19/QAOPS8-20` 后续按 P2 排序与上线硬化收口推进。 +结论:当前可以关闭 `WF8-11`、`R7E-9`、`R7E-15`、`R7E-17`、`R7E-18`、`R7E-19`、`R7E-20`、`QAOPS8-17`、`QAOPS8-19`、`QAOPS8-20` 和 BIZ8 阶段流。`R7E-14` 已按付款批次延期到 P2 的变更口径收口;后续优先级为 QAOPS 上线硬化和测试数据稳定化、付款批次决策、图片 OCR 样票治理、组织主数据只读巡检、UX8 真机反馈。P2 功能开发必须另建或延续对应连续合同,本报告不启动新功能。 ## 历史恢复 diff --git a/docs/文档事实源状态矩阵.md b/docs/文档事实源状态矩阵.md index e90ea9d7..76562d7f 100644 --- a/docs/文档事实源状态矩阵.md +++ b/docs/文档事实源状态矩阵.md @@ -30,11 +30,11 @@ | `GOV8` | `issues/2026-05-13_16-31-09-gov8-system-governance.csv` | `EVIDENCE` | 连续型 Issue 治理、文档台账、流程模板和审计脚本,已收口 | | `DG8` | `issues/2026-05-13_22-56-49-design-ui-governance.csv` | `EVIDENCE` | 设计治理主参考系统收口;飞书工作台/飞书审批为唯一主 UI/布局参考,不代表页面已整改 | | `DG9` | `issues/2026-05-13_23-30-00-dg9-ui-layout-rollout.csv` | `EVIDENCE` | 全站 UI/布局样板迁移已收口;最新代码已作为 R7E 基线部署到公网,不替代 WF8/UX8/BIZ8 | -| `R7E` | `issues/2026-05-13_17-11-44-r7e-human-trialrun.csv` | `CURRENT` | 真实扩大试运行阶段验收已通过,P0/P1 阻断为 0;待 R7E-19 P2 排序和 R7E-20 收口 | +| `R7E` | `issues/2026-05-13_17-11-44-r7e-human-trialrun.csv` | `EVIDENCE` | 真实扩大试运行阶段验收、P2 排序和 R7E 收口已完成,P0/P1 阻断为 0 | | `ORG8` | `issues/2026-05-13_18-23-51-org8-master-data-permission.csv` | `EVIDENCE` | 组织账号和权限主数据治理已阶段收口;本地代表性角色验收通过,不替代 R7E 真实人工试运行 | | `WF8` | `issues/2026-05-13_18-23-52-wf8-approval-notification.csv` | `EVIDENCE` | 审批与通知增强已阶段收口;deeplink 过期修复已部署并经代表设备真机点击回 OA 验证 | | `BIZ8` | `issues/2026-05-13_18-23-53-biz8-finance-ocr-project.csv` | `EVIDENCE` | 报销/OCR/财务/项目轻量增强已阶段收口;财务移动入口真机通过,财务/项目权限回归完成,付款批次延期到 P2 | -| `QAOPS8` | `issues/2026-05-13_17-30-00-qaops8-test-release-ops.csv` | `CURRENT` | 测试、发布、运维和上线准备;与 R7E 并行贯穿,不替代 R7E 人工确认 | +| `QAOPS8` | `issues/2026-05-13_17-30-00-qaops8-test-release-ops.csv` | `EVIDENCE` | Go/No-Go 与上线硬化阶段收口已完成;后续硬化另起 QAOPS9 或等价连续合同 | | `FBA` | `issues/2026-05-15_23-45-41-r7e-post-function-boundary-audit.csv` | `EVIDENCE` | R7E 后全端功能边界审计和后续 Issue 草案;不启动 P2 功能开发 | 旧 Issue CSV 保留为历史审计证据:不删除、不批量回写、不移动到 `docs/archive/` 或其他归档目录。新连续合同如替代旧合同,只在新合同 `Notes` 或文档索引中说明 supersedes。 @@ -149,4 +149,4 @@ - `ME6-3` 代表性企业微信真机门禁已关闭。 - MIF7-1..7 与 MIF7T 已完成本地整改、公网部署、公网匿名复检和带凭据 live smoke/OCR 复检。 -- R7E 真实扩大试运行阶段验收已通过,当前 P0/P1 阻断为 0;后续进入 R7E-19/P2 排序、R7E-20 收口和 QAOPS8-19/20 上线硬化。 +- R7E 真实扩大试运行阶段验收、P2 排序、R7E 收口和 QAOPS8 上线硬化阶段收口已完成,当前 P0/P1 阻断为 0;后续 P2 功能开发必须另建或延续对应连续合同。 diff --git a/docs/文档索引.md b/docs/文档索引.md index 73e59dfd..28a3654f 100644 --- a/docs/文档索引.md +++ b/docs/文档索引.md @@ -28,7 +28,7 @@ R6 -> PC6 -> PA6 -> FL6 -> AP6 -> RI6 -> LP6 -> ME6/QG6 -> DG7/MRF7 -> MIA7 -> M - MIA7 已完成移动信息架构、视觉和流程审查;MIF7-1..7 与 MIF7T 已完成本地整改、公网部署、公网匿名复检和带凭据 live smoke/OCR 复检。 - DG8 已完成设计治理主参考系统收口:飞书工作台/飞书审批是唯一主 UI/布局参考;本结论只更新设计事实源,不代表已做页面整改。 - DG9 承接 DG8 后的页面整改:按 A/B/C 页面分层和 DG9 样板统一 PC、移动和企业微信入口布局;最新代码已作为 R7E 试运行基线部署到公网,不替代 WF8、UX8 或 BIZ8 业务验收。 -- R7E 阶段验收已通过,当前 P0/P1 阻断为 0;`R7E-19/R7E-20` 仍待 P2 排序与阶段收口,`QAOPS8-19/QAOPS8-20` 仍待上线硬化收口。 +- R7E 阶段验收、P2 排序和 QAOPS8 上线硬化阶段收口已完成,当前 P0/P1 阻断为 0;后续 P2 功能开发必须另建或延续对应连续合同。 - FBA 是 R7E 后全端功能边界审计,只提供证据和 Issue 草案,不启动 P2 功能开发。 ## 当前活跃治理流 @@ -40,11 +40,11 @@ R6 -> PC6 -> PA6 -> FL6 -> AP6 -> RI6 -> LP6 -> ME6/QG6 -> DG7/MRF7 -> MIA7 -> M | `GOV8` | `issues/2026-05-13_16-31-09-gov8-system-governance.csv` | 已收口 | 文档分类、台账、流程模板、审计脚本、需求冻结、变更控制 | 不改业务代码、不部署 | | `DG8` | `issues/2026-05-13_22-56-49-design-ui-governance.csv` | 已收口:设计事实源主参考系统更新 | 主 UI/布局参考层级、外部参考降级、Agent/Skill 设计入口、设计检查门禁 | 不改业务页面、不部署、不接入飞书 | | `DG9` | `issues/2026-05-13_23-30-00-dg9-ui-layout-rollout.csv` | 已收口;最新代码已随 R7E 部署到试运行环境 | A/B/C 页面分层、共享工作台骨架、移动槽位、审批/报销/首页/通知样板、设计门禁 | 不替代 WF8、UX8 或 BIZ8 业务验收 | -| `R7E` | `issues/2026-05-13_17-11-44-r7e-human-trialrun.csv` | 当前执行:阶段验收已通过,待 `R7E-19/R7E-20` P2 排序与收口 | 人工确认、真实试运行、每日问题收口、验收结论 | 不新增 P2 能力;付款批次延期到 P2 | +| `R7E` | `issues/2026-05-13_17-11-44-r7e-human-trialrun.csv` | 已收口:阶段验收通过,P2 排序与 R7E 收口完成 | 人工确认、真实试运行、每日问题收口、验收结论 | 不新增 P2 能力;付款批次延期到 P2 | | `ORG8` | `issues/2026-05-13_18-23-51-org8-master-data-permission.csv` | 已收口:本地代表性角色验收通过 | 组织、账号、直属主管、停用、角色、企业微信绑定、权限边界 | 不做审批流程增强;不替代 R7E 真实人工试运行 | | `WF8` | `issues/2026-05-13_18-23-52-wf8-approval-notification.csv` | 已收口:deeplink 修复已部署并经代表设备真机点击回 OA 验证 | 转审、通知、催办、邮件通道决策、三渠道验收 | 不做复杂 BPM 或审批设计器;通知模板和偏好设置延期到 P2 | | `BIZ8` | `issues/2026-05-13_18-23-53-biz8-finance-ocr-project.csv` | 已收口:财务移动入口真机通过,财务/项目权限回归完成 | OCR、票据、财务、费用提示、项目关联 | 不做 ERP 实时集成或重预算;付款批次延期到 P2 | -| `QAOPS8` | `issues/2026-05-13_17-30-00-qaops8-test-release-ops.csv` | 当前执行:贯穿治理 | 回归稳定、测试覆盖、上线门禁、备份恢复、SLO | 不改业务需求 | +| `QAOPS8` | `issues/2026-05-13_17-30-00-qaops8-test-release-ops.csv` | 已收口:Go/No-Go 与上线硬化阶段分流完成 | 回归稳定、测试覆盖、上线门禁、备份恢复、SLO | 不改业务需求;后续硬化另起 QAOPS9 或等价连续合同 | | `FBA` | `issues/2026-05-15_23-45-41-r7e-post-function-boundary-audit.csv` | 已收口:R7E 后全端功能边界审计和后续 Issue 草案 | PC、移动/企业微信、后端 API/作业、管理/运维边界审计 | 不改业务代码、不改 API/schema、不部署、不启动 P2 | 旧 Issue CSV 不删除、不批量回写、不移动到归档目录。若新治理流替代旧合同,只在新 CSV 的 `Notes` 或本索引说明 supersedes,旧文件保留历史审计语义。 diff --git a/issues/2026-05-13_17-11-44-r7e-human-trialrun.csv b/issues/2026-05-13_17-11-44-r7e-human-trialrun.csv index c2560b8b..68a810c2 100644 --- a/issues/2026-05-13_17-11-44-r7e-human-trialrun.csv +++ b/issues/2026-05-13_17-11-44-r7e-human-trialrun.csv @@ -24,5 +24,5 @@ R7E-16E,全站高风险操作二次确认统一,"把 R7E-16D 的审批确认模 R7E-16F,PC 自动化和视觉门禁补强,"把 PC 端高风险确认验收从人工点击改为 Playwright 自动化和视觉检查,移动仍用矩阵覆盖布局,企业微信真机只测真实环境差异。","1) PC mock 自动化覆盖取消不调用接口、确认后才调用接口;2) 移动矩阵覆盖确认弹窗不溢出和吸底操作稳定;3) project-wide 视觉检查通过;4) QAOPS8-17 记录 PC 自动化替代人工验收口径。","流程级验证:cd client && npx playwright test tests/e2e/system-action-confirmation.spec.ts tests/e2e/workflow-action-confirm-ui.spec.ts --workers=1 --reporter=list;cd client && npx playwright test tests/e2e/dg7-mobile-information-dedupe.spec.ts tests/e2e/r124-mobile-entry-matrix.spec.ts --workers=1 --reporter=list;QA_SKIP_CLIENT_BUILD=1 bash scripts/qa/run-web-gates.sh project-wide-visual-local。",playwright|bash,DONE,DONE,DONE,client/tests/e2e/system-action-confirmation.spec.ts|client/tests/e2e/workflow-action-confirm-ui.spec.ts|docs/trialrun/人工试运行报告.md|issues/2026-05-13_17-30-00-qaops8-test-release-ops.csv,"[""R7E-16E""]",2026-05-15 本地完成并验证:system-action-confirmation + workflow-action-confirm-ui 4 passed;DG7+R124 移动矩阵 6 passed;project-wide-visual-local 通过并自动准备临时 DB 和种子 1 passed。直接把 project-wide-visual 挂到裸 Vite 时曾因默认 E2E 数据前置不足出现登录 API HTTP_500 已归类为前置问题不作为业务回归。2026-05-15 23:18 CST bf791d7 已部署并完成公网复核:deploy.sh 通过;/ready ok;public bundle findings=0;live smoke env ready;E2E_BASE_URL=https://oa.hyinda.com PC 高风险确认与审批确认 4 passed;DG7+R124 公网移动矩阵 6 passed。R7E-18 仍需用户验收结论。 R7E-17,阻断问题修复分流,"根据每日问题清单把阻断问题分流到当前 R7E 修复或后续连续治理流。","1) 阻断问题有 owner;2) 能在 R7E 内修的有方案和验证;3) 范围外问题进入 UX8/ORG8/WF8/BIZ8/QAOPS8;4) 不顺手扩大。","流程级验证:人工核对问题清单和分流结果;必要时创建后续连续 CSV。",manual,DONE,DONE,DONE,issues/*.csv|docs/trialrun/人工试运行报告.md,"[""R7E-16""]",已知分流均已处理或延期:deeplink 归 WF8 并已代表设备验证关闭;状态槽归 R7E-16A 已部署并自动化验证;Android 选择器归 R7E-16B 按平台限制和 OA PDF-only 校验处理;财务付款批次延期到 P2;R7E-16D 已部署并公网自动化通过且代表真机确认;R7E-16E/R7E-16F 已部署 bf791d7 并公网自动化通过。当前无 P0/P1 阻断;R7E-18 验收结论仍需用户确认。 R7E-18,验收结论,"汇总 R7E 真实试运行结果,给出通过、暂停、回滚或继续观察结论。","1) 主流程结论完整;2) 阻断问题为 0 或明确暂停/回滚;3) 用户验收结论记录;4) 未完成项进入后续治理流。","流程级验证:人工验收;报告中列出流程结论、问题清单和后续动作。",manual,DONE,DONE,DONE,docs/trialrun/人工试运行报告.md,"[""R7E-17""]",2026-05-15 23:35 CST 用户明确确认“阶段验收通过”。R7E 主流程、企业微信入口/deeplink、移动体验、财务入口和全站高风险确认均已有自动化或代表真机证据;当前 P0/P1 阻断为 0。付款批次、图片 OCR、Android 系统选择器等作为 P2 或平台限制延期,不阻断本阶段验收。 -R7E-19,P2 排序调整,"根据 R7E 真实反馈调整 P2 候选优先级和后续连续治理流顺序。","1) P2 排序基于真实反馈;2) ORG8/WF8/BIZ8/QAOPS8 入口明确;3) 冻结项仍不进入;4) 如需变更 PRD 则另走事实源更新。","流程级验证:人工核对 PRD P2T 表、问题清单和后续 Issue 计划。",manual|rg,TODO,TODO,TODO,docs/海音达OA-MVP需求规格说明书.md|issues/*.csv,"[""R7E-18""]",P2 功能开发必须另建或延续对应连续合同。 -R7E-20,R7E 收口,"完成 R7E CSV 状态回填、报告归档、验证说明和中文提交。","1) CSV 校验通过;2) 所有 DONE 有证据;3) git diff --check 通过;4) 中文提交引用 R7E;5) 最终说明是否部署和是否可测。","流程级验证:validate_issues_csv.py 本 CSV;git diff --check;人工核对报告和状态。",python3|git|manual,TODO,TODO,TODO,issues/2026-05-13_17-11-44-r7e-human-trialrun.csv|docs/trialrun/人工试运行报告.md,"[""R7E-18"",""R7E-19""]",真实 R7E 完成后才能回填;当前不得提前 DONE。 +R7E-19,P2 排序调整,"根据 R7E 真实反馈调整 P2 候选优先级和后续连续治理流顺序。","1) P2 排序基于真实反馈;2) ORG8/WF8/BIZ8/QAOPS8 入口明确;3) 冻结项仍不进入;4) 如需变更 PRD 则另走事实源更新。","流程级验证:人工核对 PRD P2T 表、问题清单和后续 Issue 计划。",manual|rg,DONE,DONE,DONE,docs/海音达OA-MVP需求规格说明书.md|issues/*.csv,"[""R7E-18""]",2026-05-16 已按 R7E 真实反馈和 FBA 审计锁定后续优先级:先 QAOPS 上线硬化和测试数据稳定化,再付款批次决策、图片 OCR 样票治理、组织主数据只读巡检和 UX8 真机反馈;ERP、AI、完整差旅、复杂 BPM、审批设计器、重预算和企业微信原生审批继续冻结;P2 功能开发必须另建或延续对应连续合同。 +R7E-20,R7E 收口,"完成 R7E CSV 状态回填、报告归档、验证说明和中文提交。","1) CSV 校验通过;2) 所有 DONE 有证据;3) git diff --check 通过;4) 中文提交引用 R7E;5) 最终说明是否部署和是否可测。","流程级验证:validate_issues_csv.py 本 CSV;git diff --check;人工核对报告和状态。",python3|git|manual,DONE,DONE,DONE,issues/2026-05-13_17-11-44-r7e-human-trialrun.csv|docs/trialrun/人工试运行报告.md,"[""R7E-18"",""R7E-19""]",2026-05-16 R7E 阶段收口完成:R7E-18 用户确认阶段验收通过,当前 P0/P1 阻断为 0,R7E-19 已完成 P2 分流;本轮只回写 CSV 和既有文档,不改业务代码、不部署,公网状态不变;验证以本 CSV 校验、关键词 rg、文档登记校验和 git diff --check 为准。 diff --git a/issues/2026-05-13_17-30-00-qaops8-test-release-ops.csv b/issues/2026-05-13_17-30-00-qaops8-test-release-ops.csv index 7432dec4..27f1cd46 100644 --- a/issues/2026-05-13_17-30-00-qaops8-test-release-ops.csv +++ b/issues/2026-05-13_17-30-00-qaops8-test-release-ops.csv @@ -18,5 +18,5 @@ QAOPS8-15,发布 Runbook 收敛,"把发布前检查、部署步骤、验证步 QAOPS8-16,回滚演练窗口,"确认回滚演练窗口、负责人、触发条件、数据保护和恢复验证步骤。","1) 窗口和负责人确认;2) 回滚脚本或步骤有只读预检;3) 数据保护优先;4) 演练结果可追溯。","流程级验证:人工确认回滚窗口;必要时先在非生产环境执行。",manual,DONE,DONE,DONE,docs/trialrun/OPS7运维交接Runbook.md,"[""QAOPS8-11"",""QAOPS8-15""]",完成:按用户授权采用推荐方案;窗口暂定 2026-05-14 19:30-20:30 Asia/Shanghai 即 R7E 首日每日收口后;负责人和暂停回滚决策人 wangshunli;范围为非生产恢复演练优先 生产只读回滚 dry run;步骤为备份清单核对 隔离库恢复 /ready 登录核心流程只读验证 生产回滚步骤只读复盘;触发条件为 P0 数据损坏 发布阻断或公网关键门禁失败;停止条件为备份不完整 权限不明确 影响生产或责任人不在线;本行只确认窗口和边界 未执行数据库恢复 生产回滚 服务切换或破坏性命令;真实恢复或生产回滚执行前仍需再次明确批准。 QAOPS8-17,上线 Go No-Go 清单,"建立上线或扩大试运行 Go/No-Go 清单,统一本地、公网匿名、带凭据、企业微信真机和人工验收结论。","1) Go、No-Go、Pause 条件明确;2) 阻断问题为 0 或有明确延期;3) R7E 人工验收不被自动化替代;4) 结论写入 Issue 和报告。","流程级验证:人工核对 R7E 结论、QAOPS8 门禁、发布清单和问题清单。",manual,DONE,DONE,DONE,docs/trialrun/发布试运行准备清单.md|docs/trialrun/人工试运行报告.md|issues/*.csv,"[""QAOPS8-15"",""QAOPS8-16""]",当前清单已形成:2026-05-14 最新代码 4b14c92 已部署到试运行环境且 R7E-8 完成;本轮无人工自动化补测结果为公网 /ready 通过 public bundle findings=0 live smoke env ready 授权 PDF 可读,R7E preflight 通过 报销 BX-20260514-0016 创建上传提交审批通过 请假通过 采购 CG-20260514-0005 含附件 PC/移动通过 移动浏览器通过 WeCom UA 模拟通过;审批边界 approval-boundary 通过,申请人和 admin-only 审批接口均被拒绝且经理正常收尾;财务 finance-closeout 诊断为 AP/payment-batches 功能门禁 payment_batch_v1_disabled / flag_force_off,未执行付款闭环;dg7-mobile-information-dedupe 启动 Vite 后 5 passed,前次 127.0.0.1:3000 失败确认为前置问题;2026-05-14 22:05 已追加部署修复提交 5491e92,deploy.sh 远端 build/migration status 通过,public bundle 首次短暂 502 后复核 /ready 200 首页 200 public bundle findings=0,external deps smoke 和 runtime smoke 通过,live readiness 3 passed,真实 OCR 样票 1 passed,DG7+R124 公网移动矩阵 6 passed,R7E mobile/finance-closeout/wecom-ua 分段通过或按 flag_force_off 可解释 SKIP;R7E-14 已按用户确认的付款批次延期到 P2 口径收口;2026-05-15 用户确认代表设备企业微信消息 deeplink 可免登录进入对应详情 WF8-11 和 R7E-9 已关闭;2026-05-15 19:31 二次修复 f945c0b 已部署 deploy.sh 远端构建 init migration ready external deps smoke runtime smoke public bundle 均通过 部署后 /ready 通过 public bundle findings=0 live smoke env ready DG7+R124 公网移动矩阵 6 passed;用户确认 R7E-16C 审批状态/详情按钮/返回间距和 BIZ8-12B 财务入口定位真机通过;2026-05-15 21:46 R7E-16D 96488d8 已部署 deploy.sh 远端构建 init migration ready external deps smoke runtime smoke public bundle 均通过 部署后 /ready ok public bundle findings=0 live smoke env ready DG7+R124 公网移动矩阵复跑 6 passed 审批确认专项 5 passed;BIZ8-13 权限回归和 BIZ8-CLOSE 已完成;2026-05-15 R7E-16E/R7E-16F 本地完成全站高风险确认统一和 PC 自动化验收口径:client typecheck/build 通过 rg window.confirm/window.prompt 无结果 system-action-confirmation 2 passed system-action-confirmation+workflow-action-confirm-ui 4 passed DG7+R124 移动矩阵 6 passed project-wide-visual-local 1 passed;PC 端高风险动作改由 Playwright 和视觉门禁验收 不再安排人工 PC 点击;2026-05-15 23:18 CST bf791d7 已部署到 https://oa.hyinda.com 且 SYNC_ENV=0 未覆盖远端 .env,deploy.sh 远端构建 init migration status ready external deps smoke runtime smoke public bundle 扫描通过;部署后 /ready ok public bundle findings=0 live smoke env ready;公网 PC 高风险确认与审批确认 4 passed,DG7+R124 公网移动矩阵 6 passed;2026-05-15 23:35 CST 用户明确确认阶段验收通过,R7E-18 已关闭;Go/No-Go 结论为 Go,P0/P1 阻断为 0,付款批次 图片 OCR Android 系统选择器等已接受为 P2 延期或平台限制。 QAOPS8-18,只读审计和排障边界,"明确公网、数据库、日志和 MCP 只读审计边界,避免排障时误写生产或泄露敏感信息。","1) 只读查询边界明确;2) 禁止 INSERT、UPDATE、DELETE;3) 敏感字段脱敏;4) 排障证据只记录摘要和路径。","流程级验证:rg -n 'audit-readonly|只读|INSERT|UPDATE|DELETE|MCP|PostgreSQL' AGENTS.md docs/mcp-tools.md docs/开发交付与变更管理规约.md。",rg|manual,DONE,DONE,DONE,AGENTS.md|docs/mcp-tools.md|docs/开发交付与变更管理规约.md,"[""QAOPS8-14""]",rg 复核通过;AGENTS 限定 audit-readonly 和 PostgreSQL MCP 只读查询;docs/mcp-tools 限定 SELECT 和禁止写操作;开发交付规约已补日志和证据摘要脱敏边界;未执行生产查询或启用新 MCP。 -QAOPS8-19,R7E 后上线硬化收口,"在 R7E 真实反馈后集中收口上线硬化,更新门禁缺口、问题分流和后续治理优先级。","1) R7E 结论已记录;2) QAOPS8 未完成项有归属;3) 阻断问题有 owner;4) 后续 ORG8、WF8、BIZ8、QAOPS8 顺序可解释。","流程级验证:人工核对 R7E-18、R7E-19、QAOPS8 当前状态和问题清单。",manual,TODO,TODO,TODO,issues/2026-05-13_17-11-44-r7e-human-trialrun.csv|issues/2026-05-13_17-30-00-qaops8-test-release-ops.csv,"[""QAOPS8-17""]",依赖 R7E 人工试运行结论;当前不能提前完成。 -QAOPS8-20,QAOPS8 收口,"完成 QAOPS8 状态回填、验证摘要、证据索引和中文提交。","1) CSV 校验通过;2) 所有 DONE 有命令或人工证据;3) 文档索引和状态矩阵一致;4) git diff --check 通过;5) 中文提交引用 QAOPS8。","流程级验证:python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-05-13_17-30-00-qaops8-test-release-ops.csv;node scripts/qa/audit-docs.mjs --check-registry;git diff --check。",python3|node|git|manual,TODO,TODO,TODO,issues/2026-05-13_17-30-00-qaops8-test-release-ops.csv|docs/文档索引.md|docs/文档事实源状态矩阵.md,"[""QAOPS8-19""]",所有执行行完成后才能收口。 +QAOPS8-19,R7E 后上线硬化收口,"在 R7E 真实反馈后集中收口上线硬化,更新门禁缺口、问题分流和后续治理优先级。","1) R7E 结论已记录;2) QAOPS8 未完成项有归属;3) 阻断问题有 owner;4) 后续 ORG8、WF8、BIZ8、QAOPS8 顺序可解释。","流程级验证:人工核对 R7E-18、R7E-19、QAOPS8 当前状态和问题清单。",manual,DONE,DONE,DONE,issues/2026-05-13_17-11-44-r7e-human-trialrun.csv|issues/2026-05-13_17-30-00-qaops8-test-release-ops.csv,"[""QAOPS8-17""]",2026-05-16 已根据 R7E-18 阶段验收通过和 R7E-19 P2 分流完成上线硬化收口:Go/No-Go 结论为 Go,当前 P0/P1 阻断为 0;后续建议新建 QAOPS9 或等价连续合同承载公网业务流测试数据、live smoke 账号链路、恢复演练窗口设计和 SLO/Go-No-Go 自动化增强;不得执行生产恢复、重置数据库、打印远端 env 或用重试掩盖缺陷。 +QAOPS8-20,QAOPS8 收口,"完成 QAOPS8 状态回填、验证摘要、证据索引和中文提交。","1) CSV 校验通过;2) 所有 DONE 有命令或人工证据;3) 文档索引和状态矩阵一致;4) git diff --check 通过;5) 中文提交引用 QAOPS8。","流程级验证:python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-05-13_17-30-00-qaops8-test-release-ops.csv;node scripts/qa/audit-docs.mjs --check-registry;git diff --check。",python3|node|git|manual,DONE,DONE,DONE,issues/2026-05-13_17-30-00-qaops8-test-release-ops.csv|docs/文档索引.md|docs/文档事实源状态矩阵.md,"[""QAOPS8-19""]",2026-05-16 QAOPS8 阶段收口完成:QAOPS8-19 已完成硬化缺口和后续治理分流;本轮只回写 CSV 和既有文档,不改业务代码、不部署,公网状态不变;验证以 QAOPS8 CSV 校验、audit-docs registry、关键词 rg 和 git diff --check 为准。