{"version":"2.1.247","anchor":"background-task-reports-carry-type-owner-and-an-ambient-flag","canonical_anchor":"background-task-reports-carry-type-owner-and-an-ambient-flag","heading":"Background task reports carry type, owner and an ambient flag","tier":"notice","area":"Background Tasks","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.247\/e\/background-task-reports-carry-type-owner-and-an-ambient-flag","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.247","markdown":"### Background task reports carry type, owner and an ambient flag\n\nTask reports now say what kind of task it is, who owns it, and whether it's housekeeping.\n\n**What**\n\nEvery background task reported through stream-JSON and SDK output now describes itself more fully: what kind of task it is, which agent owns it, what shell a local bash task runs under, and whether it is an ambient housekeeping task rather than something the user started. Ambient tasks can be kept out of the transcript while still showing up in task lists, and a change to that flag now counts as a change in its own right, so listings refresh when it flips rather than only when tasks join or leave the set.\n\n**Details**\n\n- The report gained the fields `task_type`, `owner_agent_id`, `shell_kind`, `ambient` and `observer_owned`.\n- `owner_agent_id` identifies the owning agent for bash, MCP and websocket monitor tasks.\n- The SDK schema gained an optional boolean `ambient` on the task started, task updated and task list frames.\n- Because `ambient` is optional, tasks that do not set it behave exactly as before.\n- Consumers that rebuild their whole task set from each payload will now see emissions where nothing was added or removed, only an existing task's `ambient` flag changed.\n\n**Evidence**\n\n`or an entry's \\`ambient\\` flag flips`, `owner_agent_id`\n\n- Area: Background Tasks\n- Tier: You'll notice\n- Useful: 3\/5\n- Signal: 3\/5"}