# EVIDENCE — dsh-plugin-tailor v0.5.0 > 结案证据。命令、输出、环境都在这里;结论只引用本文件里出现过的数字。 环境:Windows 11 x64 · Node v24.12.0 · 2026-11-02。 ## 1. 测试 ```text $ npm test ℹ tests 18 ℹ pass 18 ℹ fail 0 ``` 覆盖:风格注册与 JSON schema、自定义风格加载/extends/错误跳过/脚手架、facts、audit 排序、plan、README 渲染/落盘安全与版式引擎、品牌确定性/对比度、坏链/坏图/坏锚点、宿主注册、CLI。 结构化风格:`styles/` 下 7 个内置 JSON + `schema.json` + `README.md`;自定义风格从 `.tailor/styles/` 或 `~/.tailor/styles/` 加载,`extends` 合并后校验,无效文件跳过并在 `repo_styles` 中报告。 ## 2. 自举审计(同一个 rubric) | 阶段 | 分数 | 等级 | 说明 | |---|---|---|---| | 只有代码 + 临时脚本 | 37 | D | 首屏、文档、证据、品牌全缺 | | 补 docs / CI / 社区 / 品牌素材 | 63 | C | 缺 README、demo、首屏素材引用 | | 用 `repo_readme` 生成双语草稿 | 96 | A | 结构齐了,但有 TODO、缺 demo | | 手写打磨 + demo GIF + 证据文档 | **100** | **A** | 0 gaps;`repo_verify` PASS | ```text $ node bin/tailor.mjs audit . --style=evidence score=100/100 · grade=A · gaps=0 ``` ## 3. 对真实仓库的审计 `dsh-plugin-resolver`(v0.1.3,成熟度已经很高): ```text $ node bin/tailor.mjs audit ../dsh-plugin-resolver --style=evidence score=81/100 · grade=B · gaps=10 ``` 缺口:文档目录、CONTRIBUTING/SECURITY/Issue 模板、README 的「用法」小节,以及 v0.5 新增的视觉口径(maskable/wordmark/tokens/浅色 banner)——真实缺口,不是为演示造出来的。 `repo_verify`: ```text $ node bin/tailor.mjs verify ../dsh-plugin-resolver --style=evidence result: PASS 相对链接可解析: 48 relative links checked 图片文件存在: all markdown images exist on disk 本地锚点存在: 26 anchors checked ``` ## 4. 性能(见 BENCHMARK.md 的方法) ```text $ node bench/micro.mjs . audit_ms: 0.01 readme_ms: 0.03 verify_ms: 0.03 facts_ms: 108.57 // 含 4 次 git 子进程 ``` ```text $ node bench/micro.mjs ../dsh-plugin-resolver facts_ms: 794.23 verify_ms: 0.86 ``` CLI(5 次中位数):`audit` 248 ms、`plan` 254 ms、`readme` 228 ms、`brand` 246 ms、`verify` 250 ms(含 ~200 ms Node 启动)。 ## 5. 生成物与包 - `assets/`:品牌引擎生成 12 个文件(icon、maskable、明暗 logo、明暗 wordmark、明暗 banner、social、brand-sheet、brand-tokens.json、README),另加手写的 pipeline / styles / stats / features / before-after 图;`demo.gif`、`concepts.gif`、`mark-motion.gif`、`actions.png`、`tools-*.png`、`audit-resolver.png` 由真实运行/截图/品牌 SVG 渲染。 - 品牌概念 12 个:`needle`、`stitch`、`quill`、`arcs`、`orbit`、`prompt`、`bubble`、`radar`、`hexstack`、`monogram`、`spark`、`layers`;本仓库默认 `needle`,`assets/brand-sheet.svg` 是 12 概念对照,`concepts.gif` 是逐个展示。 - `styles/`:7 个内置风格 JSON + `schema.json` + 字段说明;自定义风格从 `.tailor/styles/`(仓库)或 `~/.tailor/styles/`(本机)加载,`extends` 合并后校验。 - `npm pack` 包内容:`index.js`、`host/`、`logic/`、`bin/`、`styles/`、`cordis.patch.yml`、双语 README、docs、assets;`test/`、`bench/`、`.tailor/`、`demo/` 不进包(见 `npm pack --dry-run`)。 - 包体积:**958.3 kB**(tarball)/ **1.3 MB**(unpacked),**64 个文件**;GitHub Release 附带同一份 `.tgz`。 - 视觉:44 项检查中品牌维度 14 项、权重 20%;调色板 WCAG 对比度 QA PASS 6/6;`brand-tokens.json` 含 spacing / type / motion token。 - 动效:`mark-motion.gif` 6 帧,时长按 120/120/160/220/320/2000ms;只解释构造过程,不做装饰循环。 - 设计依据:[DESIGN.md](DESIGN.md)(emotion-design / apple-design / hallmark 的规则落成本仓库 token 与检查项)。 ## 6. npm 发布 ```text $ npm publish --access public + dsh-plugin-tailor@0.5.0 $ npm view dsh-plugin-tailor version 0.5.0 $ npm view dsh-plugin-tailor dist-tags --json { "latest": "0.5.0" } ``` - 安装冒烟:`npm install --prefix dsh-plugin-tailor@0.5.0` → `.bin/dsh-repo-tailor brand .` 输出 `contrast QA: PASS`(6 项);`styles --json` 返回 7 个内置风格与 `dirs`。 - registry tarball 与本地 `npm pack` 同为 64 files / 958.3 kB;`latest` 指向 0.5.0(2026-11-02)。 - registry 里另有一个无 bin 的 `0.0.0-stage` 占位版本,已 deprecate;`latest` 指向 0.5.0。 ## 7. 已知限制(不掩饰) - 100 分只说明「结构 + 证据 + 品牌 + 社区」都在,不说明文笔好;`repo_verify` 也不检查事实是否正确。 - 草稿的 `TODO(tailor)` 需要人填;填之前 `repo_verify` 会 warn。 - 只有 zh/en;不自动选风格;不自动 push / 发布。 - `collectFacts` 要起 git 子进程,是大仓库的主要耗时。 - SVG 字宽依赖系统字体;不同机器上截图/渲染会有轻微差异。 ## 8. 复现 ```sh npm test node bench/micro.mjs . node bin/tailor.mjs audit . --style=evidence node bin/tailor.mjs audit ../dsh-plugin-resolver --style=evidence node bin/tailor.mjs verify ../dsh-plugin-resolver --style=evidence node bin/tailor.mjs readme . --style=terminal --lang=both # dry-run,看另一个风格 ```