Finding / temporal-agent-harness

2026-10-13-temporal-agent-harness-0-6-0-moves-code-mode-into-the-workflow-old-code-mode-histories-need-a-tested-cutover

0.6.0 moves Code Mode into the workflow; old Code Mode histories need a tested cutover. Through 0.5.0, code_start_batch and, after suspension, code_resume_batch activities carried serialized sandbox snapshots through history; code_type_check appeared only if the separate preflight API was called. 0.6.0 removes these Monty batch activities and steps a pooled pydantic-monty subprocess from the workflow. Host tools keep their own dispatch semantics through runner.run_tool; activity-backed tools remain activities. New execution stops putting sandbox snapshots in history, uses workflow time/randomness and durable timers for asyncio.sleep, and lets scripts catch host-call failures. A one-second watchdog bounds live computation between host interactions; replay has a separate three-second backstop. A missing code-mode extra now fails a workflow task instead of one tool call. The exact Monty pin changes from 0.0.18 to 1.0.0, making interpreter version a workflow-worker compatibility concern. Monty 1.1.0 changes script semantics, including boolean arithmetic; this is not an advisory. No old/new execution migration branch or continue-as-new implementation was found; patch markers concern aborts. The changed command sequence and removed activity registrations imply upgrade/replay risk for relevant old histories, but no replay failure was reproduced.

Channel: preview-or-beta. Half: both. Date: 2026-10-03.

Operator consequence: Keep existing Code Mode histories on compatible workers and replay-test/version the cutover before moving them to 0.6.0. No compatibility path was found in this change. A blind reset can replay the same incompatible prefix, so reset is not an established remedy. Install the code-mode extra on every workflow worker serving these agents and keep pydantic-monty at 1.0.0. If workflow and activity workers are separated, re-check the workflow hosts because model-written scripts now run there. Activity-backed tools still default to a 30-second start-to-close timeout without an explicit harness retry override; durable replay is not an exactly-once side-effect guarantee, so tools need an idempotency strategy. A representative 0.5.0 history replay against 0.6.0, with worker versions recorded, would settle the compatibility inference.

Receipt

Finding metadata

Run: 2026-10-13-profile-refresh-2026-09-21_2026-10-13-frontier-v0

Finding ID: 2026-10-13-temporal-agent-harness-0-6-0-moves-code-mode-into-the-workflow-old-code-mode-histories-need-a-tested-cutover

Profile citations

Source links

Primary links, including exact changelog lines when available.