A "session limit" that counted five months
The cap was named per-session but counted every line the telemetry log had ever accumulated. Move the sliders: the left verdict is what shipped, the right is what this PR does.
before — counts the whole file
after — counts this session
Why it stayed invisible for five months
The file has a rotation mechanism, so a reader assumes the counter self-heals. It cannot:
| rotation threshold | MAX_LOG_SIZE 102400 B |
| observed line size | 108 B |
| lines before rotation fires | ~951 |
| lines before the cap denies | 50 |
Rotation is 19x out of reach. It has never once fired before a blackout and structurally cannot. The only thing that ever cleared this was a human renaming the file by hand on 2026-08-18.
The second call site
The same whole-file assumption also fed the context injected into the model on every call:
Context7: 36 queries, 4 libraries. Recent: ...
36 was a lifetime total presented as the current session's. Fixing only the cap would have left the model being told a false number, in a string that looks correct.
session= field, so they read as belonging to no session
and stop counting the moment it ships. No rotation, no manual rename. Issue
#3542.