Project

General

Profile

缺陷 #38 » results.md

Redmine Admin, 10/31/2026 05:33 PM

 

#38 本地独立修复回归 — 2026-11-01

本地37项Pass /0Fail;未部署,原staging Fail不覆盖。 Backend候选base473cc345,source digest af64e859e8b54281a24f74b56c2185372b86fdfe31c06c7fd953e052895ce818,services SHA fb02b2b896ae61032067205a94c17cabd8fdda3ee95c96861b53812ec1fefb79,tests SHA 06758d048f77bf8ec1c49e3edae85c041ef28de0866fa440f663c262554c3cd7。执行前后全部hash一致;Backend工作区只有原owner两文件修改,QA未写产品文件。

执行时间:2026-11-01T01:31:55.087930+08:00。环境crm_backend;内存SQLite、禁repo env/网络/持久DB,使用真实Django URL→DRF APIClient→实际视图/ORM及真实xlsx生成/读取。APIClient不等于网络HTTP;force_authenticate仅临时admin,不等于密码登录或真实销售身份验收。 没有启动服务、浏览器、PG、迁移或测试站请求。

实际覆盖

影响 独立观察 结果与限制
IMP106-05-HC01 全部/a/b/c/无匹配销售 × overview/companies/monthly/collection-status,共20项JSON视图观察 双销售仅B排除:baseline公司count2、候选count1;overview每销售各1。除排除数外完整响应相同。单销售/多销售/无归属/无匹配和重复ID均纳入;金额按既有原列表分摊权重保持,未另修历史重复归属。
IMP106-05-HC03 3项monthly按公司筛选,独立9/10/12月期望与原始响应核对 每公司/每月独立去重,空月0;年范围与月范围各用真实参数,未混淆。
IMP106-05-HC02 原pair本地全部计入/全部排除 × companies/monthly,共4项 count0/2而非4,原income2000/cost600不变;70%及applicable=false/0基数正确;临时flag阶段后恢复。
IMP106-05-HC04 5种筛选 × companies-export/collection-status-export,共10项 实际返回xlsx经openpyxl读取,逐单元格与旧baseline一致;客户导出仍4列,没有排除数字列,不能宣称导出修复了不存在的字段。工作簿在内存解析,原始逐格值保留JSONL,不冒称已保存独立xlsx二进制文件。

总计37项独立参数化断言,74份candidate/baseline响应,独立规格oracle来自合成输入,不调用候选计算期望。逐条预期/实际/层级/影响/时间见case-index.json;原始数据execution-result.json、request-responses-r2-oracle-corrected.jsonl。全临时账号/角色/公司/项目/Task/Cost模型快照恢复后完全一致;每个只读视图阶段未改DB。临时测试库由finally销毁,不新建持久库或改现有业务数据。

首轮runner断言错误与纠正:execution.log及首2份响应保留。QA错误假设重复销售ID先归一化,但既有helper保留列表权重;candidate/baseline原金额相同。仅修QA oracle到既有权重,execution-r2.log通过,不计产品失败或第二修复轮。8项offline支持自检不加到37。

原环境与剩余边界

原staging #35 journal356和#38 count2失败、真实截图全部保留,测试站尚未部署候选,不能把本地Pass说成线上已修或自动Closed。旧14项/其他角色未重跑,角色未测决定不变。PG/迁移/网络HTTP/浏览器新页面/真实供应商/性能均未覆盖;纯数值修复不要求额外测试发布。开发16Pass/red3Fail只引用owner证据,不与独立37相加。AOCI既有静态索引阻断不计业务失败或新增治理。

本轮QA可交primary审收据并决定后续;无source/config/Git/部署/生产/现有账号或业务fixture操作。Redmine38/35修复验证journal及读回见本目录writeback-receipt.json。

(3-3/6)