fix(assistant): readable cards for any tool, and the CI round

- A card for a tool without one of its own names what it works on: the place
  of an assignment, the day, the note, the booking; its arguments sit under
  the labels the other cards use, a new order reads as the names in order.
  28 frequent tools carry their own action name in every language.
- The server's own steps without a card still refuse, as before.
- Tests: the rate limit is asked one request after another, the mention list
  closes on the caret move a browser reports, the place factory hands its
  category over as a plain id, eleven files formatted.
This commit is contained in:
Maurice
2026-10-21 22:28:34 +02:00
parent 4406d5085f
commit c37d3f773e
47 changed files with 1019 additions and 76 deletions
+3 -1
View File
@@ -42,7 +42,9 @@ const REMOVE: AssistantChangeEffect = { ...MOVE, kind: 'remove', fromDayId: null
type Approval = { approved?: boolean; resolution?: 'cancelled' | 'expired' };
function call(toolCallId: string, approval: Approval, result?: unknown): AssistantMessagePart[] {
return [{ type: 'tool-call', toolCallId, toolName: 'x', args: {}, approval: { id: toolCallId, ...approval }, result }];
return [
{ type: 'tool-call', toolCallId, toolName: 'x', args: {}, approval: { id: toolCallId, ...approval }, result },
];
}
function change(toolCallId: string, effect: AssistantChangeEffect): AssistantMessagePart {