Repository navigation
Commit 353da24
authored
fix(activity): find a chat tool call's details by its id, not its timestamp (#486)
* fix(activity): find a chat tool call's details by its id, not its timestamp
Windows' clock advances every 15.6 ms, so a tool result and the next assistant
message often share created_at. Timeline._call_arguments took the latest
assistant message at or before the result and could pick the next call's,
dropping this call's "query: ..." line from Activity. It now finds the message
that holds the call's id.
test_stop_everything_drops_calls_still_waiting killed the fake Claude Code as
soon as the process existed; it now waits until the fake has logged its run,
which comes late on Windows (claude.cmd, then cmd.exe, then Python).
Closes #485
* fix(activity): look up a call id quoted and escaped as it is stored
Review on #486: the lookup searched for the raw '"<id>"'. Tool calls are
saved with json.dumps, so an id with a character JSON escapes was never
found. Search for json.dumps(call_id) instead; the Python check after the
query still confirms the id.
The same-timestamp test now places the call a tick earlier, with its result
and the next call in the same tick, so it fails on main every time, and a
new test covers an id that JSON escapes.
Refs #4851 parent 5c7e093 commit 353da24
4 files changed
Lines changed: 47 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
335 | 335 | | |
336 | 336 | | |
337 | 337 | | |
338 | | - | |
| 338 | + | |
| 339 | + | |
339 | 340 | | |
340 | 341 | | |
341 | | - | |
| 342 | + | |
| 343 | + | |
342 | 344 | | |
343 | 345 | | |
344 | 346 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
822 | 822 | | |
823 | 823 | | |
824 | 824 | | |
825 | | - | |
826 | | - | |
| 825 | + | |
| 826 | + | |
827 | 827 | | |
828 | 828 | | |
829 | 829 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
106 | 106 | | |
107 | 107 | | |
108 | 108 | | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
109 | 122 | | |
110 | 123 | | |
111 | 124 | | |
| |||
147 | 160 | | |
148 | 161 | | |
149 | 162 | | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
150 | 189 | | |
151 | 190 | | |
152 | 191 | | |
| |||
0 commit comments