界面已本地化;技能介绍与说明文档按所选语言由 AI 自动翻译,代码、命令、路径和专业术语保留原文,以原作者文档为准。
探索技能
开发与工程 · SKILL.md

additive-bias-defense

additive-bias-defense

【开发与工程】Inverts burden of proof for code additions. Use when reviewing PRs, planning refactors, or running unbloat to challenge every addition's necessity.

独立 GitHub 快照 · 自动分类 · 以原作者文档为准

技能说明

GitHub

name: additive-bias-defense description: Inverts burden of proof for code additions. Use when reviewing PRs, planning refactors, or running unbloat to challenge every addition's necessity. alwaysApply: false category: quality-contract tags:

  • additive-bias
  • burden-of-proof
  • scrutiny
  • cross-cutting
  • defense dependencies: [] tools: [] provides: guidance:
    • additive-bias-scrutiny
    • burden-of-proof-verdict usage_patterns:
  • plan-review
  • pr-review
  • code-refinement
  • unbloat complexity: foundational model_hint: standard estimated_tokens: 800 role: library

The default answer to "should we add this?" is no. The burden of proof is on the addition.

Additive Bias Defense

Note (#444): Frontmatter declares provides.guidance, not provides.contract. The scrutiny questions are consumed by partner skills (pensive:code-refinement, conserve:unbloat, imbue:scope-guard) that voluntarily embed them; no validator or hook in leyline enforces them directly. If a future contributor adds enforcement, restore the contract label and link the validator path here.

When NOT To Use

  • Removing bloat that already landed (use conserve:bloat-detector)
  • Scoring whether a feature is worth building (use imbue:scope-guard)

The Problem

LLMs are additive by nature. They reinvent wheels, add unnecessary complexity, hallucinate issues and modify tests to justify them, and deviate from priorities. This contract provides a systemic defense.

The Scrutiny Questions

Applied to every proposed addition (code, files, abstractions, error handling, configuration):

  1. Priority alignment: Is this a deviation from the current priority?
  2. Criticality: Is it critical to implement at this juncture?
  3. Simplicity: Does a simpler or more elegant solution exist?
  4. Evidence: What evidence proves this is needed (not assumed)?
  5. Consequence: What breaks if we do not add this?

If the proposer cannot answer questions 4 and 5 with concrete evidence, the addition is unjustified.

Anti-Pattern Detection

PatternSignalChallenge
Wheel reinventionNew utility/helper overlapping existing code"Does X already do this?"
Hallucinated issuesFix for a bug with no reproduction evidence"Show the failing test before the fix"
Test manipulationTest changed to match behavior rather than spec"Did the spec change, or did you change the test?"
Complexity creepAbstraction introduced for single use case"Is this the 3rd use, or the 1st?"
Priority deviationWork not traceable to current task/spec"Which requirement does this serve?"
Gold platingError handling or flexibility beyond need"What breaks without this?"

Burden of Proof Verdict

After applying scrutiny questions and anti-pattern detection, produce a verdict:

VerdictMeaningAction
justifiedEvidence supports the additionProceed
needs_evidencePlausible but unprovenProvide evidence or remove
unjustifiedNo evidence, likely biasRemove or justify

Integration Contract

Review-oriented skills MUST consult this contract by:

  1. Applying the 5 scrutiny questions to each addition
  2. Scanning for the 6 anti-patterns
  3. Producing a burden-of-proof verdict
  4. Including the verdict in their output

Consuming Skills

SkillIntegration Point
attune:war-roomProsecution Counsel role uses scrutiny questions
sanctum:pr-reviewEvery added file/function challenged
pensive:code-refinementRefactors pass "3rd use" test
conserve:unbloatFindings feed removal candidates
attune:mission-orchestratorPlan sections scanned before user review
imbue:justifyScrutiny questions extend audit protocol

Related Skills

  • imbue:karpathy-principles - "Simplicity First" and "Surgical Changes" principles invoke this contract from a higher-level four-principle synthesis
  • See docs/quality-gates.md#skill-level-quality-gate-composition for the full gate-skill federation graph

The Subtraction Principle

Rely less on AI and initial lines of thinking. Challenge yourself to think of a more elegant implementation or a simpler solution.

Before accepting any addition, ask: "Could I achieve this by removing code instead of adding it?" If yes, prefer the subtractive approach.

Exit Criteria

  • All 5 scrutiny questions applied to every proposed addition; questions 4 (evidence) and 5 (consequence) answered with concrete evidence, not assumptions
  • All 6 anti-patterns scanned (wheel reinvention, hallucinated issues, test manipulation, complexity creep, priority deviation, gold plating); any match named with the pattern label
  • A burden-of-proof verdict produced for each addition: justified, needs_evidence, or unjustified; the verdict appears in the consuming skill's output
  • Subtraction principle applied: at least one check for "could this be achieved by removing code instead?" before accepting any net-positive line-count change
我的收藏