docs: remove nonexistent doberman taint verb from SETUP.md
Your AI's guard dog to stop it from going rogue.
Brought to you by:
doberman
Originally created by: AshSgDe29071999
SETUP.md listed taint among posture-/auth-mutating Doberman verbs blocked as control-plane tampering. There is no doberman taint command — only a read-only taint surface inside status.
Drop taint from that verb list so the security docs match the CLI. Guardrail code and tests are intentionally untouched.
Fixes [#224]
Originally posted by: fu351
Reviewed against the CLI rather than the description, and the claim holds:
doberman taintdoes not exist. The command tree isserve, scan, review, mode, enforcement, prefs, status, doctor, revoke, log, tui, dash, demo, memory, policy-history, install-hooks, uninstall-hooks, setup, dashboard, version, plus the2fa/password/hooksub-apps. The read-only taint surface you point at is real and sits instatus(src/doberman/cli/main.py:508-512). Every verb left in that sentence still mutates posture or auth state, so the list is accurate after the edit.What I want to call out is what you didn't touch.
taintis still in_DOBERMAN_CONTROL_SUBCOMMANDS(src/doberman/engine/rules/commands.py:56-67) and still referenced attests/unit/test_rule_commands_control_plane.py:186. At a glance both look like the same bug. They aren't: blocking a verb that doesn't exist is harmless and fails closed, and changing a guardrail's blocking set is a different decision from correcting a docs sentence. The issue carved that out, you read the carve-out, and you shipped one line in one file. Scope discipline around security-adjacent code is the harder half of working in this repo and it's what most first PRs get wrong.CI is green across all five checks.
Ticket changed by: fu351