@mycodemap/mycodemap 0.3.7 → 0.4.1

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.
Files changed (37) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/dist/cli/commands/ship/analyzer.d.ts +1 -1
  3. package/dist/cli/commands/ship/analyzer.d.ts.map +1 -1
  4. package/dist/cli/commands/ship/analyzer.js +8 -1
  5. package/dist/cli/commands/ship/analyzer.js.map +1 -1
  6. package/dist/cli/commands/ship/checker.d.ts +1 -1
  7. package/dist/cli/commands/ship/checker.d.ts.map +1 -1
  8. package/dist/cli/commands/ship/checker.js +18 -4
  9. package/dist/cli/commands/ship/checker.js.map +1 -1
  10. package/dist/cli/commands/ship/index.js +2 -2
  11. package/dist/cli/commands/ship/index.js.map +1 -1
  12. package/dist/cli/commands/ship/monitor.d.ts +17 -2
  13. package/dist/cli/commands/ship/monitor.d.ts.map +1 -1
  14. package/dist/cli/commands/ship/monitor.js +116 -29
  15. package/dist/cli/commands/ship/monitor.js.map +1 -1
  16. package/dist/cli/commands/ship/pipeline.d.ts.map +1 -1
  17. package/dist/cli/commands/ship/pipeline.js +97 -18
  18. package/dist/cli/commands/ship/pipeline.js.map +1 -1
  19. package/dist/cli/commands/ship/publisher.d.ts +12 -2
  20. package/dist/cli/commands/ship/publisher.d.ts.map +1 -1
  21. package/dist/cli/commands/ship/publisher.js +227 -29
  22. package/dist/cli/commands/ship/publisher.js.map +1 -1
  23. package/dist/cli/commands/ship/rules/quality-rules.d.ts +2 -1
  24. package/dist/cli/commands/ship/rules/quality-rules.d.ts.map +1 -1
  25. package/dist/cli/commands/ship/rules/quality-rules.js +106 -35
  26. package/dist/cli/commands/ship/rules/quality-rules.js.map +1 -1
  27. package/dist/cli/commands/ship/versioner.d.ts +1 -1
  28. package/dist/cli/commands/ship/versioner.d.ts.map +1 -1
  29. package/dist/cli/commands/ship/versioner.js +4 -2
  30. package/dist/cli/commands/ship/versioner.js.map +1 -1
  31. package/dist/cli/index.js +1 -1
  32. package/dist/cli/index.js.map +1 -1
  33. package/docs/PUBLISHING.md +18 -4
  34. package/docs/ai-guide/COMMANDS.md +1 -1
  35. package/docs/ai-guide/PROMPTS.md +38 -0
  36. package/package.json +1 -1
  37. package/scripts/pre-release-check.js +21 -3
@@ -3,6 +3,86 @@
3
3
  import { execSync } from 'child_process';
4
4
  import fs from 'fs/promises';
5
5
  import path from 'path';
6
+ const LOCAL_RELEASE_COMMANDS = [
7
+ { name: 'docs:check:pre-release', command: 'npm run docs:check:pre-release' },
8
+ { name: 'check:all', command: 'npm run check:all' },
9
+ { name: 'build', command: 'npm run build' },
10
+ { name: 'validate-pack', command: 'npm run validate-pack' }
11
+ ];
12
+ const COMMAND_MAX_BUFFER = 20 * 1024 * 1024;
13
+ function extractCommandError(error) {
14
+ if (!error || typeof error !== 'object') {
15
+ return String(error);
16
+ }
17
+ const stderr = 'stderr' in error && typeof error.stderr === 'string'
18
+ ? error.stderr
19
+ : 'stderr' in error && Buffer.isBuffer(error.stderr)
20
+ ? error.stderr.toString('utf-8')
21
+ : '';
22
+ const stdout = 'stdout' in error && typeof error.stdout === 'string'
23
+ ? error.stdout
24
+ : 'stdout' in error && Buffer.isBuffer(error.stdout)
25
+ ? error.stdout.toString('utf-8')
26
+ : '';
27
+ const message = error instanceof Error ? error.message : String(error);
28
+ return [message, stderr.trim(), stdout.trim()].filter(Boolean).join('\n');
29
+ }
30
+ async function runLocalReleaseChecks() {
31
+ if (process.env.SHIP_IN_CI === '1') {
32
+ return {
33
+ passed: true,
34
+ message: undefined,
35
+ details: 'SHIP_IN_CI=1,跳过本地重复检查'
36
+ };
37
+ }
38
+ const failed = [];
39
+ const details = [];
40
+ for (const { name, command } of LOCAL_RELEASE_COMMANDS) {
41
+ try {
42
+ execSync(command, {
43
+ encoding: 'utf-8',
44
+ stdio: 'pipe',
45
+ maxBuffer: COMMAND_MAX_BUFFER
46
+ });
47
+ }
48
+ catch (error) {
49
+ failed.push(name);
50
+ details.push(`[${name}]\n${extractCommandError(error)}`);
51
+ }
52
+ }
53
+ if (failed.length > 0) {
54
+ return {
55
+ passed: false,
56
+ message: `检查未全部通过: ${failed.join(', ')}`,
57
+ details: details.join('\n\n')
58
+ };
59
+ }
60
+ return { passed: true };
61
+ }
62
+ async function readCoveragePercentage() {
63
+ const coveragePath = path.join(process.cwd(), 'coverage', 'lcov.info');
64
+ try {
65
+ await fs.access(coveragePath);
66
+ const content = await fs.readFile(coveragePath, 'utf-8');
67
+ const recordPattern = /LF:(\d+)[\s\S]*?LH:(\d+)/g;
68
+ let totalLines = 0;
69
+ let coveredLines = 0;
70
+ let match;
71
+ match = recordPattern.exec(content);
72
+ while (match) {
73
+ totalLines += parseInt(match[1], 10) || 0;
74
+ coveredLines += parseInt(match[2], 10) || 0;
75
+ match = recordPattern.exec(content);
76
+ }
77
+ if (totalLines === 0) {
78
+ return null;
79
+ }
80
+ return Math.round((coveredLines / totalLines) * 10000) / 100;
81
+ }
82
+ catch {
83
+ return null;
84
+ }
85
+ }
6
86
  // mustPass 检查(失败即停止)
7
87
  export const mustPassRules = [
8
88
  {
@@ -33,20 +113,23 @@ export const mustPassRules = [
33
113
  };
34
114
  }
35
115
  },
116
+ {
117
+ name: 'allChecksPass',
118
+ message: '发布前检查必须全部通过',
119
+ blocking: true,
120
+ check: async () => runLocalReleaseChecks()
121
+ },
36
122
  {
37
123
  name: 'noBreakingWithoutMajor',
38
124
  message: '检测到破坏性变更,必须使用 major 版本',
39
125
  blocking: true,
40
126
  check: (ctx) => {
41
- const hasBreaking = ctx.commits.some(c => c.isBreaking);
42
- // 检查 message 中是否包含破坏性变更标记
43
- const breakingInMessage = ctx.commits.some(c => /breaking[_-]change|BREAKING/i.test(c.message));
44
- const hasBreakingChange = hasBreaking || breakingInMessage;
45
- // 如果有破坏性变更,不阻止(让 versioner 决定 bump 到 major)
46
- // 这里只检查是否在 non-master 分支有破坏性变更
127
+ const hasBreakingChange = ctx.commits.some(c => c.isBreaking || /breaking[_-]change|BREAKING/i.test(c.message));
47
128
  return {
48
- passed: true, // 让发布流程继续,版本计算会处理
49
- message: undefined
129
+ passed: !hasBreakingChange || ctx.versionType === 'major',
130
+ message: !hasBreakingChange || ctx.versionType === 'major'
131
+ ? undefined
132
+ : '检测到 breaking change,但建议版本不是 major'
50
133
  };
51
134
  }
52
135
  }
@@ -58,25 +141,17 @@ export const shouldPassRules = [
58
141
  message: '测试覆盖率应该 > 80%',
59
142
  blocking: false,
60
143
  check: async () => {
61
- try {
62
- // 尝试读取 coverage/lcov.info
63
- const coveragePath = path.join(process.cwd(), 'coverage', 'lcov.info');
64
- await fs.access(coveragePath);
65
- const content = await fs.readFile(coveragePath, 'utf-8');
66
- const lineCoverageMatch = content.match(/LF:\d+\s+LH:\d+\s+BRF:\d+\s+BRH:\d+/g);
67
- if (lineCoverageMatch) {
68
- // 简单的覆盖率估算
69
- const hasGoodCoverage = lineCoverageMatch.length > 0;
70
- return {
71
- passed: hasGoodCoverage,
72
- message: hasGoodCoverage ? undefined : '测试覆盖率可能不足'
73
- };
74
- }
75
- }
76
- catch {
77
- // coverage 文件不存在,跳过此检查
144
+ const percentage = await readCoveragePercentage();
145
+ if (percentage === null) {
146
+ return {
147
+ passed: false,
148
+ message: '未找到 coverage/lcov.info,无法验证覆盖率'
149
+ };
78
150
  }
79
- return { passed: true, message: undefined }; // 跳过,不影响
151
+ return {
152
+ passed: percentage >= 80,
153
+ message: percentage >= 80 ? undefined : `测试覆盖率仅 ${percentage}%`
154
+ };
80
155
  }
81
156
  },
82
157
  {
@@ -86,19 +161,15 @@ export const shouldPassRules = [
86
161
  check: async (ctx) => {
87
162
  try {
88
163
  const changelogPath = path.join(process.cwd(), 'CHANGELOG.md');
89
- const changelogStat = await fs.stat(changelogPath);
90
- const changelogModified = changelogStat.mtime;
91
- // 获取最新 commit 的时间
92
- const latestCommitTime = execSync('git log -1 --format=%ct', { encoding: 'utf-8' }).trim();
93
- const commitTime = new Date(parseInt(latestCommitTime) * 1000);
94
- const isUpdated = changelogModified >= commitTime;
164
+ await fs.access(changelogPath);
165
+ const isUpdated = ctx.changedFiles.includes('CHANGELOG.md');
95
166
  return {
96
167
  passed: isUpdated,
97
- message: isUpdated ? undefined : 'CHANGELOG.md 自上次提交后未更新'
168
+ message: isUpdated ? undefined : '自上次 tag 以来未检测到 CHANGELOG.md 变更'
98
169
  };
99
170
  }
100
171
  catch {
101
- return { passed: true, message: undefined }; // 文件不存在,跳过
172
+ return { passed: false, message: '缺少 CHANGELOG.md' };
102
173
  }
103
174
  }
104
175
  },
@@ -107,7 +178,7 @@ export const shouldPassRules = [
107
178
  message: 'Commit 消息应该遵循 conventional commits 规范',
108
179
  blocking: false,
109
180
  check: (ctx) => {
110
- const conventionalPattern = /^(feat|fix|docs|style|refactor|test|chore|ci|perf|breaking)(\(.+\))?:/;
181
+ const conventionalPattern = /^(feat|fix|docs|style|refactor|test|chore|ci|perf|breaking|feature|bugfix|hotfix|config|infra|enhance|improvement)(\(.+\))?:/i;
111
182
  const allFollowConvention = ctx.commits.every(c => conventionalPattern.test(c.type + ':' + c.message));
112
183
  return {
113
184
  passed: allFollowConvention,
@@ -1 +1 @@
1
- {"version":3,"file":"quality-rules.js","sourceRoot":"","sources":["../../../../../src/cli/commands/ship/rules/quality-rules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"quality-rules.js","sourceRoot":"","sources":["../../../../../src/cli/commands/ship/rules/quality-rules.ts"],"names":[],"mappings":"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"}
@@ -8,5 +8,5 @@ export interface VersionResult {
8
8
  shouldRelease: boolean;
9
9
  }
10
10
  export declare function calculateVersion(analyzeResult: AnalyzeResult): Promise<VersionResult>;
11
- export declare function formatVersionOutput(result: VersionResult): string;
11
+ export declare function formatVersionOutput(result: VersionResult, verbose?: boolean): string;
12
12
  //# sourceMappingURL=versioner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"versioner.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/ship/versioner.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAqB,MAAM,0BAA0B,CAAC;AAE1E,MAAM,WAAW,aAAa;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,OAAO,CAAC;CACxB;AAuDD,wBAAsB,gBAAgB,CAAC,aAAa,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC,CAwB3F;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAajE"}
1
+ {"version":3,"file":"versioner.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/ship/versioner.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAqB,MAAM,0BAA0B,CAAC;AAE1E,MAAM,WAAW,aAAa;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,OAAO,CAAC;CACxB;AAuDD,wBAAsB,gBAAgB,CAAC,aAAa,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC,CAwB3F;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,EAAE,OAAO,GAAE,OAAe,GAAG,MAAM,CAe3F"}
@@ -76,16 +76,18 @@ export async function calculateVersion(analyzeResult) {
76
76
  shouldRelease
77
77
  };
78
78
  }
79
- export function formatVersionOutput(result) {
79
+ export function formatVersionOutput(result, verbose = false) {
80
80
  const lines = [];
81
81
  if (!result.shouldRelease) {
82
82
  lines.push(`推荐版本: 无需发布`);
83
83
  lines.push(` 原因: ${result.reason}`);
84
84
  }
85
85
  else {
86
- const typeLabel = result.versionType.toUpperCase();
87
86
  lines.push(`推荐版本: v${result.suggestedVersion} (${result.versionType})`);
88
87
  lines.push(` 原因: ${result.reason}`);
88
+ if (verbose) {
89
+ lines.push(` 当前版本: v${result.currentVersion}`);
90
+ }
89
91
  }
90
92
  return lines.join('\n');
91
93
  }
@@ -1 +1 @@
1
- {"version":3,"file":"versioner.js","sourceRoot":"","sources":["../../../../src/cli/commands/ship/versioner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"versioner.js","sourceRoot":"","sources":["../../../../src/cli/commands/ship/versioner.ts"],"names":[],"mappings":"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"}
package/dist/cli/index.js CHANGED
@@ -199,7 +199,7 @@ program
199
199
  // Ship 命令
200
200
  program
201
201
  .command('ship')
202
- .description('一键智能发布 - 自动分析变更、计算版本、运行检查、发布 npm')
202
+ .description('一键智能发布 - 自动分析变更、计算版本、运行检查、推送 tag 并触发 GitHub Actions 发布')
203
203
  .option('--dry-run', '仅分析,不发布')
204
204
  .option('--verbose', '显示详细输出')
205
205
  .option('--yes, -y', '置信度 60-75 时自动确认(不询问)')
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AAEA,kEAAkE;AAClE,6BAA6B;AAE7B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEvF,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,2DAA2D;AAC3D,qBAAqB,EAAE,CAAC;AAExB,6DAA6D;AAC7D,gBAAgB,EAAE,CAAC;AAEnB,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAE3C,oBAAoB;AACpB,IAAI,CAAC;IACH,MAAM,YAAY,GAAG,gBAAgB,EAAE,CAAC;IACxC,IAAI,YAAY,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QAC5C,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACpC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IACf,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACtE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,SAAS,uBAAuB,CAAI,WAAmB,EAAE,MAA4C;IACnG,OAAO,KAAK,EAAE,OAAU,EAAE,EAAE;QAC1B,IAAI,yBAAyB,CAAC,WAAW,CAAC,EAAE,CAAC;YAC3C,IAAI,CAAC;gBACH,kBAAkB,EAAE,CAAC;YACvB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACtE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC,CAAC;AACJ,CAAC;AAED,OAAO;KACJ,IAAI,CAAC,WAAW,CAAC;KACjB,KAAK,CAAC,SAAS,CAAC,CAAE,SAAS;KAC3B,WAAW,CAAC,uCAAuC,CAAC;KACpD,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,gBAAgB,CAAC;KAC7B,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC;KAC7B,MAAM,CAAC,WAAW,CAAC,CAAC;AAEvB,OAAO;KACJ,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,QAAQ,CAAC;KACrB,MAAM,CAAC,mBAAmB,EAAE,0BAA0B,EAAE,QAAQ,CAAC;KACjE,MAAM,CAAC,oBAAoB,EAAE,MAAM,EAAE,YAAY,CAAC;KAClD,MAAM,CAAC,cAAc,EAAE,+BAA+B,EAAE,KAAK,CAAC;KAC9D,MAAM,CAAC,eAAe,CAAC,CAAC;AAE3B,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,iBAAiB,CAAC;KAC9B,MAAM,CAAC,mBAAmB,EAAE,0BAA0B,EAAE,QAAQ,CAAC;KACjE,MAAM,CAAC,oBAAoB,EAAE,MAAM,EAAE,YAAY,CAAC;KAClD,MAAM,CAAC,cAAc,EAAE,aAAa,CAAC;KACrC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC;KAChC,MAAM,CAAC,cAAc,EAAE,YAAY,CAAC;KACpC,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,oBAAoB,CAAC;KACjC,MAAM,CAAC,qBAAqB,EAAE,QAAQ,CAAC;KACvC,MAAM,CAAC,qBAAqB,EAAE,MAAM,CAAC;KACrC,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAAC;KACnC,MAAM,CAAC,qBAAqB,EAAE,MAAM,CAAC;KACrC,MAAM,CAAC,sBAAsB,EAAE,QAAQ,EAAE,IAAI,CAAC;KAC9C,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC;KACjC,MAAM,CAAC,cAAc,EAAE,0CAA0C,CAAC;KAClE,MAAM,CAAC,eAAe,EAAE,QAAQ,CAAC;KACjC,MAAM,CAAC,aAAa,EAAE,6BAA6B,CAAC;KACpD,MAAM,CAAC,uBAAuB,EAAE,WAAW,EAAE,GAAG,CAAC;KACjD,MAAM,CAAC,kBAAkB,EAAE,mBAAmB,CAAC;KAC/C,MAAM,CAAC,sBAAsB,EAAE,YAAY,CAAC;KAC5C,MAAM,CAAC,wBAAwB,EAAE,6BAA6B,EAAE,SAAS,CAAC;KAC1E,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC;KACrC,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,YAAY,CAAC;KACzB,MAAM,CAAC,qBAAqB,EAAE,WAAW,CAAC;KAC1C,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC;KACjC,MAAM,CAAC,cAAc,EAAE,0CAA0C,CAAC;KAClE,MAAM,CAAC,WAAW,CAAC,CAAC;AAEvB,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,YAAY,CAAC;KACzB,MAAM,CAAC,sBAAsB,EAAE,MAAM,EAAE,GAAG,CAAC;KAC3C,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC;KACjC,MAAM,CAAC,cAAc,EAAE,0CAA0C,CAAC;KAClE,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,0BAA0B,CAAC;KACvC,MAAM,CAAC,mBAAmB,EAAE,YAAY,CAAC;KACzC,MAAM,CAAC,cAAc,EAAE,yBAAyB,CAAC;KACjD,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC;KACjC,MAAM,CAAC,cAAc,EAAE,0CAA0C,CAAC;KAClE,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAE7B,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,aAAa,CAAC;KAC1B,MAAM,CAAC,mBAAmB,EAAE,cAAc,CAAC;KAC3C,MAAM,CAAC,kBAAkB,EAAE,QAAQ,CAAC;KACpC,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC;KACjC,MAAM,CAAC,cAAc,EAAE,0CAA0C,CAAC;KAClE,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,OAAO;KACJ,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,mBAAmB,CAAC;KAChC,MAAM,CAAC,qBAAqB,EAAE,sFAAsF,CAAC;KACrH,MAAM,CAAC,0BAA0B,EAAE,WAAW,CAAC;KAC/C,MAAM,CAAC,2BAA2B,EAAE,OAAO,CAAC;KAC5C,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC;KACvD,MAAM,CAAC,qBAAqB,EAAE,QAAQ,EAAE,GAAG,CAAC;KAC5C,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC;KACnC,MAAM,CAAC,uBAAuB,EAAE,WAAW,CAAC;KAC5C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC;KAC7B,MAAM,CAAC,cAAc,EAAE,kEAAkE,CAAC;KAC1F,MAAM,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;KACtD,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;IACjE,iCAAiC;IACjC,MAAM,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,CAAC,CAAC,CAAC;AAEL,gBAAgB;AAChB,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AAE9B,cAAc;AACd,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;AAEpC,YAAY;AACZ,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,YAAY,CAAC;KACzB,MAAM,CAAC,oBAAoB,EAAE,MAAM,EAAE,YAAY,CAAC;KAClD,MAAM,CAAC,qBAAqB,EAAE,SAAS,EAAE,GAAG,CAAC;KAC7C,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC;KACjC,MAAM,CAAC,eAAe,EAAE,QAAQ,CAAC;KACjC,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,UAAU;AACV,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,UAAU,CAAC;KACvB,QAAQ,CAAC,cAAc,EAAE,yBAAyB,CAAC;KACnD,MAAM,CAAC,sBAAsB,EAAE,QAAQ,EAAE,IAAI,CAAC;KAC9C,MAAM,CAAC,iBAAiB,EAAE,+BAA+B,CAAC;KAC1D,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC;KACjC,MAAM,CAAC,qBAAqB,EAAE,QAAQ,CAAC;KACvC,MAAM,CAAC,qBAAqB,EAAE,IAAI,CAAC;KACnC,MAAM,CAAC,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,CAAC;KACtD,MAAM,CAAC,eAAe,EAAE,QAAQ,CAAC;KACjC,MAAM,CAAC,KAAK,EAAE,UAAkB,EAAE,OAAgC,EAAE,EAAE;IACrE,MAAM,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC,CAAC,CAAC;AAEL,+CAA+C;AAC/C,aAAa;AACb,+CAA+C;AAE/C,YAAY;AACZ,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,gCAAgC,CAAC;KAC7C,MAAM,CAAC,qBAAqB,EAAE,OAAO,EAAE,MAAM,CAAC;KAC9C,MAAM,CAAC,qBAAqB,EAAE,OAAO,EAAE,SAAS,CAAC;KACjD,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC;KAClC,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC;KAClC,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,YAAY;AACZ,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,mBAAmB,CAAC;KAChC,QAAQ,CAAC,UAAU,EAAE,mCAAmC,CAAC;KACzD,MAAM,CAAC,qBAAqB,EAAE,QAAQ,CAAC;KACvC,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,UAAU;AACV,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,kCAAkC,CAAC;KAC/C,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC;KAC9B,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC;KAC7B,MAAM,CAAC,WAAW,EAAE,sBAAsB,CAAC;KAC3C,MAAM,CAAC,WAAW,CAAC,CAAC;AAEvB,OAAO,CAAC,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,10 @@
1
1
  # NPM 自动发布指南
2
- 3
3
2
  > 本文档说明如何配置和触发 @mycodemap/mycodemap 的自动发布流程
4
3
 
5
4
  ## 📋 发布流程概览
6
5
 
7
- ```
8
- 本地执行 release.sh → 推送 tag → GitHub Actions → 发布到 NPM
6
+ ```text
7
+ codemap ship / release.sh → 创建版本提交 → 推送 tag → GitHub Actions → 发布到 NPM
9
8
  ```
10
9
 
11
10
  ## 🔧 前置配置
@@ -49,7 +48,22 @@
49
48
 
50
49
  ## 🚀 发布操作
51
50
 
52
- ### 方法 1: 使用发布脚本 (推荐)
51
+ ### 方法 0: 使用 `codemap ship` (推荐)
52
+
53
+ ```bash
54
+ # 自动分析版本、运行检查、推送 tag,并监控 GitHub Actions
55
+ codemap ship
56
+
57
+ # 仅预览版本和检查结果
58
+ codemap ship --dry-run
59
+
60
+ # 置信度处于 60-75 时自动确认
61
+ codemap ship --yes
62
+ ```
63
+
64
+ `codemap ship` **不会在本地执行 `npm publish`**;它会创建版本提交、推送 tag,然后由 `.github/workflows/publish.yml` 完成真正的 OIDC 发布。
65
+
66
+ ### 方法 1: 使用发布脚本
53
67
 
54
68
  ```bash
55
69
  # 进入项目目录
@@ -377,7 +377,7 @@ mycodemap ship --yes # 置信度 60-75 时自动确认
377
377
  1. **ANALYZE** - 分析 git commits,检测变更类型
378
378
  2. **VERSION** - 基于 conventional commits 计算版本号
379
379
  3. **CHECK** - mustPass/shouldPass 检查 + 置信度评分
380
- 4. **PUBLISH** - npm 发布 + git tag
380
+ 4. **PUBLISH** - 创建版本提交 + git tag + push 触发 GitHub Actions
381
381
  5. **MONITOR** - GitHub Actions CI 状态监控
382
382
 
383
383
  **置信度判定:**
@@ -394,6 +394,7 @@
394
394
  | 看模块关系 | 模板 6: 依赖分析 |
395
395
  | 找复杂代码 | 模板 7: 复杂度分析 |
396
396
  | 做新功能 | 模板 8: 新功能实现 |
397
+ | 验证自动发布 | 模板 9: ship 发布验证 |
397
398
 
398
399
  ### 如何自定义模板
399
400
 
@@ -412,3 +413,40 @@
412
413
  → 变更影响分析 (模板 2)
413
414
  → 代码审查 (模板 5)
414
415
  ```
416
+
417
+ ---
418
+
419
+ ## 模板 9: ship 发布验证
420
+
421
+ **适用场景**: 需要验证 `codemap ship` 是否会通过 tag push 触发 GitHub Actions,而不是本地直接发布
422
+
423
+ ```markdown
424
+ 我需要验证 `codemap ship` 的自动发布链路是否完整。
425
+
426
+ 请执行以下步骤:
427
+
428
+ 1. **先做预检查**
429
+ ```bash
430
+ npm run docs:check:pre-release
431
+ npm run build
432
+ npm test
433
+ ```
434
+
435
+ 2. **做无副作用预演**
436
+ ```bash
437
+ node dist/cli/index.js ship --dry-run
438
+ ```
439
+
440
+ 3. **确认发布路径**
441
+ - 必须是:版本提交 → git tag → `git push` → GitHub Actions → OIDC 发布
442
+ - 不允许:本地直接执行 `npm publish`
443
+
444
+ 4. **正式执行**
445
+ ```bash
446
+ node dist/cli/index.js ship --yes
447
+ ```
448
+
449
+ 5. **核验结果**
450
+ - 记录 tag 名称、workflow run URL、GitHub Release URL
451
+ - 如果失败,记录失败的 job/step,并定位根因
452
+ ```
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mycodemap/mycodemap",
3
- "version": "0.3.7",
3
+ "version": "0.4.1",
4
4
  "description": "TypeScript 代码地图工具 - 为 AI 辅助开发提供结构化上下文",
5
5
  "repository": {
6
6
  "type": "git",
@@ -94,9 +94,19 @@ function getFileSize(filePath) {
94
94
  }
95
95
 
96
96
  function extractVersionFromText(content) {
97
- // 匹配 "version: x.x.x" 或 "版本: x.x.x" 或 "Version x.x.x"
98
- const match = content.match(/(?:version|版本)[:\s]+v?(\d+\.\d+\.\d+)/i);
99
- return match ? match[1] : null;
97
+ const patterns = [
98
+ /(?:version|版本)[:\s]+v?(\d+\.\d+\.\d+(?:-[\w.]+)?)/i,
99
+ /"version"\s*:\s*"(\d+\.\d+\.\d+(?:-[\w.]+)?)"/i
100
+ ];
101
+
102
+ for (const pattern of patterns) {
103
+ const match = content.match(pattern);
104
+ if (match) {
105
+ return match[1];
106
+ }
107
+ }
108
+
109
+ return null;
100
110
  }
101
111
 
102
112
  function extractVersionFromYAML(content) {
@@ -238,6 +248,11 @@ async function checkVersionConsistency(failures) {
238
248
  versions[file] = version;
239
249
  console.log(` 📄 ${file}: v${version}`);
240
250
  } else {
251
+ failures.push({
252
+ type: 'missing_version_in_file',
253
+ file,
254
+ message: `${file} 中未找到可解析的版本号`,
255
+ });
241
256
  console.log(yellow(` ⚠️ ${file}: 未找到版本号`));
242
257
  }
243
258
  }
@@ -655,7 +670,10 @@ async function runPreReleaseChecks() {
655
670
  f.type === 'missing_required_file' ||
656
671
  f.type === 'missing_llms_txt' ||
657
672
  f.type === 'version_mismatch' ||
673
+ f.type === 'missing_version_in_file' ||
674
+ f.type === 'invalid_semver' ||
658
675
  f.type === 'llms_txt_standard_violation' ||
676
+ f.type === 'changelog_not_synced' ||
659
677
  f.type === 'missing_release_file'
660
678
  );
661
679