Back to list
unfinishablemap

validate-all

by unfinishablemap

Repo backing the unfinishablemap.org site created in 2025

0🍴 0📅 Jan 25, 2026

SKILL.md


name: validate-all description: Run comprehensive validation on all site content. Use for daily health checks or before deployment.

Validate All Content

Run comprehensive validation checks on The Unfinishable Map site content.

When to Use

  • Daily automated health checks
  • Before deploying to production
  • After major content changes
  • When /validate-all is invoked

Instructions

Execute these validation steps in order:

1. Frontmatter Validation

Run the validation script:

uv run python scripts/validate.py hugo/content/ --strict

Report any validation errors or warnings.

Run the /check-links skill to verify all internal links are valid.

If the Hugo dev server is not running, note that link checking was skipped.

3. Orphan Detection

Find content files with no inbound links:

  1. Read all markdown files in hugo/content/
  2. Extract all internal links from each file
  3. Identify files that are never linked to (except index files)
  4. Report orphaned content for human review

4. Stale Draft Detection

Find draft content older than 30 days:

  1. Find all files with draft: true in frontmatter
  2. Check the created or modified date
  3. If older than 30 days, flag as stale
  4. Report stale drafts for human review

5. Length Analysis

Check article lengths against section-specific thresholds:

uv run python -c "
from pathlib import Path
from tools.curate.length import get_length_summary

summary = get_length_summary(Path('obsidian'))
print(f'Critical: {summary[\"critical_count\"]}')
print(f'Hard warnings: {summary[\"hard_warning_count\"]}')
print(f'Soft warnings: {summary[\"soft_warning_count\"]}')
for w in summary['worst_offenders'][:5]:
    print(f'  {w[\"path\"]}: {w[\"words\"]} words ({w[\"excess_percent\"]:.0f}%)')
"

Thresholds by section:

SectionTargetHardCritical
concepts/250035005000
topics/300040006000
apex/400050006500
voids/200030004000

Report critical and hard warnings. Note soft warnings only if concerning trend.

6. Log Results

Append results to obsidian/workflow/changelog.md with:

  • Timestamp
  • Status (Success/Warnings/Errors)
  • Count of files validated
  • Any errors or warnings found
  • List of orphaned content (if any)
  • List of stale drafts (if any)

Output Format

### HH:MM - validate-all
- **Status**: Success/Warnings/Errors
- **Files validated**: N
- **Errors**: List or "None"
- **Warnings**: List or "None"
- **Orphaned content**: List or "None"
- **Stale drafts**: List or "None"

**Length Warnings:**
| Status | Count | Worst |
|--------|-------|-------|
| Critical | N | filename.md (X%) |
| Hard | N | filename.md (X%) |
| Soft | N | (noted if >50% of articles) |

Important

  • This skill is READ-ONLY for content files
  • Only writes to changelog.md
  • Does not modify any content
  • Reports issues for human review

Score

Total Score

60/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon