Conversation
|
augment review |
🤖 Augment PR SummarySummary: This PR closes out audit items by hardening plugin IPC, expanding operator/admin tooling, and updating documentation to match the new security posture surfaces. Changes:
Technical Notes: Adds new tests covering admission control, posture/simulation/export endpoints, bridge auth, socket transport auth failures, plugin containment checks, and new observability counters. 🤖 Was this summary useful? React with 👍 or 👎 |
| try | ||
| { | ||
| if (Directory.Exists(_socketDirectory)) | ||
| Directory.Delete(_socketDirectory, recursive: true); |
There was a problem hiding this comment.
DisposeCoreAsync recursively deletes _socketDirectory; when SocketPath is configured, _socketDirectory is derived from Path.GetDirectoryName(socketPath) and may point at an operator-managed directory. That can cause unintended permission/deletion attempts outside the bridge’s private runtime directory.
Severity: high
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
| .ToArray(); | ||
|
|
||
| var autonomyHook = new AutonomyHook(effectiveTooling, NullLogger.Instance); | ||
| var allowed = await autonomyHook.BeforeExecuteAsync(request.ToolName!, argumentsJson, ct); |
There was a problem hiding this comment.
Approval simulation normalizes file_write→write_file for the approval-gated check, but the autonomy check calls AutonomyHook.BeforeExecuteAsync with the raw request.ToolName. If callers use the file_write alias, the simulator could report allow in readonly mode even though write_file would be treated as write-capable.
Severity: medium
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
src/OpenClaw.Agent/AgentRuntime.cs
Outdated
| return true; | ||
| } | ||
|
|
||
| private static bool IsEstimatedBudgetAdmissionError(Exception ex) |
There was a problem hiding this comment.
IsEstimatedBudgetAdmissionError relies on substring-matching the exception message, so a wording change would make admission-control rejections look like provider failures and return the generic error text. A dedicated exception type/code would make this path more robust.
Severity: medium
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
Updated the docs to match the implemented audit-closure work, including README.md, SECURITY.md, docs/COMPATIBILITY.md, docs/QUICKSTART.md, docs/USER_GUIDE.md, docs/TOOLS_GUIDE.md, docs/sandboxing.md, docs/ROADMAP.md, and docs/architecture-startup-refactor.md. The updates cover the hardened plugin IPC model, approval posture and simulator, incident export, estimated token admission control, sandbox lease observability, and the staged startup composition.