From 60d558e9a7eb1944fc58ee88e121a5db5248a332 Mon Sep 17 00:00:00 2001 From: tanaka takashi Date: Mon, 10 Aug 2026 01:39:40 +0900 Subject: fix(agent): fail fast on sandbox policy denial Treat Policy Engine denials and UnauthorizedAccessException results as terminal tool failures by adding RetryAllowed metadata to ToolExecutionResult. Stop the Agent loop immediately after recording the denied tool result, transition the Task to failed, and run normal Task resource cleanup instead of returning the same failure to the LLM for another iteration. Correctable validation and process failures retain the existing bounded retry behavior. Expose RetryAllowed in llm.jsonl and document the fail-fast security invariant in Specifications, Design, and ImplementationPlan. Tests: Agent.Core.Tests 50/50 passed with skip 0; Release build passed with 0 warnings and 0 errors. The full Windows suite remained environment-blocked outside an elevated token: 14 tests failed while creating/deriving the fixed AppContainer or creating symlinks; 11 passed and none were skipped. Release: refreshed the win-x64 self-contained folder binaries, publish manifest, ZIP, and checksum while preserving the local agent.yaml. The clean ZIP contains no runtime logs or Task state. --- plans/ImplementationPlan.md | 1 + 1 file changed, 1 insertion(+) (limited to 'plans') diff --git a/plans/ImplementationPlan.md b/plans/ImplementationPlan.md index d87a357..8127701 100644 --- a/plans/ImplementationPlan.md +++ b/plans/ImplementationPlan.md @@ -346,6 +346,7 @@ Planner deterministic test全PASS。 - [ ] Ollamaには5群のみ公開 - [ ] malformed tool args拒否 - [ ] Policy deny時に副作用なし +- [ ] Policy denyは初回でfailedとなり、LLMへ再試行されない - [ ] external effect必須Taskでtool未使用ならcompletedにならない - [ ] 同一失敗5回でfailed - [ ] pure analysis TaskにはToolを強制しない -- cgit v1.2.3