You'll notice
Plugin path-escape errors now say why, such as the real path a symlink resolves outside of.
Path-traversal errors for plugin commands, agents, skills, monitors, and hooks now include a human-readable reason, such as an unresolvable boundary or the real path a symlink resolves outside of, rather than just reporting that the path escaped. This reason is attached to both the log line and the structured error object.