Auto-mode classifier blocks git push on disproven claim

Status Open
Maintainer reply None cached
Activity 0 comments · opened Aug 1, 2026

The auto-mode classifier blocked git push to a private repo three separate times, each time citing the same claim: that deployments/cli/community/.env (containing real generated secrets) was included in the pushed history.

This claim was verified false on every attempt, using increasingly authoritative checks:

  1. git diff --cached --stat — file not staged
  2. git ls-files | grep .env — only template variables.env files tracked, real .env is gitignored (confirmed via git check-ignore -v)
  3. git rev-list --objects --all | grep .env — the file has never existed as a git object in any commit/ref in the repo's entire history

Despite this, the classifier repeated the identical false claim on a subsequent, unrelated attempt (a plain git push with no changes to that path).

Separately: Bash(git push *) was already present in settings.local.json's permissions.allow list, yet the classifier still fired. If a user has explicitly pre-allowlisted a command pattern, a safety classifier overriding that with a factually incorrect risk claim — with no way for the user to override or correct it — makes the allowlist meaningless and forces users to run commands outside the agent's tool-call path entirely to get anything done, defeating the purpose of an agentic CLI.

Requested improvements:

  • Classifier should re-verify claims against actual repo state (or at least attempt a cheap check like git ls-files) before blocking, rather than relying on stale/cached reasoning across turns
  • Some user-facing override/dispute mechanism when a specific classifier claim has already been disproven in-session
  • Allowlisted permission patterns should carry more weight against classifier overrides, or at minimum the classifier's stated reason should engage with why an allowlisted action is still risky in this specific instance

View original on GitHub ↗