@mycodemap/mycodemap 0.1.1 → 0.3.4
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.
- package/CHANGELOG.md +163 -0
- package/README.md +241 -67
- package/dist/cli/commands/ci.d.ts +7 -1
- package/dist/cli/commands/ci.d.ts.map +1 -1
- package/dist/cli/commands/ci.js +38 -0
- package/dist/cli/commands/ci.js.map +1 -1
- package/dist/cli/commands/export.d.ts +6 -0
- package/dist/cli/commands/export.d.ts.map +1 -0
- package/dist/cli/commands/export.js +108 -0
- package/dist/cli/commands/export.js.map +1 -0
- package/dist/cli/commands/generate.d.ts.map +1 -1
- package/dist/cli/commands/generate.js +96 -0
- package/dist/cli/commands/generate.js.map +1 -1
- package/dist/cli/commands/server.d.ts +9 -0
- package/dist/cli/commands/server.d.ts.map +1 -0
- package/dist/cli/commands/server.js +68 -0
- package/dist/cli/commands/server.js.map +1 -0
- package/dist/cli/commands/ship/analyzer.d.ts +26 -0
- package/dist/cli/commands/ship/analyzer.d.ts.map +1 -0
- package/dist/cli/commands/ship/analyzer.js +143 -0
- package/dist/cli/commands/ship/analyzer.js.map +1 -0
- package/dist/cli/commands/ship/checker.d.ts +20 -0
- package/dist/cli/commands/ship/checker.d.ts.map +1 -0
- package/dist/cli/commands/ship/checker.js +86 -0
- package/dist/cli/commands/ship/checker.js.map +1 -0
- package/dist/cli/commands/ship/index.d.ts +17 -0
- package/dist/cli/commands/ship/index.d.ts.map +1 -0
- package/dist/cli/commands/ship/index.js +51 -0
- package/dist/cli/commands/ship/index.js.map +1 -0
- package/dist/cli/commands/ship/monitor.d.ts +19 -0
- package/dist/cli/commands/ship/monitor.d.ts.map +1 -0
- package/dist/cli/commands/ship/monitor.js +105 -0
- package/dist/cli/commands/ship/monitor.js.map +1 -0
- package/dist/cli/commands/ship/pipeline.d.ts +23 -0
- package/dist/cli/commands/ship/pipeline.d.ts.map +1 -0
- package/dist/cli/commands/ship/pipeline.js +146 -0
- package/dist/cli/commands/ship/pipeline.js.map +1 -0
- package/dist/cli/commands/ship/publisher.d.ts +11 -0
- package/dist/cli/commands/ship/publisher.d.ts.map +1 -0
- package/dist/cli/commands/ship/publisher.js +75 -0
- package/dist/cli/commands/ship/publisher.js.map +1 -0
- package/dist/cli/commands/ship/rules/confidence-rules.d.ts +48 -0
- package/dist/cli/commands/ship/rules/confidence-rules.d.ts.map +1 -0
- package/dist/cli/commands/ship/rules/confidence-rules.js +122 -0
- package/dist/cli/commands/ship/rules/confidence-rules.js.map +1 -0
- package/dist/cli/commands/ship/rules/quality-rules.d.ts +25 -0
- package/dist/cli/commands/ship/rules/quality-rules.d.ts.map +1 -0
- package/dist/cli/commands/ship/rules/quality-rules.js +134 -0
- package/dist/cli/commands/ship/rules/quality-rules.js.map +1 -0
- package/dist/cli/commands/ship/rules/version-rules.d.ts +24 -0
- package/dist/cli/commands/ship/rules/version-rules.d.ts.map +1 -0
- package/dist/cli/commands/ship/rules/version-rules.js +75 -0
- package/dist/cli/commands/ship/rules/version-rules.js.map +1 -0
- package/dist/cli/commands/ship/versioner.d.ts +12 -0
- package/dist/cli/commands/ship/versioner.d.ts.map +1 -0
- package/dist/cli/commands/ship/versioner.js +92 -0
- package/dist/cli/commands/ship/versioner.js.map +1 -0
- package/dist/cli/index.js +31 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/cli-new/commands/export.d.ts +15 -0
- package/dist/cli-new/commands/export.d.ts.map +1 -0
- package/dist/cli-new/commands/export.js +107 -0
- package/dist/cli-new/commands/export.js.map +1 -0
- package/dist/cli-new/commands/query.d.ts +14 -0
- package/dist/cli-new/commands/query.d.ts.map +1 -0
- package/dist/cli-new/commands/query.js +120 -0
- package/dist/cli-new/commands/query.js.map +1 -0
- package/dist/cli-new/commands/server.d.ts +13 -0
- package/dist/cli-new/commands/server.d.ts.map +1 -0
- package/dist/cli-new/commands/server.js +94 -0
- package/dist/cli-new/commands/server.js.map +1 -0
- package/dist/cli-new/index.d.ts +11 -0
- package/dist/cli-new/index.d.ts.map +1 -0
- package/dist/cli-new/index.js +63 -0
- package/dist/cli-new/index.js.map +1 -0
- package/dist/cli-new/types/index.d.ts +88 -0
- package/dist/cli-new/types/index.d.ts.map +1 -0
- package/dist/cli-new/types/index.js +7 -0
- package/dist/cli-new/types/index.js.map +1 -0
- package/dist/domain/entities/CodeGraph.d.ts +134 -0
- package/dist/domain/entities/CodeGraph.d.ts.map +1 -0
- package/dist/domain/entities/CodeGraph.js +316 -0
- package/dist/domain/entities/CodeGraph.js.map +1 -0
- package/dist/domain/entities/Dependency.d.ts +78 -0
- package/dist/domain/entities/Dependency.d.ts.map +1 -0
- package/dist/domain/entities/Dependency.js +132 -0
- package/dist/domain/entities/Dependency.js.map +1 -0
- package/dist/domain/entities/Module.d.ts +75 -0
- package/dist/domain/entities/Module.d.ts.map +1 -0
- package/dist/domain/entities/Module.js +151 -0
- package/dist/domain/entities/Module.js.map +1 -0
- package/dist/domain/entities/Project.d.ts +50 -0
- package/dist/domain/entities/Project.d.ts.map +1 -0
- package/dist/domain/entities/Project.js +99 -0
- package/dist/domain/entities/Project.js.map +1 -0
- package/dist/domain/entities/Symbol.d.ts +75 -0
- package/dist/domain/entities/Symbol.d.ts.map +1 -0
- package/dist/domain/entities/Symbol.js +130 -0
- package/dist/domain/entities/Symbol.js.map +1 -0
- package/dist/domain/events/DomainEvent.d.ts +76 -0
- package/dist/domain/events/DomainEvent.d.ts.map +1 -0
- package/dist/domain/events/DomainEvent.js +153 -0
- package/dist/domain/events/DomainEvent.js.map +1 -0
- package/dist/domain/index.d.ts +10 -0
- package/dist/domain/index.d.ts.map +1 -0
- package/dist/domain/index.js +18 -0
- package/dist/domain/index.js.map +1 -0
- package/dist/domain/repositories/CodeGraphRepository.d.ts +58 -0
- package/dist/domain/repositories/CodeGraphRepository.d.ts.map +1 -0
- package/dist/domain/repositories/CodeGraphRepository.js +37 -0
- package/dist/domain/repositories/CodeGraphRepository.js.map +1 -0
- package/dist/domain/services/CodeGraphBuilder.d.ts +50 -0
- package/dist/domain/services/CodeGraphBuilder.d.ts.map +1 -0
- package/dist/domain/services/CodeGraphBuilder.js +121 -0
- package/dist/domain/services/CodeGraphBuilder.js.map +1 -0
- package/dist/infrastructure/parser/implementations/GoParser.d.ts +25 -0
- package/dist/infrastructure/parser/implementations/GoParser.d.ts.map +1 -0
- package/dist/infrastructure/parser/implementations/GoParser.js +158 -0
- package/dist/infrastructure/parser/implementations/GoParser.js.map +1 -0
- package/dist/infrastructure/parser/implementations/PythonParser.d.ts +30 -0
- package/dist/infrastructure/parser/implementations/PythonParser.d.ts.map +1 -0
- package/dist/infrastructure/parser/implementations/PythonParser.js +201 -0
- package/dist/infrastructure/parser/implementations/PythonParser.js.map +1 -0
- package/dist/infrastructure/parser/implementations/TypeScriptParser.d.ts +63 -0
- package/dist/infrastructure/parser/implementations/TypeScriptParser.d.ts.map +1 -0
- package/dist/infrastructure/parser/implementations/TypeScriptParser.js +420 -0
- package/dist/infrastructure/parser/implementations/TypeScriptParser.js.map +1 -0
- package/dist/infrastructure/parser/index.d.ts +13 -0
- package/dist/infrastructure/parser/index.d.ts.map +1 -0
- package/dist/infrastructure/parser/index.js +32 -0
- package/dist/infrastructure/parser/index.js.map +1 -0
- package/dist/infrastructure/parser/interfaces/ParserBase.d.ts +124 -0
- package/dist/infrastructure/parser/interfaces/ParserBase.d.ts.map +1 -0
- package/dist/infrastructure/parser/interfaces/ParserBase.js +200 -0
- package/dist/infrastructure/parser/interfaces/ParserBase.js.map +1 -0
- package/dist/infrastructure/parser/registry/ParserRegistry.d.ts +68 -0
- package/dist/infrastructure/parser/registry/ParserRegistry.d.ts.map +1 -0
- package/dist/infrastructure/parser/registry/ParserRegistry.js +116 -0
- package/dist/infrastructure/parser/registry/ParserRegistry.js.map +1 -0
- package/dist/infrastructure/repositories/CodeGraphRepositoryImpl.d.ts +44 -0
- package/dist/infrastructure/repositories/CodeGraphRepositoryImpl.d.ts.map +1 -0
- package/dist/infrastructure/repositories/CodeGraphRepositoryImpl.js +129 -0
- package/dist/infrastructure/repositories/CodeGraphRepositoryImpl.js.map +1 -0
- package/dist/infrastructure/repositories/index.d.ts +3 -0
- package/dist/infrastructure/repositories/index.d.ts.map +1 -0
- package/dist/infrastructure/repositories/index.js +7 -0
- package/dist/infrastructure/repositories/index.js.map +1 -0
- package/dist/infrastructure/storage/StorageFactory.d.ts +53 -0
- package/dist/infrastructure/storage/StorageFactory.d.ts.map +1 -0
- package/dist/infrastructure/storage/StorageFactory.js +150 -0
- package/dist/infrastructure/storage/StorageFactory.js.map +1 -0
- package/dist/infrastructure/storage/adapters/FileSystemStorage.d.ts +52 -0
- package/dist/infrastructure/storage/adapters/FileSystemStorage.d.ts.map +1 -0
- package/dist/infrastructure/storage/adapters/FileSystemStorage.js +315 -0
- package/dist/infrastructure/storage/adapters/FileSystemStorage.js.map +1 -0
- package/dist/infrastructure/storage/adapters/KuzuDBStorage.d.ts +52 -0
- package/dist/infrastructure/storage/adapters/KuzuDBStorage.d.ts.map +1 -0
- package/dist/infrastructure/storage/adapters/KuzuDBStorage.js +235 -0
- package/dist/infrastructure/storage/adapters/KuzuDBStorage.js.map +1 -0
- package/dist/infrastructure/storage/adapters/MemoryStorage.d.ts +37 -0
- package/dist/infrastructure/storage/adapters/MemoryStorage.d.ts.map +1 -0
- package/dist/infrastructure/storage/adapters/MemoryStorage.js +229 -0
- package/dist/infrastructure/storage/adapters/MemoryStorage.js.map +1 -0
- package/dist/infrastructure/storage/adapters/Neo4jStorage.d.ts +49 -0
- package/dist/infrastructure/storage/adapters/Neo4jStorage.d.ts.map +1 -0
- package/dist/infrastructure/storage/adapters/Neo4jStorage.js +222 -0
- package/dist/infrastructure/storage/adapters/Neo4jStorage.js.map +1 -0
- package/dist/infrastructure/storage/index.d.ts +6 -0
- package/dist/infrastructure/storage/index.d.ts.map +1 -0
- package/dist/infrastructure/storage/index.js +13 -0
- package/dist/infrastructure/storage/index.js.map +1 -0
- package/dist/infrastructure/storage/interfaces/StorageBase.d.ts +76 -0
- package/dist/infrastructure/storage/interfaces/StorageBase.d.ts.map +1 -0
- package/dist/infrastructure/storage/interfaces/StorageBase.js +116 -0
- package/dist/infrastructure/storage/interfaces/StorageBase.js.map +1 -0
- package/dist/interface/config/index.d.ts +102 -0
- package/dist/interface/config/index.d.ts.map +1 -0
- package/dist/interface/config/index.js +7 -0
- package/dist/interface/config/index.js.map +1 -0
- package/dist/interface/types/index.d.ts +425 -0
- package/dist/interface/types/index.d.ts.map +1 -0
- package/dist/interface/types/index.js +8 -0
- package/dist/interface/types/index.js.map +1 -0
- package/dist/interface/types/parser.d.ts +103 -0
- package/dist/interface/types/parser.d.ts.map +1 -0
- package/dist/interface/types/parser.js +7 -0
- package/dist/interface/types/parser.js.map +1 -0
- package/dist/interface/types/storage.d.ts +98 -0
- package/dist/interface/types/storage.d.ts.map +1 -0
- package/dist/interface/types/storage.js +7 -0
- package/dist/interface/types/storage.js.map +1 -0
- package/dist/orchestrator/test-linker.js +1 -1
- package/dist/orchestrator/test-linker.js.map +1 -1
- package/dist/server/CodeMapServer.d.ts +51 -0
- package/dist/server/CodeMapServer.d.ts.map +1 -0
- package/dist/server/CodeMapServer.js +146 -0
- package/dist/server/CodeMapServer.js.map +1 -0
- package/dist/server/handlers/AnalysisHandler.d.ts +82 -0
- package/dist/server/handlers/AnalysisHandler.d.ts.map +1 -0
- package/dist/server/handlers/AnalysisHandler.js +196 -0
- package/dist/server/handlers/AnalysisHandler.js.map +1 -0
- package/dist/server/handlers/QueryHandler.d.ts +57 -0
- package/dist/server/handlers/QueryHandler.d.ts.map +1 -0
- package/dist/server/handlers/QueryHandler.js +260 -0
- package/dist/server/handlers/QueryHandler.js.map +1 -0
- package/dist/server/index.d.ts +7 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +13 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/routes/api.d.ts +8 -0
- package/dist/server/routes/api.d.ts.map +1 -0
- package/dist/server/routes/api.js +372 -0
- package/dist/server/routes/api.js.map +1 -0
- package/dist/server/types/index.d.ts +171 -0
- package/dist/server/types/index.d.ts.map +1 -0
- package/dist/server/types/index.js +7 -0
- package/dist/server/types/index.js.map +1 -0
- package/dist/types/index.d.ts +6 -372
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +9 -3
- package/dist/types/index.js.map +1 -1
- package/docs/AI_ASSISTANT_SETUP.md +68 -0
- package/docs/PUBLISHING.md +472 -0
- package/docs/README.md +37 -0
- package/docs/SETUP_GUIDE.md +91 -5
- package/docs/ai-guide/COMMANDS.md +403 -0
- package/docs/ai-guide/INTEGRATION.md +513 -0
- package/docs/ai-guide/OUTPUT.md +465 -0
- package/docs/ai-guide/PATTERNS.md +409 -0
- package/docs/ai-guide/PROMPTS.md +414 -0
- package/docs/ai-guide/QUICKSTART.md +114 -0
- package/docs/ai-guide/README.md +66 -0
- package/docs/archive/AI_INTEGRATION_GUIDE_ARCHIVED.md +7 -1
- package/docs/archive/ARCHIVE.md +39 -0
- package/docs/archive/MYCLAUDE_GUIDE.md +305 -0
- package/docs/archive/PUBLISH_NPM_DESIGN_V1.md +6 -0
- package/docs/archive/PUBLISH_NPM_DESIGN_V2.md +6 -0
- package/docs/archive/README.md +29 -0
- package/docs/archive/TASK_DESIGN_COVERAGE_REPORT.md +6 -0
- package/docs/archive/TEST_SUMMARY.md +140 -0
- package/docs/archive/comprehensive_test_report.md +337 -0
- package/docs/{CI_GATEWAY_DESIGN.md → archive/design-docs/CI_GATEWAY_DESIGN.md} +6 -0
- package/docs/{PUBLISH_NPM_DESIGN_FINAL.md → archive/design-docs/PUBLISH_NPM_DESIGN_FINAL.md} +7 -1
- package/docs/{REFACTOR_ARCHITECTURE_OVERVIEW.md → archive/design-docs/REFACTOR_ARCHITECTURE_OVERVIEW.md} +8 -2
- package/docs/{REFACTOR_CONFIDENCE_DESIGN.md → archive/design-docs/REFACTOR_CONFIDENCE_DESIGN.md} +6 -0
- package/docs/{REFACTOR_GIT_ANALYZER_DESIGN.md → archive/design-docs/REFACTOR_GIT_ANALYZER_DESIGN.md} +8 -2
- package/docs/{REFACTOR_ORCHESTRATOR_DESIGN.md → archive/design-docs/REFACTOR_ORCHESTRATOR_DESIGN.md} +6 -0
- package/docs/{REFACTOR_RESULT_FUSION_DESIGN.md → archive/design-docs/REFACTOR_RESULT_FUSION_DESIGN.md} +6 -0
- package/docs/{REFACTOR_TEST_LINKER_DESIGN.md → archive/design-docs/REFACTOR_TEST_LINKER_DESIGN.md} +6 -0
- package/docs/archive/myclaude.md +1084 -0
- package/docs/archive/plans/2026-03-14-go-language-support-design.md +92 -0
- package/docs/{REFACTOR_REQUIREMENTS.md → archive/product-specs/REFACTOR_REQUIREMENTS.md} +11 -5
- package/docs/archive/scenario-2-deps-analysis.md +353 -0
- package/docs/design-docs/README.md +26 -0
- package/docs/exec-plans/MVP3-IMPLEMENTATION-ROADMAP.md +524 -0
- package/docs/exec-plans/README.md +29 -0
- package/docs/exec-plans/active/.gitkeep +0 -0
- package/docs/exec-plans/completed/.gitkeep +0 -0
- package/docs/{plans/POST_TASK_PLAN.md → exec-plans/completed/2026-03-03-post-task-plan.md} +9 -3
- package/docs/exec-plans/completed/harness-engineering-rollout.md +184 -0
- package/docs/exec-plans/tech-debt/.gitkeep +0 -0
- package/docs/exec-plans/tech-debt/2026-03-15-lint-guardrail-gap.md +30 -0
- package/docs/generated/README.md +19 -0
- package/docs/product-specs/MVP3-ARCHITECTURE-COMPARISON.md +504 -0
- package/docs/product-specs/MVP3-ARCHITECTURE-REDESIGN-PRD.md +322 -0
- package/docs/product-specs/MVP3-ARCHITECTURE-REDESIGN-TECH-PRD.md +1374 -0
- package/docs/product-specs/README.md +22 -0
- package/docs/references/README.md +15 -0
- package/docs/references/tmp.md +527 -0
- package/docs/rules/README.md +16 -0
- package/docs/rules/architecture-guardrails.md +349 -0
- package/docs/rules/code-quality-redlines.md +321 -0
- package/docs/rules/deployment.md +23 -0
- package/docs/rules/engineering-with-codex-openai.md +202 -0
- package/docs/rules/pre-release-checklist.md +426 -0
- package/docs/rules/testing.md +73 -0
- package/docs/rules/validation.md +39 -0
- package/package.json +26 -7
- package/scripts/.githooks/commit-msg +31 -0
- package/scripts/.githooks/pre-commit +55 -0
- package/scripts/benchmark.ts +209 -0
- package/scripts/hooks/commit-msg +24 -0
- package/scripts/hooks/install-hooks.sh +29 -0
- package/scripts/hooks/pre-commit +60 -0
- package/scripts/pre-release-check.js +717 -0
- package/scripts/release.sh +142 -0
- package/scripts/run-benchmark.sh +29 -0
- package/scripts/validate-ai-docs.js +294 -0
- package/scripts/validate-docs.js +238 -0
- package/scripts/validate-pack.js +86 -0
- package/dist/ai/claude.d.ts +0 -38
- package/dist/ai/claude.d.ts.map +0 -1
- package/dist/ai/claude.js +0 -169
- package/dist/ai/claude.js.map +0 -1
- package/dist/ai/codex.d.ts +0 -38
- package/dist/ai/codex.d.ts.map +0 -1
- package/dist/ai/codex.js +0 -169
- package/dist/ai/codex.js.map +0 -1
- package/dist/ai/factory.d.ts +0 -48
- package/dist/ai/factory.d.ts.map +0 -1
- package/dist/ai/factory.js +0 -95
- package/dist/ai/factory.js.map +0 -1
- package/dist/ai/index.d.ts +0 -12
- package/dist/ai/index.d.ts.map +0 -1
- package/dist/ai/index.js +0 -29
- package/dist/ai/index.js.map +0 -1
- package/dist/ai/provider.d.ts +0 -70
- package/dist/ai/provider.d.ts.map +0 -1
- package/dist/ai/provider.js +0 -31
- package/dist/ai/provider.js.map +0 -1
- package/dist/ai/subagent-caller.d.ts +0 -90
- package/dist/ai/subagent-caller.d.ts.map +0 -1
- package/dist/ai/subagent-caller.js +0 -280
- package/dist/ai/subagent-caller.js.map +0 -1
- package/dist/ai/types.d.ts +0 -70
- package/dist/ai/types.d.ts.map +0 -1
- package/dist/ai/types.js +0 -5
- package/dist/ai/types.js.map +0 -1
- package/dist/generator/ai-overview.d.ts +0 -51
- package/dist/generator/ai-overview.d.ts.map +0 -1
- package/dist/generator/ai-overview.js +0 -160
- package/dist/generator/ai-overview.js.map +0 -1
- package/dist/orchestrator/ai-feed-generator.d.ts +0 -210
- package/dist/orchestrator/ai-feed-generator.d.ts.map +0 -1
- package/dist/orchestrator/ai-feed-generator.js +0 -377
- package/dist/orchestrator/ai-feed-generator.js.map +0 -1
- package/docs/OMC_TEAM_DEBUG_REPORT.md +0 -285
- /package/docs/{plans/archive → exec-plans/completed}/2026-03-03-deps-path-extension-fix.md +0 -0
|
@@ -0,0 +1,472 @@
|
|
|
1
|
+
# NPM 自动发布指南
|
|
2
|
+
3
|
|
3
|
+
> 本文档说明如何配置和触发 @mycodemap/mycodemap 的自动发布流程
|
|
4
|
+
|
|
5
|
+
## 📋 发布流程概览
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
本地执行 release.sh → 推送 tag → GitHub Actions → 发布到 NPM
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## 🔧 前置配置
|
|
12
|
+
|
|
13
|
+
本项目使用 **OIDC Trusted Publishing** 方式发布,无需配置 NPM Token。
|
|
14
|
+
|
|
15
|
+
### OIDC Trusted Publishing 配置
|
|
16
|
+
|
|
17
|
+
1. **在 NPM 上配置 Trusted Publisher**
|
|
18
|
+
- 访问包管理页面: https://www.npmjs.com/package/@mycodemap/mycodemap/access
|
|
19
|
+
- 找到 "Publishing" 或 "Grant Access" 部分
|
|
20
|
+
- 点击 "Add GitHub Actions as a trusted publisher"
|
|
21
|
+
- 填写以下信息:
|
|
22
|
+
- **GitHub Organization**: `yuanyuanyuan`
|
|
23
|
+
- **GitHub Repository**: `mycodemap`
|
|
24
|
+
- **Workflow Name**: `publish.yml`
|
|
25
|
+
- **GitHub Environment**: (留空)
|
|
26
|
+
|
|
27
|
+
2. **确保没有设置 NPM_TOKEN**
|
|
28
|
+
```bash
|
|
29
|
+
# 检查是否设置了 NPM_TOKEN
|
|
30
|
+
gh secret list | grep NPM_TOKEN
|
|
31
|
+
|
|
32
|
+
# 如果存在,删除它
|
|
33
|
+
gh secret remove NPM_TOKEN
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
3. **验证权限配置**
|
|
37
|
+
确保 workflow 中设置了正确的权限:
|
|
38
|
+
```yaml
|
|
39
|
+
permissions:
|
|
40
|
+
contents: write # 用于创建 GitHub Release
|
|
41
|
+
id-token: write # 用于 OIDC trusted publishing (必需)
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
### 2FA/OTP 注意事项
|
|
45
|
+
|
|
46
|
+
如果你的 npm 账号启用了 2FA,使用 OIDC 发布**不需要**提供 OTP,因为 OIDC 会绕过 2FA 限制。
|
|
47
|
+
|
|
48
|
+
**注意**: 不要在 workflow 中设置 `NODE_AUTH_TOKEN` 环境变量,这会干扰 OIDC 认证。
|
|
49
|
+
|
|
50
|
+
## 🚀 发布操作
|
|
51
|
+
|
|
52
|
+
### 方法 1: 使用发布脚本 (推荐)
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
# 进入项目目录
|
|
56
|
+
cd /path/to/mycodemap
|
|
57
|
+
|
|
58
|
+
# 发布 patch 版本 (0.2.0 -> 0.2.1)
|
|
59
|
+
./scripts/release.sh patch
|
|
60
|
+
|
|
61
|
+
# 发布 minor 版本 (0.2.0 -> 0.3.0)
|
|
62
|
+
./scripts/release.sh minor
|
|
63
|
+
|
|
64
|
+
# 发布 major 版本 (0.2.0 -> 1.0.0)
|
|
65
|
+
./scripts/release.sh major
|
|
66
|
+
|
|
67
|
+
# 发布指定版本
|
|
68
|
+
./scripts/release.sh 0.2.1
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
脚本会自动:
|
|
72
|
+
1. 更新 `package.json` 和 `package-lock.json` 中的版本号
|
|
73
|
+
2. 运行完整的代码检查
|
|
74
|
+
3. 提交版本更新
|
|
75
|
+
4. 创建 git tag
|
|
76
|
+
5. 推送到远程仓库
|
|
77
|
+
6. 触发 GitHub Actions 发布流程
|
|
78
|
+
|
|
79
|
+
### 方法 2: 手动操作
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
# 1. 更新版本号
|
|
83
|
+
npm version patch # 或 minor, major
|
|
84
|
+
|
|
85
|
+
# 2. 推送代码和标签
|
|
86
|
+
git push origin main --tags
|
|
87
|
+
|
|
88
|
+
# 或者直接推送特定标签
|
|
89
|
+
git push origin v0.2.1
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### 方法 3: GitHub 网页手动触发
|
|
93
|
+
|
|
94
|
+
1. 进入仓库 Actions → Publish to NPM
|
|
95
|
+
2. 点击 "Run workflow"
|
|
96
|
+
3. 可选择输入版本号,或直接运行使用当前 package.json 版本
|
|
97
|
+
|
|
98
|
+
### 方法 4: 本地直接发布 (需要 2FA OTP)
|
|
99
|
+
|
|
100
|
+
**注意**: 如果账号启用了 2FA,本地发布需要提供 OTP:
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
# 确保所有检查通过
|
|
104
|
+
npm run check:all
|
|
105
|
+
|
|
106
|
+
# 发布到 npm (需要 2FA OTP)
|
|
107
|
+
npm publish --access public --otp=YOUR_OTP_CODE
|
|
108
|
+
|
|
109
|
+
# 例如
|
|
110
|
+
npm publish --access public --otp=250222
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
## ✅ 发布前完整检查流程
|
|
114
|
+
|
|
115
|
+
发布前必须执行以下检查:
|
|
116
|
+
|
|
117
|
+
```bash
|
|
118
|
+
# 1. 类型检查
|
|
119
|
+
npm run typecheck
|
|
120
|
+
|
|
121
|
+
# 2. 代码检查
|
|
122
|
+
npm run lint
|
|
123
|
+
|
|
124
|
+
# 3. 运行测试
|
|
125
|
+
npm test
|
|
126
|
+
|
|
127
|
+
# 4. 构建项目
|
|
128
|
+
npm run build
|
|
129
|
+
|
|
130
|
+
# 5. 打包验证
|
|
131
|
+
npm run validate-pack
|
|
132
|
+
|
|
133
|
+
# 6. 发布前 AI 文档检查
|
|
134
|
+
npm run docs:check:pre-release
|
|
135
|
+
|
|
136
|
+
# 7. 发布预览
|
|
137
|
+
npm pack --dry-run
|
|
138
|
+
|
|
139
|
+
# 或使用一键检查
|
|
140
|
+
npm run check:all
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
### 发布前检查清单
|
|
144
|
+
|
|
145
|
+
- [ ] 更新 `CHANGELOG.md` 记录本次变更
|
|
146
|
+
- [ ] 运行 `npm run docs:check:pre-release` - 确保 AI 文档检查通过
|
|
147
|
+
- [ ] 运行 `npm run typecheck` - 确保 0 errors
|
|
148
|
+
- [ ] 运行 `npm run lint` - 确保 0 errors (warnings 可接受)
|
|
149
|
+
- [ ] 运行 `npm test` - 确保所有测试通过
|
|
150
|
+
- [ ] 运行 `npm run validate-pack` - 确保打包验证通过
|
|
151
|
+
- [ ] 检查 `package.json` 版本号符合 [semver](https://semver.org/lang/zh-CN/) 规范
|
|
152
|
+
- [ ] 确保 git tag 与 package.json 版本一致
|
|
153
|
+
- [ ] 更新 `README.md` 中的版本说明(如需要)
|
|
154
|
+
|
|
155
|
+
## 🔧 GitHub Actions Workflow 配置
|
|
156
|
+
|
|
157
|
+
完整的 `.github/workflows/publish.yml` 配置:
|
|
158
|
+
|
|
159
|
+
```yaml
|
|
160
|
+
# [META] since:2026-03-04 | owner:release-team | stable:true
|
|
161
|
+
# [WHY] NPM package publishing workflow - 使用 OIDC Trusted Publishing
|
|
162
|
+
|
|
163
|
+
name: Publish to NPM
|
|
164
|
+
|
|
165
|
+
on:
|
|
166
|
+
# 方式1: 推送 v* 标签时自动发布
|
|
167
|
+
push:
|
|
168
|
+
tags:
|
|
169
|
+
- 'v*'
|
|
170
|
+
|
|
171
|
+
# 方式2: 手动触发(推荐用于首次发布或特殊情况)
|
|
172
|
+
workflow_dispatch:
|
|
173
|
+
inputs:
|
|
174
|
+
version:
|
|
175
|
+
description: '版本号 (例如: 0.2.0),留空则使用 package.json 中的版本'
|
|
176
|
+
required: false
|
|
177
|
+
type: string
|
|
178
|
+
|
|
179
|
+
jobs:
|
|
180
|
+
publish:
|
|
181
|
+
name: Build and Publish
|
|
182
|
+
runs-on: ubuntu-latest
|
|
183
|
+
permissions:
|
|
184
|
+
contents: write # 用于创建 GitHub Release
|
|
185
|
+
id-token: write # 用于 OIDC trusted publishing (必需)
|
|
186
|
+
|
|
187
|
+
steps:
|
|
188
|
+
- name: Checkout code
|
|
189
|
+
uses: actions/checkout@v4
|
|
190
|
+
with:
|
|
191
|
+
fetch-depth: 0 # 获取完整历史用于生成 changelog
|
|
192
|
+
|
|
193
|
+
- name: Setup Node.js
|
|
194
|
+
uses: actions/setup-node@v4
|
|
195
|
+
with:
|
|
196
|
+
node-version: '20'
|
|
197
|
+
cache: 'npm'
|
|
198
|
+
registry-url: 'https://registry.npmjs.org'
|
|
199
|
+
|
|
200
|
+
- name: Get version from package.json
|
|
201
|
+
id: package-version
|
|
202
|
+
run: |
|
|
203
|
+
VERSION=$(node -p "require('./package.json').version")
|
|
204
|
+
echo "version=$VERSION" >> $GITHUB_OUTPUT
|
|
205
|
+
echo "Package version: $VERSION"
|
|
206
|
+
|
|
207
|
+
- name: Validate version
|
|
208
|
+
run: |
|
|
209
|
+
VERSION="${{ steps.package-version.outputs.version }}"
|
|
210
|
+
if [ -z "$VERSION" ]; then
|
|
211
|
+
echo "❌ Error: 无法从 package.json 读取版本号"
|
|
212
|
+
exit 1
|
|
213
|
+
fi
|
|
214
|
+
echo "✅ Version: $VERSION"
|
|
215
|
+
|
|
216
|
+
- name: Check tag matches version (tag 触发时)
|
|
217
|
+
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v')
|
|
218
|
+
run: |
|
|
219
|
+
TAG_VERSION=${GITHUB_REF#refs/tags/v}
|
|
220
|
+
PKG_VERSION=${{ steps.package-version.outputs.version }}
|
|
221
|
+
if [ "$TAG_VERSION" != "$PKG_VERSION" ]; then
|
|
222
|
+
echo "❌ Error: Git tag version (v$TAG_VERSION) 与 package.json 版本 ($PKG_VERSION) 不匹配"
|
|
223
|
+
exit 1
|
|
224
|
+
fi
|
|
225
|
+
echo "✅ Tag version matches package.json version"
|
|
226
|
+
|
|
227
|
+
- name: Install dependencies
|
|
228
|
+
run: npm ci
|
|
229
|
+
|
|
230
|
+
- name: Run pre-release AI documentation check
|
|
231
|
+
run: npm run docs:check:pre-release
|
|
232
|
+
|
|
233
|
+
- name: Run typecheck
|
|
234
|
+
run: npm run typecheck
|
|
235
|
+
|
|
236
|
+
- name: Run linter
|
|
237
|
+
run: npm run lint
|
|
238
|
+
|
|
239
|
+
- name: Run tests
|
|
240
|
+
run: npm test
|
|
241
|
+
|
|
242
|
+
- name: Build package
|
|
243
|
+
run: npm run build
|
|
244
|
+
|
|
245
|
+
- name: Validate package contents
|
|
246
|
+
run: npm run validate-pack
|
|
247
|
+
|
|
248
|
+
# 使用 OIDC Trusted Publishing 发布
|
|
249
|
+
# OIDC 通过 id-token: write 权限自动获取认证,不需要 NPM_TOKEN
|
|
250
|
+
- name: Publish to NPM
|
|
251
|
+
run: npm publish --access public --provenance
|
|
252
|
+
|
|
253
|
+
- name: Generate Release Notes
|
|
254
|
+
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v')
|
|
255
|
+
id: release-notes
|
|
256
|
+
run: |
|
|
257
|
+
VERSION="${{ steps.package-version.outputs.version }}"
|
|
258
|
+
|
|
259
|
+
# 从 CHANGELOG.md 提取当前版本的变更记录
|
|
260
|
+
if [ -f CHANGELOG.md ]; then
|
|
261
|
+
NOTES=$(awk "/^## \[$VERSION\]/,/^## \[/" CHANGELOG.md | head -n -1)
|
|
262
|
+
if [ -n "$NOTES" ]; then
|
|
263
|
+
echo "Extracted release notes from CHANGELOG.md"
|
|
264
|
+
else
|
|
265
|
+
NOTES="See [CHANGELOG.md](https://github.com/${{ github.repository }}/blob/main/CHANGELOG.md) for details."
|
|
266
|
+
fi
|
|
267
|
+
else
|
|
268
|
+
NOTES="See [CHANGELOG.md](https://github.com/${{ github.repository }}/blob/main/CHANGELOG.md) for details."
|
|
269
|
+
fi
|
|
270
|
+
|
|
271
|
+
# 转义特殊字符用于 GitHub Actions 输出
|
|
272
|
+
NOTES="${NOTES//'%'/'%25'}"
|
|
273
|
+
NOTES="${NOTES//$'\n'/'%0A'}"
|
|
274
|
+
NOTES="${NOTES//$'\r'/'%0D'}"
|
|
275
|
+
|
|
276
|
+
echo "notes<<EOF" >> $GITHUB_OUTPUT
|
|
277
|
+
echo "$NOTES" >> $GITHUB_OUTPUT
|
|
278
|
+
echo "EOF" >> $GITHUB_OUTPUT
|
|
279
|
+
|
|
280
|
+
- name: Create GitHub Release
|
|
281
|
+
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v')
|
|
282
|
+
uses: actions/create-release@v1
|
|
283
|
+
env:
|
|
284
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
285
|
+
with:
|
|
286
|
+
tag_name: ${{ github.ref }}
|
|
287
|
+
release_name: Release v${{ steps.package-version.outputs.version }}
|
|
288
|
+
draft: false
|
|
289
|
+
prerelease: ${{ contains(steps.package-version.outputs.version, '-') }}
|
|
290
|
+
body: |
|
|
291
|
+
${{ steps.release-notes.outputs.notes }}
|
|
292
|
+
|
|
293
|
+
---
|
|
294
|
+
|
|
295
|
+
## Installation
|
|
296
|
+
|
|
297
|
+
```bash
|
|
298
|
+
npm install @mycodemap/mycodemap@${{ steps.package-version.outputs.version }}
|
|
299
|
+
```
|
|
300
|
+
|
|
301
|
+
## AI Documentation
|
|
302
|
+
|
|
303
|
+
This version includes updated AI-friendly documentation:
|
|
304
|
+
- [AI Guide](https://github.com/${{ github.repository }}/blob/main/AI_GUIDE.md)
|
|
305
|
+
- [llms.txt](https://github.com/${{ github.repository }}/blob/main/llms.txt)
|
|
306
|
+
```
|
|
307
|
+
|
|
308
|
+
## 🔍 验证发布
|
|
309
|
+
|
|
310
|
+
发布后验证:
|
|
311
|
+
|
|
312
|
+
```bash
|
|
313
|
+
# 查看 npm 上的最新版本
|
|
314
|
+
npm view @mycodemap/mycodemap version
|
|
315
|
+
|
|
316
|
+
# 安装测试
|
|
317
|
+
npm install -g @mycodemap/mycodemap
|
|
318
|
+
|
|
319
|
+
# 验证 CLI 版本
|
|
320
|
+
mycodemap --version
|
|
321
|
+
|
|
322
|
+
# 查看包详情
|
|
323
|
+
npm view @mycodemap/mycodemap
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
## 🐛 故障排查
|
|
327
|
+
|
|
328
|
+
### OIDC 发布失败
|
|
329
|
+
|
|
330
|
+
**现象**:
|
|
331
|
+
```
|
|
332
|
+
npm ERR! code E403
|
|
333
|
+
npm ERR! 403 403 Forbidden - PUT https://registry.npmjs.org/@mycodemap%2fmycodemap
|
|
334
|
+
```
|
|
335
|
+
|
|
336
|
+
**原因**:
|
|
337
|
+
1. NPM 端未正确配置 Trusted Publisher
|
|
338
|
+
2. `id-token: write` 权限未设置
|
|
339
|
+
3. 设置了 `NODE_AUTH_TOKEN` 环境变量干扰了 OIDC
|
|
340
|
+
|
|
341
|
+
**解决**:
|
|
342
|
+
1. 检查 NPM 配置: https://www.npmjs.com/package/@mycodemap/mycodemap/access
|
|
343
|
+
2. 确保 workflow 中有 `id-token: write` 权限
|
|
344
|
+
3. 确保没有设置 `NODE_AUTH_TOKEN` 环境变量
|
|
345
|
+
4. 确保没有设置 `NPM_TOKEN` secret
|
|
346
|
+
|
|
347
|
+
### 发布失败: "ENEEDAUTH"
|
|
348
|
+
|
|
349
|
+
**原因**: 虽然使用 OIDC,但可能配置了错误的认证方式
|
|
350
|
+
|
|
351
|
+
**解决**:
|
|
352
|
+
1. 检查 workflow 中是否设置了 `NODE_AUTH_TOKEN`(不应该设置)
|
|
353
|
+
2. 检查 GitHub Secrets 中是否意外设置了 `NPM_TOKEN`(应该删除)
|
|
354
|
+
3. 确认 `id-token: write` 权限已正确配置
|
|
355
|
+
|
|
356
|
+
### 发布失败: "EOTP"
|
|
357
|
+
|
|
358
|
+
**原因**: 使用了传统的 NPM_TOKEN 方式,且账号启用了 2FA
|
|
359
|
+
|
|
360
|
+
**解决**:
|
|
361
|
+
- 这是使用 OIDC 的场景,不应该出现此错误
|
|
362
|
+
- 检查是否正确配置了 OIDC Trusted Publishing
|
|
363
|
+
- 检查是否意外设置了 NPM_TOKEN
|
|
364
|
+
|
|
365
|
+
### 发布失败: "403 Forbidden"
|
|
366
|
+
|
|
367
|
+
**原因**: 没有包发布权限
|
|
368
|
+
|
|
369
|
+
**解决**:
|
|
370
|
+
1. 确认你是该 npm 包的维护者
|
|
371
|
+
2. 如果是 scoped package (@mycodemap/xxx),确认已设置 `--access public`
|
|
372
|
+
3. 确认 NPM 端已添加 GitHub Actions 作为 Trusted Publisher
|
|
373
|
+
|
|
374
|
+
### 发布失败: "版本已存在"
|
|
375
|
+
|
|
376
|
+
**原因**: npm 上已有相同版本
|
|
377
|
+
|
|
378
|
+
**解决**:
|
|
379
|
+
1. 检查 package.json 中的版本号
|
|
380
|
+
2. npm 版本号不可重复,需要递增
|
|
381
|
+
|
|
382
|
+
### GitHub Actions 未触发
|
|
383
|
+
|
|
384
|
+
**原因**: tag 格式不正确或 workflow 配置错误
|
|
385
|
+
|
|
386
|
+
**解决**:
|
|
387
|
+
1. 确保 tag 格式为 `v*` (例如: v0.2.1)
|
|
388
|
+
2. 检查 `.github/workflows/publish.yml` 是否存在
|
|
389
|
+
3. 查看 Actions 日志排查问题
|
|
390
|
+
|
|
391
|
+
### npm warn publish "bin[xxx]" script name was invalid
|
|
392
|
+
|
|
393
|
+
**原因**: package.json 中的 bin 字段格式问题
|
|
394
|
+
|
|
395
|
+
**解决**:
|
|
396
|
+
```bash
|
|
397
|
+
# 运行 npm pkg fix 自动修复
|
|
398
|
+
npm pkg fix
|
|
399
|
+
```
|
|
400
|
+
|
|
401
|
+
### 版本不匹配错误
|
|
402
|
+
|
|
403
|
+
**原因**: Git tag 版本与 package.json 版本不一致
|
|
404
|
+
|
|
405
|
+
**解决**:
|
|
406
|
+
```bash
|
|
407
|
+
# 检查当前版本
|
|
408
|
+
cat package.json | grep '"version"'
|
|
409
|
+
|
|
410
|
+
# 检查 git tags
|
|
411
|
+
git tag -l | sort -V
|
|
412
|
+
|
|
413
|
+
# 确保 tag 与 package.json 版本一致
|
|
414
|
+
# 例如: package.json 为 0.2.0,则 tag 应为 v0.2.0
|
|
415
|
+
```
|
|
416
|
+
|
|
417
|
+
### npm registry 配置错误
|
|
418
|
+
|
|
419
|
+
**现象**: `npm whoami` 失败或发布到错误 registry
|
|
420
|
+
|
|
421
|
+
**解决**:
|
|
422
|
+
```bash
|
|
423
|
+
# 检查当前 registry
|
|
424
|
+
npm config get registry
|
|
425
|
+
|
|
426
|
+
# 设置为 npm 官方 registry
|
|
427
|
+
npm config set registry https://registry.npmjs.org/
|
|
428
|
+
|
|
429
|
+
# 验证登录状态
|
|
430
|
+
npm whoami
|
|
431
|
+
```
|
|
432
|
+
|
|
433
|
+
## 📚 相关文件
|
|
434
|
+
|
|
435
|
+
| 文件 | 说明 |
|
|
436
|
+
|------|------|
|
|
437
|
+
| `.github/workflows/publish.yml` | GitHub Actions 发布工作流 |
|
|
438
|
+
| `scripts/release.sh` | 本地发布助手脚本 |
|
|
439
|
+
| `scripts/validate-pack.js` | 打包验证脚本 |
|
|
440
|
+
| `scripts/pre-release-check.js` | 发布前 AI 文档检查脚本 |
|
|
441
|
+
| `package.json` | 版本号定义和发布配置 |
|
|
442
|
+
| `CHANGELOG.md` | 版本变更记录 |
|
|
443
|
+
| `tsconfig.json` | TypeScript 编译配置 |
|
|
444
|
+
|
|
445
|
+
## 📝 发布记录模板
|
|
446
|
+
|
|
447
|
+
发布后建议在 GitHub 创建 Release,格式如下:
|
|
448
|
+
|
|
449
|
+
```markdown
|
|
450
|
+
## Changes
|
|
451
|
+
|
|
452
|
+
### Features
|
|
453
|
+
- 新增 xxx 功能
|
|
454
|
+
|
|
455
|
+
### Fixes
|
|
456
|
+
- 修复 xxx 问题
|
|
457
|
+
|
|
458
|
+
### Improvements
|
|
459
|
+
- 优化 xxx 性能
|
|
460
|
+
|
|
461
|
+
## Installation
|
|
462
|
+
|
|
463
|
+
```bash
|
|
464
|
+
npm install @mycodemap/mycodemap@0.2.0
|
|
465
|
+
```
|
|
466
|
+
```
|
|
467
|
+
|
|
468
|
+
## 🔗 相关链接
|
|
469
|
+
|
|
470
|
+
- NPM 包页面: https://www.npmjs.com/package/@mycodemap/mycodemap
|
|
471
|
+
- GitHub Actions: https://github.com/yuanyuanyuan/mycodemap/actions
|
|
472
|
+
- 版本历史: https://www.npmjs.com/package/@mycodemap/mycodemap?activeTab=versions
|
package/docs/README.md
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# docs/ - 文档信息架构
|
|
2
|
+
|
|
3
|
+
本目录采用“入口文档短、细节文档分层”的结构。
|
|
4
|
+
|
|
5
|
+
## 目录职责
|
|
6
|
+
|
|
7
|
+
- `docs/rules/`:开发、测试、验证、发布规则。
|
|
8
|
+
- `docs/design-docs/`:当前仍有效的设计文档。
|
|
9
|
+
- `docs/exec-plans/`:活跃计划、已完成计划、技术债跟踪。
|
|
10
|
+
- `docs/generated/`:生成内容与归档说明。
|
|
11
|
+
- `docs/product-specs/`:当前仍有效的产品规格与验收边界。
|
|
12
|
+
- `docs/references/`:外部参考、设计系统、工具链资料。
|
|
13
|
+
- `docs/archive/`:历史方案、迁移遗留、过期文档索引。
|
|
14
|
+
|
|
15
|
+
## 当前状态
|
|
16
|
+
|
|
17
|
+
- `docs/` 根层当前只保留仍在使用的操作指南:`AI_ASSISTANT_SETUP.md`、`SETUP_GUIDE.md`。
|
|
18
|
+
- 2026-03-15 已把历史重构设计、历史需求草稿、Go 支持计划和过期计划统一移入 `docs/archive/`。
|
|
19
|
+
- `docs/design-docs/` 与 `docs/product-specs/` 当前不再保留旧稿;历史内容请从 `docs/archive/README.md` 进入。
|
|
20
|
+
- 新增内容优先写入分层目录,不再把新设计或新计划继续堆到根层。
|
|
21
|
+
|
|
22
|
+
## 建议阅读顺序
|
|
23
|
+
|
|
24
|
+
1. `../AGENTS.md`
|
|
25
|
+
2. `../CLAUDE.md`
|
|
26
|
+
3. `../ARCHITECTURE.md`
|
|
27
|
+
4. 与任务最相关的 `docs/rules/*`
|
|
28
|
+
5. 与任务最相关的现行文档;如需历史背景,再看 `docs/archive/README.md`
|
|
29
|
+
6. 如需过程信息,再看 `docs/exec-plans/*`
|
|
30
|
+
|
|
31
|
+
## 维护规则
|
|
32
|
+
|
|
33
|
+
- 入口文档只做导航,不复述大段细节。
|
|
34
|
+
- 规则进 `docs/rules/`,设计理由进 `docs/design-docs/`,计划进 `docs/exec-plans/`。
|
|
35
|
+
- 需求与验收进 `docs/product-specs/`,生成物说明进 `docs/generated/`,外部资料进 `docs/references/`。
|
|
36
|
+
- 历史文档进入 `docs/archive/`,并补全归档时间、归档原因、当前依据。
|
|
37
|
+
- 若文档更新影响执行协议或入口路径,要同步检查 `AGENTS.md`、`CLAUDE.md`、`ARCHITECTURE.md`、`README.md`。
|
package/docs/SETUP_GUIDE.md
CHANGED
|
@@ -178,6 +178,71 @@ mycodemap impact -f src/cli/index.ts
|
|
|
178
178
|
mycodemap impact -f src/cli/index.ts --transitive
|
|
179
179
|
```
|
|
180
180
|
|
|
181
|
+
### 统一分析(analyze)
|
|
182
|
+
|
|
183
|
+
```bash
|
|
184
|
+
# 影响分析
|
|
185
|
+
mycodemap analyze -i impact -t src/cli/index.ts
|
|
186
|
+
mycodemap analyze -i impact -t src/cli/index.ts --scope transitive --include-tests
|
|
187
|
+
|
|
188
|
+
# 依赖分析
|
|
189
|
+
mycodemap analyze -i dependency -t src/orchestrator
|
|
190
|
+
|
|
191
|
+
# 复杂度分析
|
|
192
|
+
mycodemap analyze -i complexity -t src/domain
|
|
193
|
+
|
|
194
|
+
# 搜索分析
|
|
195
|
+
mycodemap analyze -i search -k "UnifiedResult" --topK 10
|
|
196
|
+
|
|
197
|
+
# 项目概览
|
|
198
|
+
mycodemap analyze -i overview -t src/
|
|
199
|
+
|
|
200
|
+
# JSON 输出
|
|
201
|
+
mycodemap analyze -i impact -t src/index.ts --json
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
### 工作流编排(workflow)
|
|
205
|
+
|
|
206
|
+
```bash
|
|
207
|
+
# 启动工作流
|
|
208
|
+
mycodemap workflow start "实现用户认证模块"
|
|
209
|
+
mycodemap workflow start "修复登录接口 500" --template bugfix
|
|
210
|
+
|
|
211
|
+
# 查看当前状态
|
|
212
|
+
mycodemap workflow status
|
|
213
|
+
|
|
214
|
+
# 可视化工作流
|
|
215
|
+
mycodemap workflow visualize
|
|
216
|
+
|
|
217
|
+
# 推进到下一阶段
|
|
218
|
+
mycodemap workflow proceed
|
|
219
|
+
|
|
220
|
+
# 列出所有工作流
|
|
221
|
+
mycodemap workflow list
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
### CI 门禁(ci)
|
|
225
|
+
|
|
226
|
+
```bash
|
|
227
|
+
# 检查提交格式
|
|
228
|
+
mycodemap ci check-commits
|
|
229
|
+
mycodemap ci check-commits -c 5
|
|
230
|
+
|
|
231
|
+
# 检查文件头注释
|
|
232
|
+
mycodemap ci check-headers
|
|
233
|
+
mycodemap ci check-headers -d src/domain
|
|
234
|
+
|
|
235
|
+
# 评估变更风险
|
|
236
|
+
mycodemap ci assess-risk
|
|
237
|
+
mycodemap ci assess-risk -t 0.5
|
|
238
|
+
|
|
239
|
+
# 验证输出契约
|
|
240
|
+
mycodemap ci check-output-contract
|
|
241
|
+
|
|
242
|
+
# 检查提交文件数量
|
|
243
|
+
mycodemap ci check-commit-size
|
|
244
|
+
```
|
|
245
|
+
|
|
181
246
|
### 监听模式
|
|
182
247
|
|
|
183
248
|
```bash
|
|
@@ -270,6 +335,9 @@ fi
|
|
|
270
335
|
# 可选:运行测试
|
|
271
336
|
# npm test
|
|
272
337
|
|
|
338
|
+
# 可选:当改动 README / docs / CLI 示例时检查文档护栏
|
|
339
|
+
# npm run docs:check
|
|
340
|
+
|
|
273
341
|
# 可选:检查文件头
|
|
274
342
|
# mycodemap ci check-headers
|
|
275
343
|
|
|
@@ -304,26 +372,44 @@ jobs:
|
|
|
304
372
|
|
|
305
373
|
- name: Install dependencies
|
|
306
374
|
run: npm ci
|
|
375
|
+
|
|
376
|
+
- name: Validate docs sync
|
|
377
|
+
run: npm run docs:check
|
|
378
|
+
|
|
379
|
+
- name: Run typecheck
|
|
380
|
+
run: npm run typecheck
|
|
307
381
|
|
|
308
382
|
- name: Run tests
|
|
309
383
|
run: npm test
|
|
310
384
|
|
|
311
385
|
- name: Check commits
|
|
312
386
|
run: npx mycodemap ci check-commits --range origin/main..HEAD
|
|
387
|
+
|
|
388
|
+
- name: Check docs sync via CLI
|
|
389
|
+
run: npx mycodemap ci check-docs-sync
|
|
390
|
+
|
|
391
|
+
- name: Check commit size
|
|
392
|
+
run: npx mycodemap ci check-commit-size --range origin/main..HEAD
|
|
313
393
|
|
|
314
394
|
- name: Check headers
|
|
315
395
|
run: npx mycodemap ci check-headers
|
|
396
|
+
|
|
397
|
+
- name: Assess risk
|
|
398
|
+
run: npx mycodemap ci assess-risk --threshold=0.7
|
|
316
399
|
|
|
317
|
-
- name: Generate
|
|
400
|
+
- name: Generate AI feed
|
|
318
401
|
run: npx mycodemap generate
|
|
319
402
|
|
|
320
|
-
- name: Check
|
|
321
|
-
run: git diff --exit-code .mycodemap/
|
|
403
|
+
- name: Check AI feed sync
|
|
404
|
+
run: git diff --exit-code .mycodemap/ai-feed.txt
|
|
405
|
+
|
|
406
|
+
- name: Check output contract
|
|
407
|
+
run: npx mycodemap ci check-output-contract --schema-version v1.0.0 --top-k 8 --max-tokens 160
|
|
322
408
|
```
|
|
323
409
|
|
|
324
410
|
### 其他 CI 平台
|
|
325
411
|
|
|
326
|
-
参考 [CI_GATEWAY_DESIGN.md](./CI_GATEWAY_DESIGN.md) 了解所有检查项。
|
|
412
|
+
参考 [CI_GATEWAY_DESIGN.md](./design-docs/CI_GATEWAY_DESIGN.md) 了解所有检查项。
|
|
327
413
|
|
|
328
414
|
---
|
|
329
415
|
|
|
@@ -404,4 +490,4 @@ CLI 运行日志默认写入 `.mycodemap/logs/mycodemap-YYYY-MM-DD.log`
|
|
|
404
490
|
|
|
405
491
|
- 了解 [AI 助手配置](./AI_ASSISTANT_SETUP.md)
|
|
406
492
|
- 查看 [CLI 完整命令参考](../README.md#cli-命令)
|
|
407
|
-
- 阅读 [架构设计文档](./REFACTOR_ARCHITECTURE_OVERVIEW.md)
|
|
493
|
+
- 阅读 [架构设计文档](./design-docs/REFACTOR_ARCHITECTURE_OVERVIEW.md)
|