From fd1e24c5c2843a202d4d1d76b9d34841ad78a865 Mon Sep 17 00:00:00 2001 From: Alex Verkhovsky Date: Wed, 18 Mar 2026 14:32:55 -0600 Subject: [PATCH] fix: address PR review findings in skill validator - Guard against YAML comment lines in parseFrontmatterMultiline - Broaden PATH-02 to detect any installed_path mention, not just variable refs Co-Authored-By: Claude Opus 4.6 (1M context) --- tools/validate-skills.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/tools/validate-skills.js b/tools/validate-skills.js index 589193da5..997f8449a 100644 --- a/tools/validate-skills.js +++ b/tools/validate-skills.js @@ -135,6 +135,8 @@ function parseFrontmatterMultiline(content) { currentKey = line.slice(0, colonIndex).trim(); currentValue = line.slice(colonIndex + 1); } else if (currentKey !== null) { + // Skip YAML comment lines + if (line.trimStart().startsWith('#')) continue; // Continuation of multiline value currentValue += '\n' + line; } @@ -448,19 +450,19 @@ function validateSkill(skillDir) { }); } - // Check content for {installed_path} + // Check content for any mention of installed_path (variable ref, prose, bare text) const stripped = stripCodeBlocks(content); const lines = stripped.split('\n'); for (const [i, line] of lines.entries()) { - if (line.includes('{installed_path}')) { + if (/installed_path/i.test(line)) { findings.push({ rule: 'PATH-02', title: 'No installed_path Variable', severity: 'HIGH', file: relFile, line: i + 1, - detail: '`{installed_path}` reference found in content.', - fix: 'Replace `{installed_path}/path` with a relative path (`./path` or `../path`).', + detail: '`installed_path` reference found in content.', + fix: 'Remove all installed_path usage. Use relative paths (`./path` or `../path`) instead.', }); } }