17 行
16 KiB
CSV
17 行
16 KiB
CSV
"ID","Title","Description","Acceptance","Test_Method","Tools","Dev_Status","Review1_Status","Regression_Status","Files","Dependencies","Notes"
|
|
"OANEXT2-0","建立后续工作细化采纳合同","基于 OINV1 外部发票样本池、OALAUNCH1 最终启用门禁、OANEXT1 采纳路线和 OAOPS1 自动巡检最新状态,建立下一轮后续工作细化合同;本合同只供用户审查采纳,不直接实施代码、部署或公网写入。","Issue CSV 校验通过;明确本合同不替代 OINV1、OALAUNCH1、OAOPS1 或 OANEXT1,只提供后续执行顺序、门禁和人工决策点;除已完成的审视/合同门禁外,执行项默认 TODO。","受影响流程:最新状态审视 -> 后续路线拆分 -> 用户审查采纳;验证步骤:python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-05-23_20-47-20-oa-next-adoption-detailed-roadmap-v2.csv。","python3|manual","DONE","DONE","DONE","issues/2026-05-23_20-47-20-oa-next-adoption-detailed-roadmap-v2.csv","[]","MAGI 审视:自动巡检和资产/发票样本准备较完整,但最终启用仍缺真实业务、权限、备份、7 天和 Go/No-Go;执行:新建采纳合同;提升:先自动补证据,再进入人工和运维门禁。回滚/清理:删除本规划 CSV 或后续提交即可,不影响公网、数据库或业务数据。"
|
|
"OANEXT2-1","最新状态基线审视","梳理当前未完成项:OINV1-3/4/5/6、OALAUNCH1-3..7、OANEXT1-2..9、OAOPS1-3..6;识别哪些可自动化、哪些需人工/运维批准。","列出当前最高优先级:1) OINV1 批量 OCR 脱敏与验证;2) 权限矩阵自动负例;3) TEST/SMOKE 业务闭环;4) 真实业务人工闭环;5) 备份恢复;6) 7 天稳定化;7) Go/No-Go。","受影响流程:Issue 状态读取 -> 后续排序 -> 采纳决策;验证步骤:读取 OINV1/OALAUNCH1/OANEXT1/OAOPS1 CSV 中 TODO 行并核对最新提交。","python3|git","DONE","DONE","DONE","issues/2026-05-23_20-24-42-oa-invoice-automation-hardening-v1.csv;issues/2026-05-23_16-49-39-oa-final-launch-readiness-v1.csv;issues/2026-05-23_19-14-44-oa-next-work-adoption-plan-v1.csv;issues/2026-05-22_20-09-22-oa-real-use-stabilization-v1.csv","[""OANEXT2-0""]","当前证据:OAOPS1 最新 PASS_OA_REAL_USE_DAILY_READY;OINV1 找到报销候选 114 个、PDF 105 个;OALAUNCH1 仍 PAUSED_MANUAL_CONFIRMATION。"
|
|
"OANEXT2-2","第一优先级:批量 OCR 报告脱敏加固","若用户采纳,优先实施 OINV1-3:改造或新增 QA-only 批量 OCR 报告逻辑,避免真实发票号、销售方、金额、完整文件名、完整路径和票面原图进入日志、附件或 summary。","批量 OCR 报告只输出 alias、状态、耗时、字段命中布尔值、重复/已使用/失败可解释原因;隐私扫描通过;不改变生产业务 API/schema。","受影响流程:真实 PDF 样本 -> 公网上传 OCR -> 脱敏报告;验证步骤:node/ts 语法检查;Playwright 单票 smoke;报告隐私扫描;validate OINV1。","playwright|node|git","DONE","DONE","DONE","client/tests/e2e/manual/live-invoice-ocr.spec.ts;client/tests/e2e/manual/live-invoice-ocr-batch.spec.ts;client/tests/e2e/helpers/liveInvoiceOcr.ts;artifacts/qa-flow/live-smoke-readiness-20260523-205755;artifacts/qa-flow/oinv1-redacted-batch-smoke-20260523-205755","[""OANEXT2-1""]","用户选择 A;已完成脱敏加固和最小公网验证。回滚:恢复测试脚本改动;不影响生产 API/schema 或既有业务数据。"
|
|
"OANEXT2-3","第二优先级:代表小样本 PDF OCR smoke","在 OANEXT2-2 脱敏加固后,从 /tmp SAMPLE-PDF-xxx 别名池选取 2-3 张代表 PDF 报销候选样本执行公网 OCR smoke;默认不提交报销、不审批、不付款。105 张全量仅作为后续可选压力/覆盖专项,不作为启用前必跑门禁。","输出小样本脱敏 summary:总数、成功数、重复/已用数、失败/超时数、字段命中率和可解释失败分类;报告不含票面值、完整路径或原始 payload;发现不可解释失败进入修复合同。","受影响流程:PDF 样本池 -> 公网票据上传 -> OCR/重复终态 -> 脱敏统计;验证步骤:PLAYWRIGHT_MANUAL=1 PLAYWRIGHT_OCR_LIVE=1 PLAYWRIGHT_OCR_ALLOW_DUPLICATE=1 PLAYWRIGHT_OCR_BATCH_MAX_SAMPLES=3 PLAYWRIGHT_OCR_BATCH_STOP_WHEN_COVERED=1 执行批量 OCR Playwright;隐私扫描。","playwright|bash","DONE","DONE","DONE","artifacts/qa-flow/oinv1-redacted-batch-api-coverage-stop-20260523-continue/summary.json;client/tests/e2e/manual/live-invoice-ocr-batch.spec.ts;client/tests/e2e/helpers/liveInvoiceOcr.ts","[""OANEXT2-2""]","完成:公网小样本 planned=3、actual=2、stopReason=coverage_satisfied,覆盖可用终态和重复/相同发票终态;默认 API 轮询,UI 复核可通过 PLAYWRIGHT_OCR_BATCH_TRANSPORT=ui 单独执行。未提交报销、未审批、未付款。105 张全量继续作为后续可选压力/覆盖专项。"
|
|
"OANEXT2-4","第三优先级:权限矩阵自动负例","补齐 OALAUNCH1-5/OANEXT1-3:用 OA-only smoke 账号自动验证员工、主管、财务、HR、CEO、管理员的入口可用性和普通员工越权负例。","普通员工不能访问财务/AP、合同敏感附件、他人审批、管理入口、审计导出、高敏或冻结模块;角色必要入口可用;报告脱敏且可作为 OALAUNCH_PERMISSION_EVIDENCE。","受影响流程:多角色登录 -> 页面入口 -> API 直连负例 -> 权限报告;验证步骤:LIVE_SMOKE_BASE_URL=https://oa.hyinda.com OA_PERMISSION_MATRIX_REPORT_DIR=artifacts/qa-flow/oa-permission-matrix-20260523-magi node scripts/qa/check-oa-permission-matrix.mjs;隐私扫描。","node|bash","DONE","DONE","DONE","scripts/qa/check-oa-permission-matrix.mjs;artifacts/qa-flow/oa-permission-matrix-20260523-magi/summary.json;artifacts/qa-flow/oa-final-launch-readiness-20260523-220358/summary.json","[""OANEXT2-1""]","完成:公网只读权限矩阵 PASS_PERMISSION_MATRIX_READY,覆盖 7 个 OA-only smoke 角色、40 个正向探针、24 个负向探针;员工/主管/普通财务越权拒绝,财务主管系统审计能力按既有权限模型视为授权,admin 以 portal 能力和导航验证为系统管理员且非业务审批/财务角色。报告脱敏;未改权限模型、未创建业务数据、未执行付款。"
|
|
"OANEXT2-5","第四优先级:TEST/SMOKE 业务闭环自动化","在不使用真实付款、不导入银行流水、不写 ERP 的前提下,准备用 TEST/SMOKE 标记自动跑 OA 主办域闭环:报销/OCR、审批、付款批次、银行回单附件、AP 导出、采购/费用、项目/合同关联。","自动化测试数据有 TEST/SMOKE marker;不含真实合同正文、敏感报价、银行流水原件或票面原图;可验证流程技术闭环,但不替代真实业务人工验收。","受影响流程:报销 -> 审批 -> 付款批次 -> 回单 -> AP;采购/费用 -> 项目/合同;验证步骤:OA_TEST_SMOKE_BUSINESS_WRITE=1 LIVE_SMOKE_BASE_URL=https://oa.hyinda.com node scripts/qa/run-oa-test-smoke-business-loop.mjs;隐私扫描。","node|bash","DONE","DONE","DONE","scripts/qa/run-oa-test-smoke-business-loop.mjs;artifacts/qa-flow/oa-test-smoke-business-loop-20260523-magi/summary.json","[""OANEXT2-2"",""OANEXT2-4""]","完成:用户已在 OANEXT2-13 选择 A,公网创建 TEST/SMOKE/OANEXT2 测试业务数据;最终报告 PASS_TEST_SMOKE_BUSINESS_LOOP_READY。覆盖项目、合同台账、报销提交审批、付款批次、合成回单、OA 内已付款标记、AP 导出、采购审批、采购归档与项目/合同关联;未执行真实银行付款、未接支付服务、未写 ERP、未导入银行流水、未上传真实票面原图。早期失败尝试留下少量 TEST/SMOKE 草稿/台账数据,按审计保留。"
|
|
"OANEXT2-6","第五优先级:真实业务人工闭环证据包","补齐 OAOPS1-3/4/5/6 和 OALAUNCH1-3:用 1 条真实报销、1 条采购/费用、1 条合同台账和每日问题登记形成正式启用前人工证据。","真实报销完成 OCR、提交、审批、付款批次、回单、已付款和 AP 导出;采购/费用完成审批并关联项目或合同;合同台账有编号、负责人、归档位置和权限检查;问题登记机制可执行。","受影响流程:真实业务 -> OA 记录 -> 财务/审计 -> 最终启用汇总;验证步骤:人工在公网 OA 操作;运行 run-oa-final-launch-readiness.sh 并提供 OALAUNCH_BUSINESS_EVIDENCE。","manual|bash","TODO","TODO","TODO","issues/2026-05-22_20-09-22-oa-real-use-stabilization-v1.csv;issues/2026-05-23_16-49-39-oa-final-launch-readiness-v1.csv","[""OANEXT2-5""]","真实票据、合同正文、敏感报价、银行流水原件和未脱敏票面不得进入仓库/聊天/自动化报告。"
|
|
"OANEXT2-7","第六优先级:备份恢复演练方案与执行门禁","补齐 OALAUNCH1-6/OANEXT1-4:规划并执行影子库或隔离恢复验证,确认备份可定位、可访问、可恢复,不影响公网生产库。","有备份集合/介质引用、恢复演练证据、RTO/RPO、负责人、关键表/附件/登录/报销详情/AP 抽样结果;失败则暂停正式启用。","受影响流程:备份检查 -> 影子恢复 -> 数据验证 -> Go/No-Go;验证步骤:按 OPS runbook 执行;证据路径传入 OALAUNCH_BACKUP_EVIDENCE。","manual|ops","TODO","TODO","TODO","docs/trialrun/OPS7运维交接Runbook.md;docs/ops/非功能基线.md;docs/需求-资产管理规约.md","[""OANEXT2-6""]","必须人工批准范围;不得重置公网数据库,不得 destructive restore。回滚/清理:仅删除影子库、临时恢复目录和临时凭据,公网生产库不回滚不覆盖。涉及恢复/权限修复后需只读 reviewer subagent。"
|
|
"OANEXT2-8","第七优先级:7 天稳定化启动与每日收口","补齐 OALAUNCH1-4/OANEXT1-6:确认起始日期,连续 7 天执行 OAOPS1 每日只读巡检和人工日收口。","连续 7 天报告可读;无不可解释 blocker;非阻断 finding 有 owner、完成日期或接受理由;Day 7 可进入最终 Go/No-Go。","受影响流程:每日巡检 -> 问题登记 -> blocker 修复/绕行 -> Day 7 汇总;验证步骤:LIVE_SMOKE_BASE_URL=https://oa.hyinda.com bash scripts/qa/run-oa-real-use-daily.sh;Day 7 运行 run-oa-final-launch-readiness.sh。","bash|manual","TODO","TODO","TODO","scripts/qa/run-oa-real-use-daily.sh;scripts/qa/run-oa-final-launch-readiness.sh;artifacts/qa-flow/oa-real-use-daily-*","[""OANEXT2-4"",""OANEXT2-6"",""OANEXT2-7""]","需要用户选择起始日期;不能用旧报告凑连续 7 天。建议在批量 OCR 和权限负例通过后启动。"
|
|
"OANEXT2-9","第八优先级:数据治理与操作 SOP","补齐 OALAUNCH1-7/OANEXT1-5:固化资料上传边界、档案留存、异常处理、人工绕行、员工/审批人/财务/管理员操作清单。","形成可执行清单并通过人工确认:哪些资料可上传 OA,哪些只登记摘要或线下归档;阻断处理、当天修复合同、人工绕行和暂停标准清楚。","受影响流程:业务提交 -> 审批处理 -> 财务付款 -> 档案留存 -> 问题升级;验证步骤:人工确认 SOP;必要时更新管理员手册/员工快速上手并跑 audit-docs。","manual|node","TODO","TODO","TODO","docs/管理员手册.md;docs/员工快速上手.md;docs/需求-资产管理规约.md;docs/需求-合同附件归档规约.md","[""OANEXT2-6""]","第一阶段只做 SOP,不做复杂 BPM、公告签收系统或电子档案门户。文档更新需优先复用现有事实源。"
|
|
"OANEXT2-10","第九优先级:Day 7 Go/No-Go 决策","7 天稳定化和关键证据闭合后,由用户按 OALAUNCH1 做正式启用决策;系统不得自动替用户批准上线。","run-oa-final-launch-readiness 输出 PASS_OA_LAUNCH_READY,或用户明确接受 PASS_WITH_FINDINGS 并指定 owner/日期;否则保持暂停。","受影响流程:最终汇总 -> Go/No-Go -> 小团队正式启用或整改;验证步骤:用户明确选择 A/B/C 后设置 OALAUNCH_MANUAL_ACCEPT 并复跑最终汇总。","manual|bash","TODO","TODO","TODO","issues/2026-05-23_16-49-39-oa-final-launch-readiness-v1.csv;scripts/qa/run-oa-final-launch-readiness.sh","[""OANEXT2-8"",""OANEXT2-9""]","用户选项:A 接受 PASS_OA_LAUNCH_READY;B 接受 PASS_WITH_FINDINGS 但指定 owner/日期;C 暂停启用先整改。"
|
|
"OANEXT2-11","正式启用后 P1 候选池","在 OALAUNCH1 通过或稳定期反馈足够后,再从真实反馈中选择 1-2 个 P1:财务月结/代账交接、合同/项目提醒、轻量配置台、管理看板、资产运营、移动体验、通知可靠性。","每个 P1 候选都有业务价值、触发条件、验收方法、owner 和回滚边界;未通过 OALAUNCH1 前不得抢跑 P2 或复杂功能。","受影响流程:真实使用反馈 -> P1 排序 -> 新执行合同;验证步骤:人工复盘 7 天问题登记、OAOPS1 报告和用户反馈。","manual","TODO","TODO","TODO","issues/2026-05-23_17-20-00-oa-maturity-gap-review-v1.csv;docs/trialrun/人工试运行报告.md","[""OANEXT2-10""]","建议默认先看财务月结/代账交接和合同/项目提醒;若 7 天反馈指向移动或通知,则调整。"
|
|
"OANEXT2-12","P2 深集成继续冻结","正式启用前继续冻结复杂 BPM、预算、ERP/银行/税务/电子签章深集成、知识档案门户、AI 自动写规则、图片 OCR 扩展、企微 HR 深镜像、应急接管、恢复回写和 RuleOps。","冻结项不通过导航、搜索、API 或 feature flag 误开放给普通用户;后续重启必须另建专项 Issue CSV、风险评审和人工批准。","受影响流程:范围控制 -> 冻结入口 -> 后续专项评估;验证步骤:结合权限矩阵负例和 OALAUNCH1 权限证据检查冻结项不可见不可写。","manual|playwright|node","TODO","TODO","TODO","docs/集成边界.md;docs/产品口径.md;docs/企微优先开发路线图.md;client/src/features/navigation/schema.ts;server/src/routes/featureFlags.js","[""OANEXT2-4""]","成熟路线是先 P0 可控运行,再根据真实反馈螺旋升级,不追一次性大而全。"
|
|
"OANEXT2-13","用户采纳问答门禁","用户审查本合同后按选项决定是否采纳各组工作;未采纳项不得进入实施。","用户回复覆盖 Q1-Q6 或明确整体采纳;采纳结果回填后,才允许进入对应执行合同或更新 OINV1/OALAUNCH1 状态。","受影响流程:规划审查 -> A/B/C 决策 -> 后续执行;验证步骤:人工核对用户回复并 validate CSV。","manual|python3","DONE","DONE","DONE","issues/2026-05-23_20-47-20-oa-next-adoption-detailed-roadmap-v2.csv","[""OANEXT2-0""]","2026-05-23 用户明确:Q1-Q6 全部选 A,并要求按方案实施。含义:允许 OCR 脱敏+批量验证、权限矩阵自动跑、TEST/SMOKE 业务闭环、真实业务本周开始、影子库恢复演练、OCR+权限后启动 7 天稳定化;仍不得伪造 7 天/人工/运维门禁完成。"
|
|
"OANEXT2-14","本规划合同门禁与停止点","完成本 CSV 校验、process contract、文档审计/skill 校验和 diff 检查;提交后等待用户审查采纳,不继续实施。","合同通过校验并提交;除审视和合同门禁外,执行项保持 TODO;最终回复说明下一步需要用户按 Q1-Q6 采纳。","受影响流程:规划 -> 校验 -> 提交 -> 用户审查;验证步骤:validate_issues_csv.py;node scripts/qa/check-process-contract.mjs --baseline --json;node scripts/qa/check-process-contract.mjs --issue <csv> --profile general --json;node scripts/qa/audit-docs.mjs --check-registry;quick_validate.py .agents/skills/hyb-oa-delivery;git diff --check。","python3|node|git","TODO","TODO","TODO","issues/2026-05-23_20-47-20-oa-next-adoption-detailed-roadmap-v2.csv","[""OANEXT2-0""]","本轮只做规划;不部署、不写公网、不修改业务代码。"
|