Repository navigation
test(chat): restore evidence subject before linked recovery - #7620
Conversation
Signed-off-by: Tartar <xiaoyx67@mail2.sysu.edu.cn>
loopx-agent
left a comment
There was a problem hiding this comment.
Reviewer: model_agent · gpt-6.1-sol · OpenAI · runtime_reported · max
动机 / Motivation
维护团队证据阅读与发布验证的开发者。 先验证普通原请求,再回到同一Todo的关联证据恢复时,旧fixture残留null任务身份而被页面正确拒绝;恢复原Todo验收基线后,原来的关联恢复与缺失独立验收提示可再次被完整验证。 本头恢复了这条稳定浏览器回归的原始验证对象,并保留错版本拒绝、证据失联清除、恢复、分页、390px和禁止新增执行的全部断言。 该PR仅修复测试数据污染,不修改产品组件、HTTP契约、身份判断、权限、默认行为、等待上限或真实模型验收。
改动思路 / Approach
修复放在已有smoke的局部fixture切换,保留生产owner及独立负例,不增加机制。仅恢复既有Todo验证主体;生产行为、权限、默认值和等待预算不变。前面的普通原请求案例把验收来源改为 request_validation,其 todo_id 为 null;而 GoalTeamEpisode.trace 必须把后续读回与当前 Todo 的 operation/request/Agent/产物准确绑定。直接回到同文件已有 currentValidation,比延长等待、删断言、给产品加fallback或再造fixture更合适;此次仍保留故意错版本,未改变任何预期结果。
具体改动 / Changes
关键代码讲解
currentValidation(line57)保留原 Todo 验收来源、时间和两份产物版本,是后续独立案例的既有基线。line103 的 validation 重建改为展开这份基线;前一请求验收案例自身未改,report.json 的 f-digest 仍用于证明另一版本不能成为当前检查记录。随后原 recheck、核心失联/恢复、关联读回、独立验收缺口和对照选择断言全部实际运行。
规范为 docs/reference/local-delegation.md,固定 revision 652f503842609e948e8ff832ae3977f23f79f28d:exact-version 对应准确版本及缺失检查记录的正反例;independent-gap 对应“任务接受/采用不能代替独立验收”;reader-recovery 对应核心撤回、下游失联仍保留当前纠偏和显式恢复。三项均 implemented。净diff仅此smoke的2增1删,产品组件零变化;复用现有来源标识,无新vocabulary。
对主干的风险 / Risks
主要风险是为了通过测试而掩盖主体或产物不匹配。本头保持原产品精确匹配,错版本仍要求时间/版本记录缺失,失联仍撤回对应证据,恢复仍核对原主体,且没有放宽超时或任何断言。PASS:exact head 完整 packaged team-evidence-return 与相邻 team-feedback-recovery 均通过;node syntax、RFC bilingual、diff hygiene及4项直接/5项选中premerge检查通过,零失败、跳过与人工hold。所有检查使用隔离HOME;未查询CI。 相邻反馈恢复也在同样隔离环境完整通过;这与仅挑选一个happy path不同。原基线的line133失败保留为fixture污染的实际观察,不改写成通过;#7599的委派搜索与#7604的其他工作未复制进来。
我的整体评价 / Verdict
APPROVE,范围完整且可独立回退。长期Agent效果不适用于这项测试修复;用户实际页面及操作保持原样。净diff仅改变smoke中验证对象的展开源和注释,没有渲染、布局、文案或首屏变化。真实模型纠偏和已安装Native App仍不由合成浏览器fixture证明。这个小修复恢复既有回归的价值,不产生新的用户配置或产品兼容成本;整版发布的后续门仍独立完成。
English verdict: APPROVE f869d7b500f82a26e5a6b1341abd140c681d8a07 — restore the original Todo validation subject without weakening version, recovery or no-execution assertions; packaged positive/negative journeys and local premerge checks passed. CI was not consulted.
Summary
Failure and ownership
team-evidence-return-smoke.mjsfirst replacesvalidationwith a request-level fixture whosetodo_idis null. The later linked-recovery case reused that mutated object, so the component correctly rejected the evidence revision and the expected verifier-gap text never appeared. The same timeout at line 133 failed both #7603'schat-bundle-browser (2)job and its packagedRelease Artifacts / buildjob.This PR extracts only the second, team-evidence-specific commit from #7604 onto current
main@652f503842609e948e8ff832ae3977f23f79f28d. It intentionally excludes #7604's delegation-search and team-feedback fixture changes; #7599 already owns the delegation-search fix, while the remaining team-feedback isolation stays with #7604's owner.Validation
Qualify packaged team evidence and feedback recoverynpm run build:chat: passed locallyteam-evidence-return-smoke.mjs: passed locally through checked outputs, linked recovery, evidence loss/revocation/restoration, pagination, mobile and no-execution assertionsnode --check apps/presentation/dashboard/smoke/team-evidence-return-smoke.mjs: passedgit diff --check: passedThe repository's POSIX-style combined npm script cannot be invoked directly by Windows
cmd; its unchanged team-feedback half also observes this machine's pre-existing dual-default-runtime conflict. Neither condition is caused or masked by this one-file change. Other shared matrix jobs remain pending.No merge is requested by this submission.