Skip to content

Repoint nine skill references that resolved from nowhere - #1102

Closed
johnml1135 wants to merge 1 commit into
mainfrom
fix/skill-reference-paths
Closed

Repoint nine skill references that resolved from nowhere#1102
johnml1135 wants to merge 1 commit into
mainfrom
fix/skill-reference-paths

Conversation

@johnml1135

@johnml1135 johnml1135 commented Aug 21, 2026

Copy link
Copy Markdown
Contributor

Nine cross-references in the Avalonia migration and WinApp skills pointed at nothing. An agent following one — lessons-learned.md sending you to references/architecture-patterns.md, say — got a miss and carried on without the guidance it was told to read.

Start here: .claude/skills/fieldworks-winforms-to-avalonia-migration/references/lessons-learned.md — three of the nine are in that one file, and the shape is identical in all nine.

Where to look:

  • Every target exists. Only the paths were wrong. They were written relative to the skill root while the citing file lives inside references/, so references/architecture-patterns.md resolved to references/references/architecture-patterns.md.
  • Seven become plain sibling names — what a file inside references/ needs to reach the file next to it.
  • Two genuinely cross skill boundaries and become repo-root paths: winforms-avalonia-parity.md cites parity-evidence.md in the migration skill, and architecture-patterns.md cites style-system.md in the Avalonia UI skill. Those two were never fixable as siblings.
  • Nothing else changed. No prose, no guidance, no renames, no moves. 8 insertions, 8 deletions across 6 files.

Deliberately not here: no checker is added to stop this recurring. Worth doing, but it belongs with whoever owns skill tooling rather than bolted onto a path fix.

Verification: every reference in every .claude markdown file was resolved from the directory it is written in — nine dangling before, zero after. gitlint clean. No build.ps1 or test.ps1: markdown only, no compiled code.

Next: review and merge — independent of #1098/#1099/#1100/#1101 and touches none of their files.


The nine, and where each now points
Citing file Was Now
fieldworks-winapp/navigation/winforms-avalonia-parity.md references/parity-evidence.md .claude/skills/fieldworks-winforms-to-avalonia-migration/references/parity-evidence.md
fieldworks-winapp/references/research.md references/how-to-update.md how-to-update.md
…migration/references/architecture-patterns.md fieldworks-avalonia-ui/references/style-system.md .claude/skills/fieldworks-avalonia-ui/references/style-system.md
…migration/references/control-exemplar-map.md references/lessons-learned.md lessons-learned.md
…migration/references/lessons-learned.md references/architecture-patterns.md architecture-patterns.md
…migration/references/lessons-learned.md references/migration-checklist.md migration-checklist.md
…migration/references/lessons-learned.md references/parity-evidence.md parity-evidence.md
…migration/references/migration-checklist.md references/lessons-learned.md lessons-learned.md
…migration/references/migration-checklist.md references/seam-catalog.md seam-catalog.md
How these were found

Not by reading. They surfaced while verifying that a different change — the skill compression in #1100 — had not broken any pointers. The check resolves every path-like .md reference inside .claude from the directory of the file that writes it, and reports the misses.

That check found one genuine regression introduced by #1099 (fixed there) and these nine, which predate all of this work. They are split into this PR precisely because they are unrelated to it: an unrelated fix riding along in a compression PR is how a reviewer loses track of what they approved.

The same check is what verifies this PR. It is currently a throwaway script rather than something in CI — see "deliberately not here" above.


This change is Reviewable

Nine cross-references in the Avalonia migration and WinApp skills were
written relative to the skill root while the citing file lives inside
references/, so they resolved to references/references/<name>.md and
pointed at nothing. Every target exists; only the paths were wrong.

Seven become plain sibling names, which is what a file inside
references/ needs to reach the file next to it. Two genuinely cross
skill boundaries and become repo-root paths: winforms-avalonia-parity
cites parity-evidence in the migration skill, and architecture-patterns
cites style-system in the Avalonia UI skill.

Nothing else changed. No prose, no guidance, no file moved or renamed.

Verified by resolving every reference in every .claude markdown file
from the directory it is written in: nine dangling before, none after.

Co-Authored-By: Claude Opus 5 <[email protected]>
@github-actions

Copy link
Copy Markdown

NUnit Tests

    1 files  ±0      1 suites  ±0   11m 12s ⏱️ +12s
5 853 tests ±0  5 772 ✅ ±0  81 💤 ±0  0 ❌ ±0 
5 862 runs  ±0  5 781 ✅ ±0  81 💤 ±0  0 ❌ ±0 

Results for commit a9cb7cd. ± Comparison against base commit 6f72671.

@codecov-commenter

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 38.34%. Comparing base (6f72671) to head (a9cb7cd).

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1102   +/-   ##
=======================================
  Coverage   38.33%   38.34%           
=======================================
  Files        1507     1507           
  Lines      350580   350580           
  Branches    40293    40293           
=======================================
+ Hits       134410   134415    +5     
+ Misses     186941   186937    -4     
+ Partials    29229    29228    -1     

see 4 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@johnml1135

Copy link
Copy Markdown
Contributor Author

Consolidated into #1100 by cherry-pick; the commit is preserved verbatim there. Closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants