Fetching from the wire…
Public story · 2026-08-25 · high
A config schema mismatch let AllowedPathChecker parse clean while silently skipping registration for autoEdit mode.
Why now: Merged August 24, per the pull request fixing it.
Gemini CLI's write.toml declared safety checkers as nested [rule.safety_checker] tables. The code reading that file, PolicyFileSchema, only recognized top-level [[safety_checker]] arrays. PR 28961, merged August 24, found that mismatch and fixed it.
Schema validation discards sub-tables it doesn't recognize instead of failing on them. So the file loaded without error, and AllowedPathChecker was never registered for write_file and replace calls in autoEdit mode. The tool believed a path restriction was in place. It wasn't checking anything.
This is the kind of bug that survives testing because both halves look fine in isolation. The TOML parses. The schema validates. Nobody wrote a test that loaded the real config and then asserted the checker showed up in the registered policy list, so nothing caught the gap between "config is valid" and "config did anything."
If you're writing a policy or permission layer that reads from a config file, parsing success is not the thing to assert in your tests. Load the file, then check what actually got registered. A schema that silently drops unrecognized keys will hide exactly this kind of mistake, and it'll hide it in a way that looks like everything's working until someone tries to exploit the gap it left.
Each link below shares sources, entities, or timing with this story.
Google deprecates Gemini CLI / Shared entities / Same source domain / Shared topic / Earlier coverage
Linked by a graph relationship (Google deprecates Gemini CLI); both cover August, GitHub; reported by the same outlet (github.com).
Google deprecates Gemini CLI / Shared entities / Same source domain / Earlier coverage / Tension
Linked by a graph relationship (Google deprecates Gemini CLI); both cover August, GitHub; reported by the same outlet (github.com).
Google deprecates Gemini CLI / Shared entities / Earlier coverage
Linked by a graph relationship (Google deprecates Gemini CLI); both cover August, Gemini CLI, GitHub; earlier August coverage from 2026-08-07.
Google deprecates Gemini CLI / Shared entities / Same source domain / Earlier coverage
Linked by a graph relationship (Google deprecates Gemini CLI); both cover August, GitHub; reported by the same outlet (github.com).
Linked by a graph relationship (Google deprecates Gemini CLI); both cover Gemini CLI, GitHub; reported by the same outlet (github.com).
Linked by a graph relationship (Google deprecates Gemini CLI); both cover Gemini CLI, GitHub; reported by the same outlet (github.com).
Superpowers uses Gemini CLI / Shared entities / Same source domain / Earlier coverage
Linked by a graph relationship (Superpowers uses Gemini CLI); both cover Gemini CLI, GitHub; reported by the same outlet (github.com).
Google deprecates Gemini CLI / Shared entity: Gemini CLI / Same source domain / Earlier coverage / Tension
Linked by a graph relationship (Google deprecates Gemini CLI); both cover Gemini CLI; reported by the same outlet (github.com).