mirror of
https://github.com/HappyLifeOk/cc-3-8-x-mcp.git
synced 2026-08-20 13:37:13 +00:00
[cli] 修复: dry-run diff 数组长度变化误报为 index 处置 null
This commit is contained in:
@@ -39,6 +39,13 @@ function diffObject(a, b, prefix, out) {
|
|||||||
out[prefix || '<root>'] = [a, b];
|
out[prefix || '<root>'] = [a, b];
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
// 数组长度不同:整数组替换。按 index 递归会把"数组截断/扩展"误报成
|
||||||
|
// "该位置变 undefined",JSON 序列化时 undefined → null,看上去像被置空了
|
||||||
|
// 一个 null 槽位(例:[x] → [] 误报成 ".0: [x, null]")。
|
||||||
|
if (Array.isArray(a) && Array.isArray(b) && a.length !== b.length) {
|
||||||
|
out[prefix || '<root>'] = [a, b];
|
||||||
|
return;
|
||||||
|
}
|
||||||
const keys = new Set([...Object.keys(a), ...Object.keys(b)]);
|
const keys = new Set([...Object.keys(a), ...Object.keys(b)]);
|
||||||
for (const k of keys) {
|
for (const k of keys) {
|
||||||
const av = a[k];
|
const av = a[k];
|
||||||
|
|||||||
Reference in New Issue
Block a user