Wiki Lint Daily — Session 2026-06-05

Goal

Full 14-point lint scan of /opt/data/wiki. Identify broken wikilinks, frontmatter issues, tag sprawl, orphans, naming violations, binary artifacts, and duplicate titles. Report findings with recommendations for targeted remediation.

Progress

  • 08:15 — Oriented: read SCHEMA.md (702 lines), index.md (72 lines), log.md (191 lines). Domain: pvs’s home lab infrastructure & AI/ML ops. Tag taxonomy extensive with 60+ known tags across multiple sub-sections.
  • 08:16 — Wrote Python lint scanner to /tmp/wiki_lint_scan_2026-06-05.py covering all 14 check categories.
  • 08:17 — Ran scanner over 2,319 .md files (excl. archive/raw/queue-active/.obsidian). Scan completed in ~10 seconds.

Scan Results

CheckCountNotes
Broken wikilinks1,240Mostly stale [[archive/...]] refs from previous cleanup passes; SCHEMA template placeholders
Missing frontmatter49No YAML header at all
Incomplete frontmatter1,067Mostly missing updated (1,048) or type (257)
Bad/unknown tags2,304has-instruction(866), has-tool-error(739), source-api_server(134), automated(97) dominate
Oversized pages (>200 lines)901874 are session files (expected pattern)
Orphaned pages14Down from 1,064 — significant cleanup progress
Duplicate titles59Mostly email inbox dupes (“Re: Hermes Agent”×11, “Daily Agenda…”×7, “Archived”×29)
Binary/hidden files4All in .obsidian/_.*.json macOS resource forks
Naming violations827Underscores in filenames (SCHEMA requires hyphens only)
Log lines191/500Healthy, no rotation needed

Trend vs 2026-06-02 Run

  • Broken links: 145 → 1,240 (↑ scanner now checks SCHEMA/CONDUCT/SOUL + template refs; not a regression)
  • Orphans: 1,064 → 14 (↓ major improvement)
  • Incomplete frontmatter: 1,638 → 1,067 (↓ good progress)
  • Bad tags: 2,268 → 2,304 (stable — has-instruction/has-tool-error persist from Mercury queue processing)

Safe Fixes Identified

FixTargetFiles affectedRisk
Remove stale archive refs[[archive/2026/stale-*]] in non-archive pages~150-300Low — replace with plain text mention
Add missing tags to taxonomySCHEMA.md Tag Taxonomy section1 fileZero — documentation only
Delete .obsidian/._* filesmacOS resource forks4 filesLow — auto-generated, no data loss

NOT Auto-Fixed This Run

Per the wiki-lint-daily project conventions (2026-05-31 precedent): report findings before fixing at scale. At 6,461 total issues across categories, individual patching would be error-prone. Recommended approach: categorise by type → decide bulk strategy per category → execute in batches.

Recommendations for Next Session

  1. Add has-instruction, has-tool-error, source-api_server, automated to SCHEMA.md tag taxonomy (Section 5, new sub-section “Task Tracking Tags”). These are recurring Mercury queue markers and should be codified.
  2. Batch archive-ref cleanup: Replace stale [[archive/...]] links in core wiki pages with plain-text mentions or umbrella [[archive]] link. Don’t recreate archived files.
  3. Session file frontmatter batch-fix: For the 874 oversized session files, auto-add missing type: session + updated: YYYY-MM-DD where file mtime matches creation date.
  4. Underscore-to-hyphen rename pass for naming violations in core directories (concepts/, entities/, projects/). Skip raw/ and queue/ which have external naming conventions.

Issues / Questions

  • None blocking — all findings are cosmetic or structural, no data loss or security concerns.

Chunk 2026-06-05T13:45:00+09:00 (autopilot tick)

What was done:

  • Reviewed SCHEMA.md tag taxonomy status
  • Verified all four recommended tags from previous session have been added:
    • has-instruction, has-tool-error (task quality markers)
    • source-api_server (content source origin)
    • automated (ops automation)

Outputs:

  • All recommendations complete — no further action required for tag taxonomy cleanup

Next chunk picks up:

  • Batch archive-ref cleanup: Replace stale [[archive/...]] links in core wiki pages with plain-text mentions or umbrella [[archive]] link