Commit a8fb97d
fix(core): fail closed on zero inode file cache (QwenLM#8290)
* fix(core): fail closed on zero inode file cache
* chore(core): address zero inode review suggestions
* fix(core): reject zero inode transcript identity
* fix(core): distinguish unverifiable file identity
* fix(core): keep zero-inode fallout out of transcript pagination
Addresses the review on QwenLM#8290.
- reader: restore the plain inode comparison and record why the
transcript reader does not need the fail-closed treatment. It only
compares one session's path against itself and the cursor already
carries a content-derived proof, whereas the cache and the lease
compare identities that can belong to different files. Refusing zero
there made readPage reject the very cursor it had just issued, so
pagination died past page one.
- lease: probe the transcript filesystem during acquire so a brand-new
session on such a filesystem fails up front instead of going quiet at
the first append.
- share hasVerifiableInode() across the three call sites and handle the
bigint stat shape.
- cover the PRIOR_READ_VERIFICATION_FAILED branches in edit, write-file
and notebook-edit.
---------
Co-authored-by: 冼健聪 <mark.xian@evenrealities.com>
Co-authored-by: Shaojin Wen <shaojin.wensj@alibaba-inc.com>1 parent a3a840b commit a8fb97d
12 files changed
Lines changed: 562 additions & 52 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
38 | 38 | | |
39 | 39 | | |
40 | 40 | | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
41 | 59 | | |
42 | 60 | | |
43 | 61 | | |
| |||
87 | 105 | | |
88 | 106 | | |
89 | 107 | | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
90 | 121 | | |
91 | 122 | | |
92 | 123 | | |
| |||
125 | 156 | | |
126 | 157 | | |
127 | 158 | | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
128 | 186 | | |
129 | 187 | | |
130 | 188 | | |
| |||
262 | 320 | | |
263 | 321 | | |
264 | 322 | | |
| 323 | + | |
| 324 | + | |
| 325 | + | |
| 326 | + | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
265 | 334 | | |
266 | 335 | | |
267 | 336 | | |
| |||
679 | 748 | | |
680 | 749 | | |
681 | 750 | | |
682 | | - | |
| 751 | + | |
683 | 752 | | |
684 | 753 | | |
685 | 754 | | |
686 | 755 | | |
687 | 756 | | |
688 | 757 | | |
689 | 758 | | |
690 | | - | |
691 | | - | |
| 759 | + | |
| 760 | + | |
692 | 761 | | |
693 | | - | |
694 | | - | |
| 762 | + | |
| 763 | + | |
695 | 764 | | |
696 | 765 | | |
697 | 766 | | |
698 | 767 | | |
699 | 768 | | |
700 | | - | |
| 769 | + | |
701 | 770 | | |
702 | 771 | | |
703 | 772 | | |
| |||
709 | 778 | | |
710 | 779 | | |
711 | 780 | | |
712 | | - | |
| 781 | + | |
713 | 782 | | |
714 | 783 | | |
715 | 784 | | |
716 | 785 | | |
717 | 786 | | |
718 | 787 | | |
719 | | - | |
| 788 | + | |
720 | 789 | | |
721 | 790 | | |
722 | | - | |
| 791 | + | |
723 | 792 | | |
724 | 793 | | |
725 | 794 | | |
| |||
734 | 803 | | |
735 | 804 | | |
736 | 805 | | |
737 | | - | |
| 806 | + | |
738 | 807 | | |
739 | 808 | | |
740 | 809 | | |
| |||
812 | 881 | | |
813 | 882 | | |
814 | 883 | | |
815 | | - | |
| 884 | + | |
816 | 885 | | |
817 | 886 | | |
818 | 887 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
| 9 | + | |
9 | 10 | | |
10 | 11 | | |
11 | 12 | | |
| |||
25 | 26 | | |
26 | 27 | | |
27 | 28 | | |
28 | | - | |
29 | | - | |
30 | | - | |
31 | | - | |
32 | | - | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
33 | 46 | | |
34 | 47 | | |
35 | 48 | | |
| |||
131 | 144 | | |
132 | 145 | | |
133 | 146 | | |
| 147 | + | |
134 | 148 | | |
135 | 149 | | |
136 | 150 | | |
| |||
142 | 156 | | |
143 | 157 | | |
144 | 158 | | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
145 | 164 | | |
146 | 165 | | |
147 | 166 | | |
| |||
180 | 199 | | |
181 | 200 | | |
182 | 201 | | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
183 | 207 | | |
184 | 208 | | |
185 | 209 | | |
186 | 210 | | |
187 | 211 | | |
188 | 212 | | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
189 | 222 | | |
190 | 223 | | |
191 | 224 | | |
| |||
238 | 271 | | |
239 | 272 | | |
240 | 273 | | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
241 | 277 | | |
242 | 278 | | |
243 | 279 | | |
244 | 280 | | |
245 | 281 | | |
246 | 282 | | |
247 | | - | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
248 | 286 | | |
249 | 287 | | |
250 | 288 | | |
| |||
259 | 297 | | |
260 | 298 | | |
261 | 299 | | |
| 300 | + | |
| 301 | + | |
262 | 302 | | |
263 | 303 | | |
264 | 304 | | |
| |||
273 | 313 | | |
274 | 314 | | |
275 | 315 | | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
| 319 | + | |
276 | 320 | | |
277 | 321 | | |
278 | 322 | | |
| |||
301 | 345 | | |
302 | 346 | | |
303 | 347 | | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
304 | 352 | | |
305 | 353 | | |
306 | 354 | | |
| |||
311 | 359 | | |
312 | 360 | | |
313 | 361 | | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
314 | 366 | | |
315 | 367 | | |
316 | 368 | | |
| |||
397 | 449 | | |
398 | 450 | | |
399 | 451 | | |
400 | | - | |
401 | | - | |
| 452 | + | |
| 453 | + | |
| 454 | + | |
| 455 | + | |
| 456 | + | |
| 457 | + | |
| 458 | + | |
| 459 | + | |
402 | 460 | | |
403 | 461 | | |
404 | 462 | | |
405 | 463 | | |
406 | 464 | | |
407 | 465 | | |
408 | 466 | | |
409 | | - | |
410 | | - | |
411 | 467 | | |
412 | 468 | | |
0 commit comments