fix(providers): keep one start time per Pi tool call

Every tool lifecycle event passed the current time as `startedAt`, so each
update rewrote the start timestamp and a completed tool always rendered with
zero duration. The turn now remembers the first time it saw each
`toolCallId` and reuses it for later updates and completion.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
075d281d4eWout Stiens committed on 9/1/2026, 5:42:50 AMparentf30d33e
1 file changedLine totals unavailable