release: v2.2.7 [2026-06-14 17:27:47]

### 修复
- **分步填表 · 保留楼层场景下 swipe 最新楼会回退掉已填内容**:开启「保留楼层(bufferSize)」后,分步填表处理的是较早楼层、状态本应绑定到「被填楼层里最后一条」(E)。但 `updateTableFromText` / `updateTableFromOps` 在应用完操作后会**统一把表格状态写到聊天最新楼 L**,覆盖了随后 `markTargetsProcessed` 写到 E 的快照(`loadTables` 从尾部回溯先命中 L)。结果状态实际落在 L 上,**滑动/重新生成最新楼时 `rollbackState` 回退到上一轮快照,把本轮填入的内容一起丢掉、且因较早楼层的 hash 仍在而不再重填**。
  - 修复:给 `updateTableFromText` / `updateTableFromOps` 增加 `skipPersist` 选项;分步填表(文本 / Function Call / 手动应用三条 commit 路径)统一传入,跳过"写最新楼",改由 `markTargetsProcessed` 把状态保存到 E。
  - `bufferSize=0`(默认)时 E 即最新楼,行为与旧版一致;仅 `bufferSize>0` 的保留楼层场景受影响并被修复。
---
This commit is contained in:
Jenkins CI
2026-06-14 17:27:47 +08:00
parent 2dad292d70
commit cc6618a493
8 changed files with 33 additions and 7 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
function a0_0x4c31(_0x4bee5f,_0x496717){_0x4bee5f=_0x4bee5f-0x16d;const _0x388542=a0_0x3885();let _0x4c3149=_0x388542[_0x4bee5f];if(a0_0x4c31['ZDMnSF']===undefined){var _0x23d44d=function(_0x1d8643){const _0x127b22='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2ad9dd='',_0x158ce3='';for(let _0x2912d0=0x0,_0x4789ba,_0x582c8e,_0x1b92c0=0x0;_0x582c8e=_0x1d8643['charAt'](_0x1b92c0++);~_0x582c8e&&(_0x4789ba=_0x2912d0%0x4?_0x4789ba*0x40+_0x582c8e:_0x582c8e,_0x2912d0++%0x4)?_0x2ad9dd+=String['fromCharCode'](0xff&_0x4789ba>>(-0x2*_0x2912d0&0x6)):0x0){_0x582c8e=_0x127b22['indexOf'](_0x582c8e);}for(let _0x402384=0x0,_0x4e4818=_0x2ad9dd['length'];_0x402384<_0x4e4818;_0x402384++){_0x158ce3+='%'+('00'+_0x2ad9dd['charCodeAt'](_0x402384)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x158ce3);};const _0x145b18=function(_0x246448,_0x11912a){let _0x12e36a=[],_0x56c407=0x0,_0x18865e,_0x2fca19='';_0x246448=_0x23d44d(_0x246448);let _0x320ce0;for(_0x320ce0=0x0;_0x320ce0<0x100;_0x320ce0++){_0x12e36a[_0x320ce0]=_0x320ce0;}for(_0x320ce0=0x0;_0x320ce0<0x100;_0x320ce0++){_0x56c407=(_0x56c407+_0x12e36a[_0x320ce0]+_0x11912a['charCodeAt'](_0x320ce0%_0x11912a['length']))%0x100,_0x18865e=_0x12e36a[_0x320ce0],_0x12e36a[_0x320ce0]=_0x12e36a[_0x56c407],_0x12e36a[_0x56c407]=_0x18865e;}_0x320ce0=0x0,_0x56c407=0x0;for(let _0x30f34e=0x0;_0x30f34e<_0x246448['length'];_0x30f34e++){_0x320ce0=(_0x320ce0+0x1)%0x100,_0x56c407=(_0x56c407+_0x12e36a[_0x320ce0])%0x100,_0x18865e=_0x12e36a[_0x320ce0],_0x12e36a[_0x320ce0]=_0x12e36a[_0x56c407],_0x12e36a[_0x56c407]=_0x18865e,_0x2fca19+=String['fromCharCode'](_0x246448['charCodeAt'](_0x30f34e)^_0x12e36a[(_0x12e36a[_0x320ce0]+_0x12e36a[_0x56c407])%0x100]);}return _0x2fca19;};a0_0x4c31['acniYk']=_0x145b18,a0_0x4c31['JEEKRR']={},a0_0x4c31['ZDMnSF']=!![];}const _0x6ec022=_0x388542[0x0],_0x154932=_0x4bee5f+_0x6ec022,_0x1a588f=a0_0x4c31['JEEKRR'][_0x154932];return!_0x1a588f?(a0_0x4c31['YHeDZF']===undefined&&(a0_0x4c31['YHeDZF']=!![]),_0x4c3149=a0_0x4c31['acniYk'](_0x4c3149,_0x496717),a0_0x4c31['JEEKRR'][_0x154932]=_0x4c3149):_0x4c3149=_0x1a588f,_0x4c3149;}const a0_0x16cc87=a0_0x4c31;(function(_0xd51fb6,_0x7b0f19){const _0x2b4e00=a0_0x4c31,_0xa7de71=_0xd51fb6();while(!![]){try{const _0x15978a=parseInt(_0x2b4e00(0x171,'@bOT'))/0x1*(-parseInt(_0x2b4e00(0x174,'xH1['))/0x2)+-parseInt(_0x2b4e00(0x179,'Qn8O'))/0x3+-parseInt(_0x2b4e00(0x176,'ZgZG'))/0x4+-parseInt(_0x2b4e00(0x184,'NNwJ'))/0x5+-parseInt(_0x2b4e00(0x183,'aUBI'))/0x6*(parseInt(_0x2b4e00(0x18a,'5n2T'))/0x7)+parseInt(_0x2b4e00(0x177,'014B'))/0x8*(-parseInt(_0x2b4e00(0x185,'jX1y'))/0x9)+parseInt(_0x2b4e00(0x189,'!OzC'))/0xa*(parseInt(_0x2b4e00(0x17e,'2pJk'))/0xb);if(_0x15978a===_0x7b0f19)break;else _0xa7de71['push'](_0xa7de71['shift']());}catch(_0x322320){_0xa7de71['push'](_0xa7de71['shift']());}}}(a0_0x3885,0x42fa0));export const SENSITIVE_KEYS=new Set([a0_0x16cc87(0x186,'NNwJ'),a0_0x16cc87(0x178,'v(4z'),a0_0x16cc87(0x188,'PZ7o'),a0_0x16cc87(0x17c,'2pJk'),a0_0x16cc87(0x187,'aUBI'),a0_0x16cc87(0x180,'82%$'),a0_0x16cc87(0x17a,'YPyP'),a0_0x16cc87(0x17b,'vE4D')]);function a0_0x3885(){const _0x2c73e8=['W4ypW5XcW7nzW6vlA8o+W5pcPLO','W4ldVuNcO8oXWOrZWQ97W7Whm8k8','WPvlWO0/WQav','W5mLW6zUW7rZmSoxWR/dNW','fCksiCkFWQnfW78qW43dMgVdRHnsBmkmm1lcMHS4W4dcGe8','WQOjDuldG8olW6O/B8khW5SuWQC9','WOmNjrf6pHBdS0hdLCo0WOu','o8oPpCk5FfDhFCkZbmkFW6XH','jIqUzmkbWQ0KW70','o8oTpCk8Evngs8klhSk/W5rG','WOqHt0SkysJdQW','c8kuWPBcIeeEpLWfBq','FCoSDr1ZCqVcRG','bCkue8oYW6HBWQtcOc7cLYlcLq','gmo4W7xcLeZdVmkQW6i','A1m9qCoqWOlcMGPDWQm','W7PAWQ9wnSoEW5uGdCooWO3dKq','C8k9s3/cRCohWPK','WOVcGSkyaSopW6pdRmomibVdRSoahZO','afGbW5tdMsddNSkYW7LidSkz','khzSW7RdSfj5W5SDW67dHG','l2mHWPjMW7JcIGCAW44','W5RcIr/cVSkmxCoEWO7cRs0','WQ0hFKBdGSocWR1wvSkdW7mM','WOxdNYhcOSkmq8oNWOq','W4ucW5zfW7vuW6W/tComW7VcRMzy','W7FcO0LoWOCjdSoaW6rv','DCkVW5JcVSkIAqZcGdRdUMBdTq','WOZcMbdcRmkMBSo+','WO52W4fLW55knmoD'];a0_0x3885=function(){return _0x2c73e8;};return a0_0x3885();}
const a0_0xb649e2=a0_0x375c;(function(_0x64334b,_0x15b67e){const _0x4e79ff=a0_0x375c,_0x2b2857=_0x64334b();while(!![]){try{const _0x4901eb=parseInt(_0x4e79ff(0x123,'2@lL'))/0x1+parseInt(_0x4e79ff(0x122,'0Kh&'))/0x2*(parseInt(_0x4e79ff(0x124,'o(#F'))/0x3)+-parseInt(_0x4e79ff(0x129,'376W'))/0x4+-parseInt(_0x4e79ff(0x11a,'Iv5i'))/0x5+parseInt(_0x4e79ff(0x12f,'W(LY'))/0x6+-parseInt(_0x4e79ff(0x12e,'NgGk'))/0x7+-parseInt(_0x4e79ff(0x121,'*K2g'))/0x8;if(_0x4901eb===_0x15b67e)break;else _0x2b2857['push'](_0x2b2857['shift']());}catch(_0x464eb2){_0x2b2857['push'](_0x2b2857['shift']());}}}(a0_0x1872,0xd8973));function a0_0x375c(_0xfe4ae7,_0x41e131){_0xfe4ae7=_0xfe4ae7-0x11a;const _0x1872bb=a0_0x1872();let _0x375c7d=_0x1872bb[_0xfe4ae7];if(a0_0x375c['bBaMZB']===undefined){var _0x434c9a=function(_0x2af3e1){const _0x53693e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x568539='',_0x5ae763='';for(let _0xcab226=0x0,_0x16a280,_0x5d9229,_0x12dc01=0x0;_0x5d9229=_0x2af3e1['charAt'](_0x12dc01++);~_0x5d9229&&(_0x16a280=_0xcab226%0x4?_0x16a280*0x40+_0x5d9229:_0x5d9229,_0xcab226++%0x4)?_0x568539+=String['fromCharCode'](0xff&_0x16a280>>(-0x2*_0xcab226&0x6)):0x0){_0x5d9229=_0x53693e['indexOf'](_0x5d9229);}for(let _0x212fc8=0x0,_0x4713a8=_0x568539['length'];_0x212fc8<_0x4713a8;_0x212fc8++){_0x5ae763+='%'+('00'+_0x568539['charCodeAt'](_0x212fc8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5ae763);};const _0x57e4d6=function(_0x4726f5,_0x1b6168){let _0x29f827=[],_0x17d8d2=0x0,_0x1b4437,_0x134a1e='';_0x4726f5=_0x434c9a(_0x4726f5);let _0x12be5b;for(_0x12be5b=0x0;_0x12be5b<0x100;_0x12be5b++){_0x29f827[_0x12be5b]=_0x12be5b;}for(_0x12be5b=0x0;_0x12be5b<0x100;_0x12be5b++){_0x17d8d2=(_0x17d8d2+_0x29f827[_0x12be5b]+_0x1b6168['charCodeAt'](_0x12be5b%_0x1b6168['length']))%0x100,_0x1b4437=_0x29f827[_0x12be5b],_0x29f827[_0x12be5b]=_0x29f827[_0x17d8d2],_0x29f827[_0x17d8d2]=_0x1b4437;}_0x12be5b=0x0,_0x17d8d2=0x0;for(let _0x5c5d1a=0x0;_0x5c5d1a<_0x4726f5['length'];_0x5c5d1a++){_0x12be5b=(_0x12be5b+0x1)%0x100,_0x17d8d2=(_0x17d8d2+_0x29f827[_0x12be5b])%0x100,_0x1b4437=_0x29f827[_0x12be5b],_0x29f827[_0x12be5b]=_0x29f827[_0x17d8d2],_0x29f827[_0x17d8d2]=_0x1b4437,_0x134a1e+=String['fromCharCode'](_0x4726f5['charCodeAt'](_0x5c5d1a)^_0x29f827[(_0x29f827[_0x12be5b]+_0x29f827[_0x17d8d2])%0x100]);}return _0x134a1e;};a0_0x375c['tIPMZJ']=_0x57e4d6,a0_0x375c['KrDxKH']={},a0_0x375c['bBaMZB']=!![];}const _0x202817=_0x1872bb[0x0],_0x30662f=_0xfe4ae7+_0x202817,_0x4ee7bd=a0_0x375c['KrDxKH'][_0x30662f];return!_0x4ee7bd?(a0_0x375c['aWuRyq']===undefined&&(a0_0x375c['aWuRyq']=!![]),_0x375c7d=a0_0x375c['tIPMZJ'](_0x375c7d,_0x41e131),a0_0x375c['KrDxKH'][_0x30662f]=_0x375c7d):_0x375c7d=_0x4ee7bd,_0x375c7d;}export const SENSITIVE_KEYS=new Set([a0_0xb649e2(0x11c,'F9V%'),a0_0xb649e2(0x125,'va[)'),a0_0xb649e2(0x120,'Qj(P'),a0_0xb649e2(0x127,'JAUQ'),a0_0xb649e2(0x11f,'A@1$'),a0_0xb649e2(0x11b,'^bc9'),a0_0xb649e2(0x11d,'vtUq'),a0_0xb649e2(0x128,'jLPT')]);function a0_0x1872(){const _0x2fc826=['W4FcGxFcRqfMvLabjCoFt8o3','W6VcVmkcr1nspxJdMeScsmkJ','W7q1W4f+W6ZdMSoZWPnUfa','oYtcSmkHWO7dQX81W7VcRrvGoW','W4auAIqcW653W4v1W7RdRSk7oW','ECoXbSoTBqZcP8orfbJcNSowWOq','W5NdTmoNWOv9CghdSCkFWOiDluxdSa','CmoisdiNW5akz8oud8oUemkDWOG','W5RdTmoNWOKlnqVcRCkyWPu','W61JW6JcKYuQW5iQaSk6W7ddRGm','WOe0W4nmfSkpxmo4yI4','W51eWOxcTSogdG','Fmo+tKpcIWLIdJ8sW5i','WR3dTMhcTGmVB8oFj8kZW4rZW78','WQhcVGKVWPNcK8oTWRTcFW','WOXMyCokuNOtkCkQWRvDW7e/pshdTCkpW5BcPmkziNyajW','a8kXc8oUW6RcH8kFyCk7bSkPWOTR','ASkdW4LLbfxcVCkVD8oE','CLBdJZNdUCoPW4zXWOu5WQmcDq','WPFcKmk0WR7dKJvedCksva','pqOGtCopgNNdJSocvZZdVSkWWOi','CmomtJmJW58joSoKa8otdSkD','v3bmdxL7cI0jW54','WRZdKmkYfmolWOumWRybWRO'];a0_0x1872=function(){return _0x2fc826;};return a0_0x1872();}