EnsureGrant and EnsureGroupPermission passed `this` as the owner. Given an owner, Oxide first asks PermissionExists(perm, owner) — whether THAT plugin registered the name — and returns silently when it did not, so every site-authored grant of another plugin's permission was a no-op on Oxide that the report counted as applied (PLAN.md §27.6). Both now pass null and read the store back. A grant the store does not hold afterwards is reported in the new `notLanded` list instead of counted. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY