{"version":"2.1.248","anchor":"remote-tool-calls-can-be-aborted-with-a-new-sync-failed-outc","canonical_anchor":"remote-tool-calls-can-be-aborted-with-a-new-sync-failed-outc","heading":"Remote tool calls can be aborted with a new sync_failed outcome","tier":"notice","area":"File Sync","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.248\/e\/remote-tool-calls-can-be-aborted-with-a-new-sync-failed-outc","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.248","markdown":"### Remote tool calls can be aborted with a new `sync_failed` outcome\n\nRemote tool calls now run a sync preflight and abort with sync_failed if files aren't caught up.\n\n**What**\n\nThe path that validates a remote tool call, asks for permission and then dispatches it now runs a file-sync preflight first. A hold aborts the call with an error carrying code `sync_failed` rather than contacting the host, and `sync_failed` was added to the outcome reporting for forwarded remote tools.\n\n**Details**\n\n- The preflight returns go, go with a note (handed to a new callback the caller supplies), or hold.\n- Results coming back can now carry sync information, applied on the receiving side when present.\n- Nothing gates this, but the preflight returns go immediately when no sync engine is attached.\n\n**Evidence**\n\n`code: \"sync_failed\",`\n\n- Area: File Sync\n- Tier: You'll notice\n- Useful: 3\/5\n- Signal: 3\/5"}