#669·flue

Projected parts drop chunk timestamps, so a UI cannot show how long reasoning took

Author: shoot16625Created Sep 11, 2026Updated Sep 11, 2026

Version: @flue/runtime 2.0.4 (source checked). Cloudflare target.

Summary

#438 put server-authored timestamp on conversation stream chunks, but the parts projected by @flue/sdk / @flue/react do not carry it. A reasoning part is { type: 'reasoning', text, state } — no time of any kind.

Impact

Our chat shows elapsed time on tool rows but cannot on thinking rows, so a long reasoning block is just an animated shimmer with no indication of whether it has been 5 seconds or 4 minutes. The client can stamp Date.now() when it first sees a part, but that is the client's clock and it is wrong after a reload — a replayed history renders every part as if it happened now.

Proposal

Project the chunk's timestamp onto the part (first-seen and completed would both be useful), or expose the raw chunk timestamps alongside the projection so a consumer can derive durations that survive a reload.