Files
leo-claude-mktplace/plugins/doc-guardian/skills/staleness-metrics.md
lmiranda 7c8a20c804 refactor: extract skills from commands across 8 plugins
Refactored commands to extract reusable skills following the
Commands → Skills separation pattern. Each command is now <50 lines
and references skill files for detailed knowledge.

Plugins refactored:
- claude-config-maintainer: 5 commands → 7 skills
- code-sentinel: 3 commands → 2 skills
- contract-validator: 5 commands → 6 skills
- data-platform: 10 commands → 6 skills
- doc-guardian: 5 commands → 6 skills (replaced nested dir)
- git-flow: 8 commands → 7 skills

Skills contain: workflows, validation rules, conventions,
reference data, tool documentation

Commands now contain: YAML frontmatter, agent assignment,
skills list, brief workflow steps, parameters

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 17:32:24 -05:00

2.5 KiB

name, description
name description
staleness-metrics Documentation staleness levels, thresholds, and relationship detection

Staleness Metrics

Purpose

Defines how to measure documentation staleness relative to code changes.

When to Use

  • stale-docs: Commit-based staleness detection
  • doc-audit: Age-based analysis

Staleness Calculation

Commits Behind = Code Commits Since Doc Update
Days Behind = Days Since Doc Update - Days Since Code Update

Staleness Levels

Commits Behind Level Action
0-5 Fresh No action needed
6-10 Aging Review recommended
11-20 Stale Update needed
20+ Critical Immediate attention

Relationship Detection

1. Same Directory

src/api/README.md relates to src/api/**/*

2. Name Matching

docs/auth.md relates to **/auth.*, **/auth/**

Parse [link](path) in docs to find related files

4. Import Analysis

Track which modules are referenced in code examples


Git Commands

# Last doc commit
git log -1 --format="%H %ai" -- docs/api.md

# Last code commit for related files
git log -1 --format="%H %ai" -- src/api/

# Commits to code since doc update
git rev-list <doc-commit>..HEAD -- src/api/ | wc -l

Configuration

.doc-guardian.yml:

stale-docs:
  threshold: 10
  mappings:
    - doc: docs/deployment.md
      code:
        - Dockerfile
        - docker-compose.yml
        - .github/workflows/deploy.yml
    - doc: ARCHITECTURE.md
      code:
        - src/**/*
  ignore:
    - CHANGELOG.md
    - LICENSE
    - vendor/**

Output Format

## Stale Documentation Report

### Critical (20+ commits behind)
| File | Last Updated | Commits Behind | Related Code |
|------|--------------|----------------|--------------|
| docs/api.md | 2024-01-15 | 34 | src/api/**/* |

### Stale (11-20 commits behind)
| File | Last Updated | Commits Behind | Related Code |
|------|--------------|----------------|--------------|
| README.md | 2024-02-20 | 15 | package.json, src/index.ts |

### Aging (6-10 commits behind)
| File | Last Updated | Commits Behind | Related Code |
|------|--------------|----------------|--------------|
| CONTRIBUTING.md | 2024-03-01 | 8 | .github/*, scripts/* |

### Summary
- Critical: 1 file
- Stale: 1 file
- Aging: 1 file
- Fresh: 12 files
- Total documentation files: 15

Exit Codes

  • 0: No critical or stale documentation
  • 1: Stale documentation found (for CI)
  • 2: Critical documentation found