[ { "step": "D-01.0 复测前 badge 基线(含 stage0 卡清单)", "ok": true, "note": "badge=2" }, { "step": "D-01.1 进行中 stage0 项目被 badge 计入且卡带冲突解除入口", "ok": true, "note": "badge 2->3; card=R17-D01-关闭-020424 hasBtn=True" }, { "step": "D-01.2 关闭后 badge 回落(不计已关闭项目)", "ok": true, "note": "badge 3->2(期望回到 2)" }, { "step": "D-01.3 已关闭项目 stage0 卡无「冲突解除」死入口", "ok": true, "note": "card visible=True, hasBtn=False" }, { "step": "D-01.4 API:已关闭卡 conflictActionAvailable=false", "ok": true, "note": "closed_cards=8, flags=[False, False, False, False, False]" }, { "step": "D-01.5 API:badge = stage0 进行中数量(终态口径)", "ok": true, "note": "conflictPendingCount=2, stage0进行中=2, stage0已关闭=8" }, { "step": "D-01.6 服务端终态锁保持:对已关闭项目冲突解除仍 68003 拒", "ok": true, "note": "code=68003 msg=项目已关闭/已结项(终态锁),不可冲突解除(报备审核回填)" }, { "step": "D-03.1 赢单弹窗带快照四字段(开标时间/地点/中标方式/中标金额)", "ok": true, "note": "{'hasBidResultSel': True, 'hasOpenTime': True, 'hasOpenPlace': True, 'hasMethod': True, 'hasAmount': True, 'loseReviewFields': []}" }, { "step": "D-03.2 标记赢单成功并停 stage5 闭环", "ok": true, "note": "R17-D03-赢单-020424 赢单/输单 进行中 通过 赢单 id=753435737872924672 客户 A5DEMO-甲客户 负责人 A5总监 项目金额 - 方案卡 99021008 品牌 - 地区 - 关闭 -" }, { "step": "D-03.3 开标页签回显快照四值", "ok": true, "note": "时间=2026-09-20 09:30:00 地点=南京市公共资源交易中心-R17 方式=公开招标 金额=980000" }, { "step": "D-03.4 开标页签回显中标时间(服务端盖章,非 '-')", "ok": true, "note": "中标时间=2026-09-11 02:04:41" }, { "step": "D-03.5 API 双证:bid-open 快照字段已落列", "ok": true, "note": "place=南京市公共资源交易中心-R17, method=公开招标, amount=980000.0, bidTime=2026-09-11 02:04:41, bidResult=1" }, { "step": "D-03.6 输单路径可用:免输单复盘字段直接提交 → stage6 结项", "ok": true, "note": "dialog={'bidResultSel': '2', 'requiredInputs': []}; head=R17-D03-输单-020424 结项 已结项 通过 输单 id=753435772652093440 客户 A5DEMO-甲客户 负责人 A5总监 项目金额 - 方案卡 99021008 品牌 -" }, { "step": "D-02.0 总监建他人项目(销售将对其操作)", "ok": true, "note": "id=753435791895560192" }, { "step": "D-02.1 普通销售对他人项目「冲突解除」被拒 68010", "ok": true, "note": "code=68010 msg=仅项目负责人、管理员或销售总监可执行该状态动作" }, { "step": "D-02.2 普通销售对他人项目「推进」被拒 68010", "ok": true, "note": "code=68010 msg=仅项目负责人、管理员或销售总监可执行该状态动作" }, { "step": "D-02.3 普通销售对他人项目「关闭」被拒 68010", "ok": true, "note": "code=68010 msg=仅项目负责人、管理员或销售总监可执行该状态动作" }, { "step": "D-02.4 普通销售对他人项目「标记赢输」被拒 68010(stage0 即拒,权限先于状态)", "ok": true, "note": "code=68010 msg=仅项目负责人、管理员或销售总监可执行该状态动作" }, { "step": "D-02.5 普通销售对他人 stage5 项目「标记赢单」被拒 68010", "ok": true, "note": "stage=5 code=68010 msg=仅项目负责人、管理员或销售总监可执行该状态动作" }, { "step": "D-02.6 负责人标记赈权限未误伤(code=0,stage5 闭环)", "ok": true, "note": "code=0 stage=5 bid=1" }, { "step": "D-02.7 负责人 冲突解除/推进/关闭 对自己项目全部成功(未误伤)", "ok": true, "note": "filing=True advance=True close_code=0" }, { "step": "D-02.8 普通销售对自己(负责人)项目可冲突解除——口径为负责人制非角色封禁", "ok": true, "note": "code=0 msg=success" } ]