Skip to content

quality

quality is the checklist that runs in the agent’s head before code is committed: the mechanical, non-negotiable hygiene that keeps a branch green and a diff clean. It’s short by design — every item is a thing that’s cheap to do and expensive to skip.

What it governs

  • Before committing — never use --no-verify; always run pre-commit hooks; scan for hardcoded secrets (API keys, JWT tokens, passwords, cloud/provider tokens); review the full diff before pushing.
  • After editing files — run the project formatter (biome/prettier for JS/TS, dotnet format for C#, ruff/black for Python) and the type checker (tsc --noEmit, dotnet build, mypy/pyright).
  • Debug statements — no console.log or print() left in production code; sweep modified files before finalizing.
  • Documentation — design docs (*-design.md, *-spec.md, *-plan.md) belong in docs/.

Why it matters

The failure mode of a fast assistant is leaving small messes: an unformatted file, a stray console.log, a type error that only CI catches, a --no-verify that skips the very checks meant to stop all of the above. Each is trivial alone; together they erode trust in the branch and slow every review. Codifying the checklist means it runs every time, not just when someone remembers.

How to override

Extend-only. Create quality.local.md in the rules directory to add project-specific checks (an extra linter, a repo-specific gate). Removing an Octopus default via a local file is not recommended — the checklist is a floor.

Source: rules/common/quality.md