Commit b20b72e
committed
fix(memory-core): strip dreaming blocks from partial reads of daily files
Previously, memory_get calls with from/lines parameters on daily memory
files (memory/YYYY-MM-DD.md) bypassed the dreaming block filter, leaking
cross-session staging data from Light Sleep and REM Sleep phases.
The fix redirects partial reads of daily files through the full-read path:
read the entire file, strip dreaming managed blocks, then slice the
requested line range from the cleaned content. This ensures line numbers
are consistent with a full read and no staging data is ever exposed.
Non-daily files continue to use the efficient streaming partial read path,
since they never contain dreaming blocks.
Daily memory files are small (a few KB) so the overhead of a full read is
negligible.
Resolves the TODO(#68367) left in the initial implementation.
Addresses review feedback on #68408.1 parent ed3bb01 commit b20b72e
2 files changed
Lines changed: 75 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3604 | 3604 | | |
3605 | 3605 | | |
3606 | 3606 | | |
| 3607 | + | |
| 3608 | + | |
| 3609 | + | |
| 3610 | + | |
| 3611 | + | |
| 3612 | + | |
| 3613 | + | |
| 3614 | + | |
| 3615 | + | |
| 3616 | + | |
| 3617 | + | |
| 3618 | + | |
| 3619 | + | |
| 3620 | + | |
| 3621 | + | |
| 3622 | + | |
| 3623 | + | |
| 3624 | + | |
| 3625 | + | |
| 3626 | + | |
| 3627 | + | |
| 3628 | + | |
| 3629 | + | |
| 3630 | + | |
| 3631 | + | |
| 3632 | + | |
| 3633 | + | |
| 3634 | + | |
| 3635 | + | |
| 3636 | + | |
| 3637 | + | |
| 3638 | + | |
| 3639 | + | |
| 3640 | + | |
| 3641 | + | |
| 3642 | + | |
| 3643 | + | |
| 3644 | + | |
| 3645 | + | |
| 3646 | + | |
| 3647 | + | |
| 3648 | + | |
| 3649 | + | |
| 3650 | + | |
| 3651 | + | |
| 3652 | + | |
| 3653 | + | |
| 3654 | + | |
| 3655 | + | |
| 3656 | + | |
| 3657 | + | |
| 3658 | + | |
| 3659 | + | |
3607 | 3660 | | |
3608 | 3661 | | |
3609 | 3662 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1208 | 1208 | | |
1209 | 1209 | | |
1210 | 1210 | | |
| 1211 | + | |
| 1212 | + | |
| 1213 | + | |
| 1214 | + | |
| 1215 | + | |
| 1216 | + | |
| 1217 | + | |
| 1218 | + | |
| 1219 | + | |
| 1220 | + | |
| 1221 | + | |
| 1222 | + | |
| 1223 | + | |
| 1224 | + | |
| 1225 | + | |
| 1226 | + | |
| 1227 | + | |
| 1228 | + | |
| 1229 | + | |
| 1230 | + | |
| 1231 | + | |
| 1232 | + | |
1211 | 1233 | | |
1212 | 1234 | | |
1213 | 1235 | | |
| |||
1216 | 1238 | | |
1217 | 1239 | | |
1218 | 1240 | | |
1219 | | - | |
1220 | | - | |
1221 | | - | |
1222 | | - | |
1223 | | - | |
1224 | 1241 | | |
1225 | 1242 | | |
1226 | 1243 | | |
| |||
0 commit comments