{"version":"2.1.235","anchor":"orphaned-permission-and-deferred-tool-resume-moved-into-one","canonical_anchor":"orphaned-permission-and-deferred-tool-resume-moved-into-one","heading":"Orphaned permission and deferred tool resume moved into one shared generator","tier":"internal","area":"Permissions","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.235\/e\/orphaned-permission-and-deferred-tool-resume-moved-into-one","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.235","markdown":"### Orphaned permission and deferred tool resume moved into one shared generator\n\nOrphaned-permission and deferred-tool resume logic in the query loop were merged into one shared generator\n\nThe query loop previously handled two resume paths, resuming an orphaned permission request and resuming a tool deferred by a hook, as separate inline blocks each building their own early result. Both now delegate to a single shared generator that takes both candidates plus an earlyResult descriptor, so the availability check and result shaping (including the \"tool_deferred\" and \"tool_deferred_unavailable\" stop reasons) live in one place instead of two.\n\n- Area: Permissions\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 0\/5"}