@fxri/toolkit 1.9.3 → 1.9.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,68 +1,72 @@
1
- # CHANGELOG 格式规范
2
-
3
- ## 1. 文件结构(中文示例)
4
-
5
- ```markdown
6
- ## 1.5.3
7
-
8
- > 2026-09-03 发布
9
-
10
- ### 🐛 问题修复
11
-
12
- - 修复xxx:……
13
-
14
- ### 📦 其他变更
15
-
16
- - 补齐某处兜底逻辑
17
- ```
18
-
19
- 规则:
20
-
21
- - 版本标题 `## {版本号}`;隔一行后接引用行 `> {YYYY-MM-DD} 发布`(标题与日期行之间保留一个空行)
22
- - 分组标题 = emoji + 组名,一行一组,按**语义分组顺序**输出——重大变更 → 新增功能 → 功能调整 → 优化改进 → 问题修复 → 文档更新 → 清理移除 → 依赖变更 → 其他变更;空组省略
23
- - 条目一行一条,项目语言句式(中文条目句末不加句号),与仓库既有风格一致
24
- - ⚠️ 变更集条目以 `- ` 开头时,changesets 会写入 `- - 条目` 首行并把后续行缩进 2 空格(伪影);`toolkit changelog version/format` 会自动还原为顶层条目,手工模式需手动清理
25
- - 分组标题集合随版本演进而变化;**历史版本块保留当时口径,`toolkit changelog format` 不追溯改写**(只归类 changesets 本次新写入的英文源标题块)
26
-
27
- ## 2. 语义分组归类
28
-
29
- 分组维度(条目**变更类型**)与版本号维度(bump)正交:条目归入哪一组,只看条目自带的**类型前缀**,与它来自 `Major/Minor/Patch Changes` 哪一块无关。
30
-
31
- **类型前缀 → 语义槽位**(全局一份、全语言共用,故任一语言的条目在任何输出语言下都能正确归组):
32
-
33
- | 类型前缀(中 / 英) | 语义槽位 | zh 组标题 | en 组标题 |
34
- | --- | --- | --- | --- |
35
- | `重大:` / `Breaking:` | `breaking` | `### 🚨 重大变更` | `### 🚨 Breaking Changes` |
36
- | `新增:` / `Added:` | `added` | `### ✨ 新增功能` | `### ✨ Added` |
37
- | `修改:` / `Changed:` | `changed` | `### 🔧 功能调整` | `### 🔧 Changed` |
38
- | `优化:` / `Improved:` | `improved` | `### ⚡ 优化改进` | `### ⚡ Improved` |
39
- | `修复:` / `Fixed:` | `fixed` | `### 🐛 问题修复` | `### 🐛 Fixed` |
40
- | `文档:` / `Docs:` | `docs` | `### 📝 文档更新` | `### 📝 Docs` |
41
- | `清理:` / `Removed:` | `removed` | `### 🧹 清理移除` | `### 🧹 Removed` |
42
- | 源文本 `- Updated dependencies` | `deps` | `### 🔗 依赖变更` | `### 🔗 Dependency Updates` |
43
- | 无前缀兜底 | `other` | `### 📦 其他变更` | `### 📦 Other` |
44
-
1
+ # CHANGELOG 格式规范
2
+
3
+ ## 1. 文件结构(中文示例)
4
+
5
+ ```markdown
6
+ ## 1.5.3
7
+
8
+ > 2026-09-03 发布
9
+
10
+ ### 🐛 问题修复
11
+
12
+ - 修复xxx:……
13
+
14
+ ### 📦 其他变更
15
+
16
+ - 补齐某处兜底逻辑
17
+ ```
18
+
19
+ 规则:
20
+
21
+ - 版本标题 `## {版本号}`;隔一行后接引用行 `> {YYYY-MM-DD} 发布`(标题与日期行之间保留一个空行)
22
+ - 分组标题 = emoji + 组名,一行一组,按**语义分组顺序**输出——重大变更 → 新增功能 → 功能调整 → 优化改进 → 问题修复 → 文档更新 → 清理移除 → 依赖变更 → 其他变更;空组省略
23
+ - 条目一行一条,项目语言句式(中文条目句末不加句号),与仓库既有风格一致
24
+ - ⚠️ 变更集条目以 `- ` 开头时,changesets 会写入 `- - 条目` 首行并把后续行缩进 2 空格(伪影);`toolkit changelog version/format` 会自动还原为顶层条目,手工模式需手动清理
25
+ - 分组标题集合随版本演进而变化;**历史版本块保留当时口径,`toolkit changelog format` 不追溯改写**(只归类 changesets 本次新写入的英文源标题块)
26
+
27
+ ## 2. 语义分组归类
28
+
29
+ 分组维度(条目**变更类型**)与版本号维度(bump)正交:条目归入哪一组,只看条目自带的**类型前缀**,与它来自 `Major/Minor/Patch Changes` 哪一块无关。
30
+
31
+ **类型前缀 → 语义槽位**(全局一份、全语言共用,故任一语言的条目在任何输出语言下都能正确归组):
32
+
33
+ | 类型前缀(中 / 英) | 语义槽位 | zh 组标题 | en 组标题 |
34
+ | --- | --- | --- | --- |
35
+ | `重大:` / `Breaking:` | `breaking` | `### 🚨 重大变更` | `### 🚨 Breaking Changes` |
36
+ | `新增:` / `Added:` | `added` | `### ✨ 新增功能` | `### ✨ Added` |
37
+ | `修改:` / `Changed:` | `changed` | `### 🔧 功能调整` | `### 🔧 Changed` |
38
+ | `优化:` / `Improved:` | `improved` | `### ⚡ 优化改进` | `### ⚡ Improved` |
39
+ | `修复:` / `Fixed:` | `fixed` | `### 🐛 问题修复` | `### 🐛 Fixed` |
40
+ | `文档:` / `Docs:` | `docs` | `### 📝 文档更新` | `### 📝 Docs` |
41
+ | `清理:` / `Removed:` | `removed` | `### 🧹 清理移除` | `### 🧹 Removed` |
42
+ | `依赖:` / 源文本 `- Updated dependencies` | `deps` | `### 🔗 依赖变更` | `### 🔗 Dependency Updates` |
43
+ | 无前缀兜底 | `other` | `### 📦 其他变更` | `### 📦 Other` |
44
+
45
45
  **无前缀条目的兜底规则**:按条目**所属源组标题**声明的影响级别归组——`### Major Changes` → `breaking`、`### Minor Changes` → `added`、`### Patch Changes` → `other`;不从版本号推导。
46
46
 
47
- **依赖条目不走前缀解析**:源组标题 `### Dependent Changes` 整块,以及源文本 `- Updated dependencies`(含缩进子项)一律归入 `deps` 槽位。
48
-
49
- 同一槽位来自多个源块时合并为单组,组内保持条目原出现顺序;缩进续行随父条目整体迁移。
50
-
51
- **类型 → 建议 bump**(撰写变更集时按此选影响级别):
52
-
53
- | 类型前缀 | 建议 bump |
54
- | --- | --- |
55
- | `重大:` | major |
56
- | `新增:` / `修改:` | minor |
57
- | `优化:` / `修复:` / `清理:` / `文档:` | patch |
58
-
59
- ## 3. 多语言扩展
60
-
61
- 每种语言约定四段结构:
62
-
63
- - `groups`(可选):语义分组表,每项 `{ slot, title, prefixes? }`——`slot` 取自全局语义槽位,`title` 为本语言组标题,`prefixes` 为本语言自有前缀(可选,识别时与全局前缀表取并集);缺省时退化为纯替换(仅 `replacements` 生效)
64
- - `replacements`:兜底替换映射表(源标题 → 目标标题)
65
- - `deps`:依赖更新条目固定文案
66
- - `released`:发布日期行后缀(中文为「发布」,英文为「released」;同时用于识别既有日期行,故自定义语言填非「发布/released」值也能幂等)
67
-
68
- 新增语言时先补全四段,再按映射转换标题、润色条目。
47
+ **追溯历史块的兜底规则**(`--history`):历史块没有英文源组标题,改按**所属既有组标题**查槽位——先查当前语言组标题,再查历史组标题表(如 `### 🐛 补丁修复` → `fixed`);两处都识别不出则整组连同标题原样保留。
48
+
49
+ **依赖条目不走前缀解析**:源组标题 `### Dependent Changes` 整块,以及源文本 `- Updated dependencies`(含缩进子项)一律归入 `deps` 槽位。
50
+
51
+ **归类后剥离类型前缀**:条目归入槽位后,其已被识别的 `类型:` 前缀被剥离(`- 修复:xxx` → `- xxx`)——前缀只是归类信号,类型已由分组标题承接,留在明细里属冗余。未识别的前缀(如正文里的 `说明:`)与依赖源条目原样保留,剥离后文本为空也不改动。默认模式与 `--history` 追溯模式同此规则。
52
+
53
+ 同一槽位来自多个源块时合并为单组,组内保持条目原出现顺序;缩进续行随父条目整体迁移。
54
+
55
+ **类型 → 建议 bump**(撰写变更集时按此选影响级别):
56
+
57
+ | 类型前缀 | 建议 bump |
58
+ | --- | --- |
59
+ | `重大:` | major |
60
+ | `新增:` / `修改:` | minor |
61
+ | `优化:` / `修复:` / `清理:` / `文档:` | patch |
62
+
63
+ ## 3. 多语言扩展
64
+
65
+ 每种语言约定四段结构:
66
+
67
+ - `groups`(可选):语义分组表,每项 `{ slot, title, prefixes? }`——`slot` 取自全局语义槽位,`title` 为本语言组标题,`prefixes` 为本语言自有前缀(可选,识别时与全局前缀表取并集);缺省时退化为纯替换(仅 `replacements` 生效)
68
+ - `replacements`:兜底替换映射表(源标题 → 目标标题)
69
+ - `deps`:依赖更新条目固定文案
70
+ - `released`:发布日期行后缀(中文为「发布」,英文为「released」;同时用于识别既有日期行,故自定义语言填非「发布/released」值也能幂等)
71
+
72
+ 新增语言时先补全四段,再按映射转换标题、润色条目。