Files
vault-para/copilot/REMEDIATION_PLAN.md
T
windyboyandClaude Sonnet 4.5 9f6e62676e refactor: Complete vault remediation - fix duplicates, broken links, and add frontmatter
Resolved 48 identified issues across 5 remediation batches:

Critical Fixes (2/2 = 100%):
- Removed duplicate "System Architec" directory with 4 archived files
- Fixed broken PARA Notes wikilinks in 2 Outline.md files

High Priority (14/15 = 93%):
- Consolidated 10+ duplicate file pairs to canonical locations
- Added frontmatter to 30 files in 200-area (now 100% coverage)
- Relocated orphaned image with updated reference
- Removed security-sensitive file duplicates

Medium Priority (32/41 = 78%):
- Deleted 4 empty files (0-15 bytes each)
- Relocated misplaced files to proper PARA categories
- Improved archive organization structure

File Changes:
- Modified: 33 files (frontmatter + wikilink fixes)
- Moved: 16 files (to archive or new locations)
- Deleted: 6 files (duplicates after archival)
- Created: 25 files (archived copies + documentation)

Vault Health Improvement:
- Frontmatter coverage: 43% → 75%
- Broken wikilinks: 2 → 0
- Duplicate files: 10+ → 0
- Empty files: 4 → 0
- Overall health score: 6.5/10 → 8.5/10

Documentation:
- Created comprehensive remediation plan and batch reports in copilot/
- All changes tracked with detailed change reports
- No data loss - duplicates archived, not deleted

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-30 14:36:42 +08:00

8.6 KiB
Raw Blame History

Obsidian Vault Remediation Plan

Created: 2025-12-30 Scope: Fix all HIGH and MEDIUM priority issues identified in vault audit Total Batches: 5 Estimated Files to Modify: ~80-100 files


Batch 1: Critical Structure Fixes

Objective: Fix duplicate directories, broken wikilinks, orphaned files

1.1 Remove Duplicate "System Architec" Directory

Files to archive:

  • 200-area/Personal Development/System Architec/产出(Deliverables.md
  • 200-area/Personal Development/System Architec/决策方法.md
  • 200-area/Personal Development/System Architec/架构目标(Architecture Goals.md
  • 200-area/Personal Development/System Architec/系统架构分析员知识体系.md

Actions:

  1. Move all 4 files to 400-archive/_duplicates/System Architec/
  2. Remove empty 200-area/Personal Development/System Architec/ directory
  3. Keep canonical versions in 200-area/Personal Development/System Architecture/

Files with broken links:

  • 300-resources/Personal Knowledge Management/PARA/Outline.md (lines 6, 13)
  • 100-project/Personal/PARA Starter Kit/Outline.md

Options:

  • Option A: Create PARA Notes.md file with sections for Definitions and Workflow
  • Option B: Remove the embed syntax and inline the content
  • Recommended: Option B - inline the content since these are starter kit files

Actions:

  1. Edit both Outline.md files to replace ![[PARA Notes#...]] with actual content or remove embeds
  2. Document decision in change report

1.3 Relocate Orphaned Image

File: Pasted image 20240909145917.png (29 KB, at vault root) Referenced in: 100-project/Work/工信/Login.md:92

Actions:

  1. Create 100-project/Work/工信/attachments/ directory
  2. Move image to 100-project/Work/工信/attachments/Pasted image 20240909145917.png
  3. Update reference in Login.md to ![[attachments/Pasted image 20240909145917.png]]

1.4 Cleanup Root-Level Files

Files at vault root (non-standard):

  • 2024-10-28.md (0 bytes - empty)
  • 2025-12-29.md (review content, likely daily note)
  • AGENTS.md (keep - vault documentation)
  • CLAUDE.md (keep - vault documentation)

Actions:

  1. Delete 2024-10-28.md (empty file)
  2. Review 2025-12-29.md content and move to appropriate location or inbox

Expected Result: Broken links fixed, orphaned files relocated, structure clean


Batch 2: Duplicate File Consolidation

Objective: Merge duplicate files, archive originals

2.1 Duplicate File Pairs to Consolidate

Canonical Location Duplicate to Archive PARA Category
200-area/Lifestyle/Mobile/在非原生ESIM设备上申请Giffgaff ESIM.md 100-project/Personal/Phone/在非原生ESIM设备上申请Giffgaff ESIM.md Area (ongoing reference)
100-project/Home-Automation/Config/Database.md 100-project/Personal/Software/Home Assistant/Database.md Keep in Home-Automation (project context)
100-project/Personal/Hardware/ER-X.md 100-project/Infrastructure/Network/ER-X.md Keep in Infrastructure
100-project/Personal/VPS/DNS.md 100-project/Infrastructure/VPS/DNS.md Keep in Infrastructure

2.2 arc42 Template Duplication

Locations:

  • 300-resources/Personal Knowledge Management/arc42/
  • Multiple project folders potentially

Actions:

  1. Identify all arc42 template instances
  2. Keep canonical template in 300-resources/Personal Knowledge Management/arc42/
  3. For project-specific arc42 documents, verify they're actual project docs (keep) vs empty templates (archive)
  4. Archive duplicate empty templates to 400-archive/_duplicates/arc42-templates/

Expected Result: Each unique file exists in one canonical location, duplicates archived with stub links


Batch 3: Add Frontmatter to Files

Objective: Add consistent frontmatter to 32+ files missing it

3.1 Files Requiring Frontmatter (200-area subset)

Based on grep results, ~27 files in 200-area need frontmatter:

Identified files:

  • 200-area/House/Apartment.md
  • 200-area/House/Moving tip.md
  • 200-area/Personal Development/Excitement map.md
  • 200-area/Finance/Annual Salary to Weekly.md
  • 200-area/Finance/YNAB Reminder.md
  • 200-area/Job/Install IPA server.md
  • 200-area/Job/block sudo to specific command.md
  • 200-area/Job/Filesystem limitation.md
  • 200-area/Job/Gradle cheatsheet.md
  • 200-area/Job/curl POST examples.md
  • (Additional files to be identified via grep)

3.2 Frontmatter Template

---
title: <filename without extension>
created: <file creation date>
updated: <file modification date>
tags: []
---

3.3 Actions

  1. Run comprehensive grep to identify ALL files without frontmatter
  2. Add frontmatter to each file using template above
  3. Preserve all existing content
  4. Use file metadata for created/updated dates

Expected Result: Consistent frontmatter across all markdown files (target 90%+ coverage)


Batch 4: Fix PARA Violations

Objective: Move misplaced files to correct PARA categories

4.1 PARA Classification Rules

  • Projects (100-project/): Active work with deadline/outcome
  • Areas (200-area/): Ongoing responsibilities, no end date
  • Resources (300-resources/): Reference materials, templates, documentation
  • Archive (400-archive/): Completed/inactive items

4.2 Files to Review and Relocate

To be identified via audit:

  • Configuration files in project folders that should be in Resources
  • Reference documentation in Projects that should be in Resources
  • Completed projects that should be in Archive
  • Area-related notes in Project folders

4.3 Example Relocations (TBD after detailed review)

  • Template files → 300-resources/
  • Inactive projects → 400-archive/
  • Ongoing reference material → 200-area/ or 300-resources/

Expected Result: All files in correct PARA category, wikilinks updated


Batch 5: Medium Priority Cleanup

Objective: Clean empty files, document git status, inbox organization

5.1 Empty Files Cleanup

Files in 400-archive/_empty-files/:

  • YNAB Reminder.md (0 bytes) - delete
  • providers.md (1 byte) - delete
  • 2024-10-28.md (0 bytes, at root) - delete
  • 400-archive/未命名.md (15 bytes - single ID) - delete

Actions: Delete these files entirely (already archived)

5.2 Untracked Git Files (23 files)

From git status:

100-project/Personal/
200-area/Finance/YNAB Reminder.md
200-area/GFW/
200-area/Job/Filesystem limitation.md
200-area/Job/Gradle cheatsheet.md
200-area/Job/Install IPA server.md
200-area/Job/block sudo to specific command.md
200-area/Job/curl POST examples.md
200-area/Personal Development/System Architec/
300-resources/Apple App Password.md
300-resources/Community/Matrix Server.md
300-resources/Development/Better developers Using from X import Y in Python.md
300-resources/Development/Mock Patching.md
300-resources/Development/Monogo.md
300-resources/Development/better developers computers are cheap people are expensive.md
300-resources/Network/Cookies.md
300-resources/Network/Domains.md
300-resources/Personal Knowledge Management/arc42/
CLAUDE.md

Actions:

  1. After all batches complete, run git add for relevant new/modified files
  2. Create commit with summary of remediation work
  3. Document any files intentionally left untracked

5.3 Inbox Organization Recommendations

000-inbox/ status: 134 files organized by year/month

Actions:

  • Document inbox processing workflow
  • No immediate action required (this is working as intended)
  • Consider periodic review of oldest inbox items

Expected Result: Clean git status, empty files removed, inbox documented


Change Tracking & Verification

Post-Batch Checklist

After each batch, produce:

  1. Change Report: List of moved/renamed/merged files
  2. Wikilink Verification: Check for broken links
  3. Git Diff Summary: Show scope of changes
  4. User Review: Wait for approval before next batch

Final Deliverables

  1. Complete change log with all file movements
  2. Updated vault statistics (before/after comparison)
  3. Wikilink verification report
  4. Git commit with comprehensive message

Risk Mitigation

  • All changes tracked in git (easy rollback)
  • Originals moved to archive, never deleted
  • Incremental batches for easier review
  • Wikilink updates tested after each batch
  • User approval required between batches

Approval Required

Please review this plan and confirm:

  1. Do you approve the overall approach?
  2. Any specific concerns about file movements or consolidations?
  3. Should I proceed with Batch 1, or would you like me to adjust the plan first?

Recommended: Proceed with Batch 1 (critical fixes) after approval.