Keep a record of each run's tool calls so bots can't claim work they never did

The wrap-up turn now gets the run's actual tool calls, each bot message
keeps them as bot_messages.tool_log, and history follows recorded bot
messages with an [App record] line. The coordinator also gets update_bot
in workspaces, so it can fill a bot's core prompt from there.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
2026-10-25 11:32:56 +01:00
co-authored by Claude Opus 5.5
parent 93896646c7
commit d7f88d8dd3
22 changed files with 293 additions and 19 deletions
+9
View File
@@ -20,6 +20,15 @@ export type HarnessToolCall = {
arguments: string;
};
/**
* One tool call a run made, and whether it went through (a result that
* isn't `Error: ...`). Names only, never arguments.
*/
export type HarnessToolUse = {
name: string;
ok: boolean;
};
export type HarnessMessage =
| { role: "system"; content: string }
| { role: "user"; content: string | HarnessContentPart[] }