← Project Log
DecisionDEC-0006

Multi-Layer Linting with AI Slop Detection

humanStatus: active

DEC-0006: Multi-Layer Linting with AI Slop Detection

Decision

The project uses a comprehensive linting stack with specific attention to detecting AI-generated prose patterns. Cleanup follows a two-phase pipeline: Cursor fixes mechanical issues, Claude Code does the editorial voice pass.

Context

The human asked whether the project had linting, then specifically asked about "anti-AI slop tools." Research identified Vale + ai-tells (41 rules based on documented AI writing patterns) as the strongest available tool. The human approved building the full stack.

Rationale

Standard linters (markdownlint, yamllint, ESLint) catch zero AI slop — they only check syntax and structure. Vale + ai-tells catches prose patterns: overused vocabulary ("delve," "comprehensive"), participial padding, sycophancy markers, filler phrases, em-dash abuse. Custom project rules add: Booth reference detection (error), agent self-reference (warning), evasive attribution (warning), epistemic level confusion (suggestion).

The two-phase cleanup pipeline acknowledges that mechanical fixes (word swaps, phrase deletion) are different from editorial fixes (rewriting for voice). The boundary is defined in AGENTS.md §Linting & Quality.

What the Project Accepts

AI-generated content will contain slop. The agents know this. The linting stack is not a gate that prevents AI from being used — it is a quality filter that catches the most obvious patterns and routes the rest to editorial judgment. The project's transparency about its own AI-generated origins is part of its thesis (see editorial-guidance.md §XI).

0:00
0:00