fix(telegram): self-explanatory permission denial — agents treat unexplained denials as bugs and probe workarounds - #1479
Conversation
…treat it as policy, not breakage
|
Thanks @anikinsasha — good field report, and the reasoning is right: an unexplained denial reads to an agent as breakage, and it burns time probing workarounds against a boundary that's working as intended. Ported into source. The public repo is generated from a private tree at release, so I applied your one-line change directly to the source (Skipped the Closing since it's in the source now; ships next release. Credited in the commit. And noted the handle rename — same account, thanks for the continued fixes. |
A field report turned one-liner. When a tool call gets denied without explanation, an agent reads the denial as breakage and starts probing workarounds — alternate tools,
sedbypasses, retry loops. We watched a Telegram-side session do exactly this for 15 minutes against a working permission boundary before parking the task (incident documented in my #1143 comment thread).A denial that explains itself converts the boundary from an obstacle the agent fights into an instruction it follows. This enriches the
canUseTooldeny message so the model is told, at the moment of failure: this is policy, working as intended — don't route around it, surface it to the principal.No behavior change — nothing newly allowed or denied, message text only.
(Housekeeping note: I'm the author of #1457/#1458/#1459 — GitHub handle renamed
anikin-xyz→anikinsasha, same account.)