c002b6fbe5
The gateway sent only an 80-char preview (context) for a tool call. The desktop rebuilds the expanded tool row from the args of the part. When the args were absent, the row showed the preview, and long commands ended in '...' after the user expanded them. Two paths had this fault: - tool.start: the payload had no args until tool.complete, so the expanded row was truncated while the tool ran. Now tool.start ships the args, the same as tool.complete already does. - _history_to_messages: the projection read the full arguments, then discarded them. Hydration from this projection (watch windows, compress, branch, seeded create) kept only the preview, so the truncation was permanent. Now tool rows carry the args. This projection is the display view of the transcript — each renderer decides what to paint, and the preview stays for collapsed titles. The DB rows do not change: the args already persist in tool_calls.