HN Discussion: Pre-commit lint checks: Vibe coding's kryptonite

2026-05-15 · source · source ↗

Original post by akshay326 linking to getseer.dev (later redirected to civerify.com). 16 points, 27 comments. The blog post argued that pre-commit lint checks are the most effective guardrail against AI-generated code quality erosion.

Top-Level Comments

atrooo

Expressed fatigue with AI-generated blog posts about AI-generated code, questioning what the author gets out of it — "Upvotes?"

Rantenki

Questioned the logic: if an AI assistant produces lint-violating code and can't process lint feedback to fix it, the AI tool itself is likely the problem. Drew a comparison to a junior dev who keeps breaking CI despite explicit instructions, noting you'd let that person go before probation ends. Asked rhetorically whether "the probation period for AI already expired."

vaishnavsm

Warned TS developers about implicit any errors. Noted that LLMs frequently fix lint errors by using "explicit anys or as any casts" — which make the lint error vanish while preserving the actual logic bug. Even when told not to use any, LLMs may cast to unknown and narrow it to "a type that doesn't exist." Called these "valid code patterns" that LLMs tend to abuse.

throwawayffffas

Recommended linters with autofix (like Ruff) and automatic formatters to reduce cleanup workload. Advised against over-fixing typing, noting "Python's duck typing is a feature not a bug." On duplicate code, suggested seeing at least two examples of a pattern before abstracting, to avoid abstracting "incidental duplication." Called coding agents "technical debt printers," but added you can "still pay it off."

andsmi2

Described their pattern of forcing lint before push, requiring code coverage thresholds, and mandating all tests pass. Noted the same problems occur with human dev teams. Observed that "LLM actually listens to my rules a bit better than human devs" — and pre-commit/pre-merge checks enforce it regardless.

OutsmartDan

Posed a philosophical question: if AI is writing and fixing all code, "does linting even matter?"

cheapsteak

Suggested using PostToolUse instead of pre-commit hooks for lint checks — triggering on edit/write tool uses. For autofixable issues, the tool can format immediately. For type issues, suggested returning structured output that lets the edit complete but signals errors for the next turn.

rcarmo

Stated that "linting and proper tests" are what enables them to use even simple models productively, "preferably writing the tests with a second model."

rurban

Advocated for -Wall -Werror plus clang-format commit hooks. Argued that "proper languages cannot afford this kind of python or TS slop."

seroperson

TL;DR summary: "Enable strict linting on CI, don't allow AI to change linting configuration."

Selected Replies by akshay326 (OP)