{"version":"2.1.275","anchor":"async-subagent-stall-watchdog-can-now-park-instead-of-abor","canonical_anchor":"async-subagent-stall-watchdog-can-now-park-instead-of-abor","heading":"Stalled background subagents can now be 'parked' instead of aborted","tier":"soon","area":"Subagents","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.275\/e\/async-subagent-stall-watchdog-can-now-park-instead-of-abor","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.275","markdown":"### Stalled background subagents can now be 'parked' instead of aborted\n\nA stalled async subagent can now be parked with a partial result instead of always being aborted\n\n**What**\n\n- When an async (background) subagent's stall watchdog fires, and the subagent has produced at least one assistant message, the run can now be marked \"parked\" instead of always being hard-aborted with a \"stall watchdog fired\" error.\n\n- Parking synthesizes a completion from the transcript produced so far, injects a message, clears any in-flight tool-use IDs, and finalizes the run with a summary and usage info.\n\n- This behavior is gated behind an internal flag (`tengu_zinc_harbor`) and emits a `subagent_park` telemetry event.\n\n**Why** Previously a stalled background subagent always failed outright, discarding any partial progress. Parking preserves whatever work the subagent already did instead of throwing it away.\n\n- Flag `tengu_zinc_harbor`: Off in both readings (read for one account on one subscription tier against v2.1.275; this account: off, anonymous baseline: off, compiled default: off) These values were read against a different version of Claude Code, so treat them as the nearest reading available instead of one taken on this release.\n- Area: Subagents\n- Tier: Nothing to try yet\n- Useful: 3\/5\n- Signal: 3\/5\n- Present in the build but not switched on"}