用途:当在 Grove 包中新增或删除 <Waystone> 组件、CI 的 waystone-inventory 检查失败、或合并增减 waystone 的 PR 后,用该技能让清单与实际代码库使用保持一致。
涉及文件:.github/waystone-inventory.json 是放置情况的唯一事实来源,组件源码为 libs/engine/src/lib/ui/components/ui/waystone/Waystone.svelte,规范见 docs/specs/waystone-spec.md。
清单结构:顶层 waystones 含 total、breakdown(按包计数)与 bySlugs;slugs 数组每项含 slug、usageCount 及 instances(file、label、placement、size)。placement 类型包括 page-header、section-header、feature-card、inline-help、error-context、panel-header、auth-context。
使用方式:先搜索全部用法 rg '<Waystone' --type svelte -l 与 rg '<Waystone' --type svelte -A 3;再用 cat .github/waystone-inventory.json | jq '.waystones.total' 读取总数,rg '<Waystone' --type svelte | wc -l 统计实际数量;找出新增、删除或元数据变更后编辑 JSON,更新 total、breakdown、bySlugs,必要时新增 slug 条目或添加实例,并更新 lastUpdated、lastAuditedBy,最后提交。常用命令还包括按目录统计、提取唯一 slug 等。
新增 waystone 的检查清单:添加组件并确保导入(engine 中来自 $lib/ui,其他包来自 @autumnsgrove/lattice/ui);在清单中加入实例;新 slug 则新增条目;更新 total、breakdown、bySlugs;更新日期与审计者;确认知识库文章存在。
CI:.github/workflows/waystone-inventory.yml 在涉及 *.svelte 的 PR 上运行,统计数量并与清单 total 比较,不一致时评论 PR,定时(周四)运行发现漂移时创建 issue。限制:资料未提供更多错误处理、安装步骤或适用范围细节。