You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
143 lines
6.3 KiB
143 lines
6.3 KiB
|
4 hours ago
|
{
|
||
|
|
"ts": "221152",
|
||
|
|
"console_errors": [
|
||
|
|
"Failed to load resource: the server responded with a status of 403 ()",
|
||
|
|
"Failed to load resource: the server responded with a status of 403 ()",
|
||
|
|
"Failed to load resource: the server responded with a status of 403 ()"
|
||
|
|
],
|
||
|
|
"page_errors": [],
|
||
|
|
"exempt_403": [
|
||
|
|
"Failed to load resource: the server responded with a status of 403 ()",
|
||
|
|
"Failed to load resource: the server responded with a status of 403 ()",
|
||
|
|
"Failed to load resource: the server responded with a status of 403 ()"
|
||
|
|
],
|
||
|
|
"real_console_errors": [],
|
||
|
|
"results": [
|
||
|
|
{
|
||
|
|
"step": "登录 debug/token + /auth/me",
|
||
|
|
"ok": true,
|
||
|
|
"note": ""
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "同步任务 launch(任务编号格式 + 61023 两态容忍)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "任务化契约验证:taskId=753014778993049600,taskNo=SYNC-0909-02(SYNC-MMdd-序号 ✓) 异步终态:running(75s 未终态,任务行在位即可) "
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "同步记录分页 + 开始时间倒序",
|
||
|
|
"ok": true,
|
||
|
|
"note": "rows=2 desc=True first=2026-09-09 02:00:00"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "任务详情五块结构(含 failDetails 失败明细)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "详情五块结构在位:taskNo=SYNC-0909-02,status=同步中,进度=5%,失败明细 0 条"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "同步设置回显(派生 plan/nextExecuteTime/lastModifierName)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "设置回显:autoSyncEnabled=true,dailyTime=02:00,retryIntervalMinutes=10,retryMaxTimes=2,concurrency=1 派生:当前计划=每日 02:00(运行中),下次"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "设置保存回显(interval=2 次数=3 并发=1)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "合法设置保存并回显:interval=2,次数=3,并发=1(autoSyncEnabled/dailyTime 保留原值不污染调度)"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "设置边界 61022 双路(间隔<1min / 次数<1 拒)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "61022 边界校验两路生效:间隔<1min 拒(重试间隔不能小于 1 分钟);次数<1 拒(重试次数不能小于 1 次)"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "设置还原(不污染调度原值)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "设置已还原(interval=10,次数=2,并发=1,dailyTime=02:00)"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "lastSyncTime 切表口径 + 下次执行时间推导",
|
||
|
|
"ok": true,
|
||
|
|
"note": "lastSyncTime 验证:与最新成功任务行 endTime 一致(2026-09-08 17:18:35)——切表生效 下次执行时间推导:autoSyncEnabled=true,nextExecuteTime=2026-09-10 02:00:00(推"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "AOP 写端点采集素材(建/删演示角色)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "写操作完成:建/删演示角色 e2d-日志演示角色-221152(等待采集落库后断言)"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "操作日志分页(新增/删除行命中 + 时间范围逐字段)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "AOP 采集行命中:新增行 content=/api/roles/saveOrUpdate,操作人=罗伟健,结果=成功 逐字段:今日范围 10 行 / 2000-01-01 范围 0 行(时间过滤生效)"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "登录日志「退出」行(内联埋点 + token 重铸)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "退出埋点命中:opType=退出,operatorName=罗伟健,status/result=成功,ip=116.7.105.4,opTime=2026-09-09 22:13:14 (token "
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "批量日志「导出」行(result+fileId+ZIP 魔数)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "导出留档行命中:page=线索设置,result=成功,countDetail=成功导出 1 条公海池,fileId=753015119432122368 (导出字节 4047,ZIP 魔数 ✓)"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "批量日志「导入」行(BatchResult 计数)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "导入行命中:result=成功,countDetail=成功导入 1,导入失败 0,fileId=(无失败明细→无错误报告文件,合理) BatchResult: total=1,success=1,fail=0"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "结果文件下载 /api/log/batch/file(ZIP 魔数)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "结果文件下载成功:日志行 id=753015119490842624(fileId=753015119432122368),4047 字节,ZIP 魔数 PK ✓(90 天内有效)"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "打包下载 /api/log/batch/download ids[](ZIP 魔数)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "打包下载成功:ids=[753015119490842624, 753015121080483840],3506 字节,ZIP 魔数 PK ✓"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "不存在文件 id 错误形态(40401/66001/404)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "不存在文件 id 错误形态生效:code=40401,批量操作日志不存在: 999999999999 (查无日志行→40401/HTTP404;过期→66001;行存在但无文件→66002;90 天分"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "BUDDY 三 page 权限拒绝(ADMIN 门禁)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "非管理员权限口径生效(ADMIN 门禁): page=拒绝 ✓(HTTP 403) page=拒绝 ✓(HTTP 403) page=拒绝 ✓(HTTP 403)"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "公海规则发布(部门专用)+ boundOppCount 基线",
|
||
|
|
"ok": true,
|
||
|
|
"note": "规则就绪:id=753015126608576512,name=e2d-绑定数规则-221152,scope=2(部门专用),deptIds=[744841292348915712] boundOppCount 基线 base=11571(本轮新建发布) 后续"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "商机 A → boundOppCount=base+1(match 语义)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "商机 A(id=753015130098237440)→ boundOppCount=11572(base+1 ✓,match 语义生效)"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "商机 B → boundOppCount=base+2(动态统计非快照)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "商机 B(id=753015131109064704)→ boundOppCount=11573(base+2 ✓,动态统计非快照)"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "默认规则兜底口径(无默认规则降级提示)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "当前无发布中默认规则 → 兜底口径断言降级为提示(口径已由 crm-rule 单测覆盖:默认计数=不命中发布中专用规则的商机数,排除集=发布中专用规则部门并集)"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "清理(商机 close 正门 + 规则停用)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "清理完成:关停演示商机 2/2(close 终态;已关闭仍计数,仅 opp_status=5 排除——增量口径跨轮安全);演示规则已停用(发布行留存可辨)"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "网络层零旧契约形态",
|
||
|
|
"ok": true,
|
||
|
|
"note": "bad_method=[] old_style=[] (共84请求)"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"step": "console/page error 双零(预期 403 拒绝豁免)",
|
||
|
|
"ok": true,
|
||
|
|
"note": "raw_console=3 exempt_403=3 real=0 page_errors=0"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"all_pass": true
|
||
|
|
}
|