const fs = require('fs'); const skillMd = fs.readFileSync('SKILL_v1.md', 'utf-8'); function norm(text) { return (text || '').toLowerCase().replace(/[\s,;.::\/\-_=+()\[\]{}|'"]/g, ''); } function has(skill, kws) { const s = norm(skill); return kws.some(k => s.includes(norm(k))); } const cases = fs.readFileSync('../digest/test.jsonl', 'utf-8').split('\n').filter(Boolean).map(l => JSON.parse(l)); for (let i = 0; i < cases.length; i++) { const raw = cases[i].raw_data || {}; if (raw.flag_desc) { const found = has(skillMd, ['flag_desc', '分类标签']); console.log('Case', i+1, raw.word.slice(0,20), 'flag_desc:', raw.flag_desc, 'critical_found:', found); } if (raw.icon || raw.small_icon_desc || raw.icon_desc) { const found = has(skillMd, ['icon', 'media_urls']); console.log('Case', i+1, raw.word.slice(0,20), 'icon_crit_found:', found); } }