@sk8metal/michi-cli 0.8.7 → 0.11.0

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 (116) hide show
  1. package/CHANGELOG.md +70 -1
  2. package/README.md +77 -847
  3. package/dist/scripts/config/config-schema.d.ts +3 -0
  4. package/dist/scripts/config/config-schema.d.ts.map +1 -1
  5. package/dist/scripts/config/config-schema.js +18 -0
  6. package/dist/scripts/config/config-schema.js.map +1 -1
  7. package/dist/scripts/phase-runner.js +1 -1
  8. package/dist/scripts/phase-runner.js.map +1 -1
  9. package/dist/scripts/utils/multi-repo-validator.d.ts +38 -1
  10. package/dist/scripts/utils/multi-repo-validator.d.ts.map +1 -1
  11. package/dist/scripts/utils/multi-repo-validator.js +166 -1
  12. package/dist/scripts/utils/multi-repo-validator.js.map +1 -1
  13. package/dist/scripts/utils/tasks-format-validator.js +3 -3
  14. package/dist/scripts/utils/tasks-format-validator.js.map +1 -1
  15. package/docs/README.md +20 -83
  16. package/docs/getting-started/configuration.md +379 -0
  17. package/docs/getting-started/installation.md +59 -0
  18. package/docs/getting-started/quick-start.md +76 -0
  19. package/docs/guides/ai-tools.md +311 -0
  20. package/docs/guides/atlassian-integration.md +116 -0
  21. package/docs/guides/claude-code.md +155 -0
  22. package/docs/guides/multi-repo.md +117 -0
  23. package/docs/guides/workflow.md +382 -0
  24. package/docs/reference/ai-commands.md +92 -0
  25. package/docs/reference/cli.md +756 -0
  26. package/docs/reference/environment-variables.md +192 -0
  27. package/docs/troubleshooting.md +543 -0
  28. package/package.json +1 -1
  29. package/scripts/__tests__/multi-repo-config-schema.test.ts +106 -0
  30. package/scripts/__tests__/multi-repo-validator.test.ts +229 -1
  31. package/scripts/config/config-schema.ts +20 -0
  32. package/scripts/phase-runner.ts +1 -1
  33. package/scripts/utils/__tests__/multi-repo-validator.test.ts +159 -1
  34. package/scripts/utils/multi-repo-validator.ts +210 -1
  35. package/scripts/utils/tasks-format-validator.ts +3 -3
  36. package/templates/claude/agents/e2e-first-planner/AGENT.md +1 -1
  37. package/templates/claude/agents/mermaid-validator/AGENT.md +257 -0
  38. package/templates/claude/agents/pr-resolver/AGENT.md +15 -3
  39. package/templates/claude/commands/michi/e2e-plan.md +1 -1
  40. package/templates/claude/commands/michi/spec-design.md +2 -2
  41. package/templates/claude/commands/michi/spec-tasks.md +156 -0
  42. package/templates/claude/commands/michi/test-planning.md +1 -1
  43. package/templates/claude/commands/michi/validate-design.md +3 -3
  44. package/templates/claude/commands/michi-multi-repo/impl-all.md +293 -0
  45. package/templates/claude/commands/michi-multi-repo/propagate-specs.md +284 -0
  46. package/templates/claude/commands/michi-multi-repo/spec-design.md +66 -3
  47. package/templates/claude/commands/michi-multi-repo/spec-review.md +261 -0
  48. package/templates/claude/skills/mermaid-validator/SKILL.md +261 -0
  49. package/templates/claude-agent/agents/cross-repo-reviewer.md +194 -0
  50. package/templates/claude-agent/agents/repo-spec-executor.md +113 -0
  51. package/templates/claude-agent/commands/michi/spec-tasks.md +117 -0
  52. package/templates/claude-agent/rules/code-size-monitor.md +26 -0
  53. package/templates/claude-agent/rules/code-size-rules.md +32 -0
  54. package/templates/codex/AGENTS.override.md +1 -1
  55. package/templates/codex/rules/README.md +2 -2
  56. package/templates/cursor/commands/michi/spec-tasks.md +117 -0
  57. package/templates/michi/cc-sdd-overrides/settings/rules/design-review-michi.md +1 -1
  58. package/docs/context.md +0 -59
  59. package/docs/michi-development/contributing/development.md +0 -341
  60. package/docs/michi-development/contributing/release.md +0 -365
  61. package/docs/michi-development/design/config-unification.md +0 -733
  62. package/docs/michi-development/design/design-config-current-state.md +0 -330
  63. package/docs/michi-development/design/design-config-implementation.md +0 -628
  64. package/docs/michi-development/design/design-config-migration.md +0 -952
  65. package/docs/michi-development/design/design-config-security.md +0 -771
  66. package/docs/michi-development/design/design-config-solution.md +0 -583
  67. package/docs/michi-development/design/design-config-testing.md +0 -892
  68. package/docs/michi-development/testing/manual-verification-flow.md +0 -871
  69. package/docs/michi-development/testing/manual-verification-other-tools.md +0 -1279
  70. package/docs/michi-development/testing/manual-verification-troubleshooting.md +0 -122
  71. package/docs/michi-development/testing/pre-publish-checklist.md +0 -560
  72. package/docs/michi-development/testing-strategy.md +0 -87
  73. package/docs/plan.md +0 -275
  74. package/docs/user-guide/getting-started/github-token-setup.md +0 -510
  75. package/docs/user-guide/getting-started/new-repository-setup.md +0 -704
  76. package/docs/user-guide/getting-started/quick-start.md +0 -212
  77. package/docs/user-guide/getting-started/setup.md +0 -819
  78. package/docs/user-guide/guides/agent-skills-integration.md +0 -222
  79. package/docs/user-guide/guides/customization.md +0 -537
  80. package/docs/user-guide/guides/internationalization.md +0 -540
  81. package/docs/user-guide/guides/migration-guide.md +0 -138
  82. package/docs/user-guide/guides/multi-project.md +0 -368
  83. package/docs/user-guide/guides/multi-repo-guide.md +0 -1147
  84. package/docs/user-guide/guides/phase-automation.md +0 -419
  85. package/docs/user-guide/guides/workflow.md +0 -584
  86. package/docs/user-guide/hands-on/README.md +0 -142
  87. package/docs/user-guide/hands-on/claude-agent-setup.md +0 -597
  88. package/docs/user-guide/hands-on/claude-setup.md +0 -452
  89. package/docs/user-guide/hands-on/cursor-setup.md +0 -353
  90. package/docs/user-guide/hands-on/troubleshooting.md +0 -964
  91. package/docs/user-guide/hands-on/verification-checklist.md +0 -439
  92. package/docs/user-guide/hands-on/workflow-walkthrough.md +0 -909
  93. package/docs/user-guide/reference/config.md +0 -589
  94. package/docs/user-guide/reference/multi-repo-api.md +0 -771
  95. package/docs/user-guide/reference/quick-reference.md +0 -297
  96. package/docs/user-guide/reference/security-test-payloads.md +0 -50
  97. package/docs/user-guide/reference/tasks-template.md +0 -550
  98. package/docs/user-guide/release/ci-setup-java.md +0 -114
  99. package/docs/user-guide/release/ci-setup-nodejs.md +0 -94
  100. package/docs/user-guide/release/ci-setup-php.md +0 -102
  101. package/docs/user-guide/release/ci-setup-troubleshooting.md +0 -94
  102. package/docs/user-guide/release/ci-setup.md +0 -188
  103. package/docs/user-guide/release/release-flow.md +0 -476
  104. package/docs/user-guide/templates/test-specs/README.md +0 -173
  105. package/docs/user-guide/templates/test-specs/e2e-test-spec-template.md +0 -553
  106. package/docs/user-guide/templates/test-specs/integration-test-spec-template.md +0 -435
  107. package/docs/user-guide/templates/test-specs/performance-test-spec-template.md +0 -454
  108. package/docs/user-guide/templates/test-specs/security-test-spec-template.md +0 -625
  109. package/docs/user-guide/templates/test-specs/unit-test-spec-template.md +0 -328
  110. package/docs/user-guide/testing/integration-tests.md +0 -312
  111. package/docs/user-guide/testing/tdd-cycle.md +0 -349
  112. package/docs/user-guide/testing/test-execution-flow.md +0 -396
  113. package/docs/user-guide/testing/test-failure-handling.md +0 -521
  114. package/docs/user-guide/testing/test-planning-flow.md +0 -185
  115. package/docs/user-guide/testing-strategy.md +0 -185
  116. package/docs/verification-guide.md +0 -518
@@ -1,584 +0,0 @@
1
- # AI開発ワークフローガイド
2
-
3
- > **凡例について**: `<feature>` などの記号の意味は [README.md#凡例の記号説明](../README.md#凡例の記号説明) を参照してください。
4
-
5
- ## 概要
6
-
7
- このガイドでは、Michiを使用したAI駆動開発フローの全体像を説明します。
8
-
9
- ## ワークフロー全体像
10
-
11
- > **注**: このワークフローは cc-sdd (Spec-Driven Development) の標準フローを Michi が拡張したものです。
12
- > - **cc-sdd 標準**: Phase 0.0-0.2, 0.5 (`/kiro:*` コマンド)
13
- > - **Michi 固有拡張**: Phase 0.3-0.4, 0.6-0.7, Phase 1-5, Phase A/B (テスト計画・実行、JIRA/Confluence連携)
14
-
15
- ```
16
- Phase 0.0: 仕様の初期化 (/kiro:spec-init) ← cc-sdd 標準
17
-
18
- Phase 0.1: 要件定義 (/kiro:spec-requirements) ← cc-sdd 標準
19
- ↓ GitHub → Confluence同期 ← Michi 固有
20
- ↓ 企画・部長が承認
21
-
22
- Phase 0.2: 設計 (/michi:spec-design または /kiro:spec-design)
23
- ↓ /michi:spec-design 推奨(Phase 0.3-0.4 ガイダンス付き)
24
- ↓ GitHub → Confluence同期 ← Michi 固有
25
- ↓ 見積もり生成 → Excel出力 ← Michi 固有
26
- ↓ アーキテクト・部長が承認
27
-
28
- Phase 0.3: テストタイプの選択 ← Michi 固有(重要)
29
- ↓ テスト計画フローに従う
30
-
31
- Phase 0.4: テスト仕様書の作成 ← Michi 固有(重要)
32
- ↓ テンプレートを使用
33
-
34
- Phase 0.5: タスク分割 (/kiro:spec-tasks) ← cc-sdd 標準
35
- ↓ tasks.md生成
36
-
37
- Phase 0.6: タスクのJIRA同期 ← Michi 固有
38
- ↓ Epic/Story/Subtask自動作成
39
-
40
- Phase 0.7: Confluence同期 ← Michi 固有
41
-
42
- Phase 1: 環境構築・基盤整備 ← Michi 固有
43
- ↓ テスト環境セットアップ
44
-
45
- Phase 2: TDD実装 (/kiro:spec-impl) ← cc-sdd 標準
46
- ↓ テスト → コード → リファクタリング
47
-
48
- Phase A: PR作成前の自動テスト(CI/CD) ← Michi 固有
49
- ↓ 単体テスト + Lint + ビルド
50
- ↓ GitHub PR作成
51
- ↓ PRマージ
52
-
53
- Phase 3: 追加の品質保証(PRマージ後) ← Michi 固有
54
- ↓ 静的解析・セキュリティスキャン
55
-
56
- Phase B: リリース準備時の手動テスト ← Michi 固有
57
- ↓ 統合・E2E・パフォーマンス・セキュリティ
58
-
59
- Phase 4: リリース準備ドキュメント作成 (/kiro:release-prep) ← Michi 固有
60
- ↓ Confluenceリリース手順書
61
- ↓ リリースJIRA起票
62
-
63
- Phase 5: リリース実行 ← Michi 固有
64
- ↓ タグ作成 → CI/CD → GitHub Release作成
65
- ```
66
-
67
- ## フェーズ別詳細
68
-
69
- ### Phase 0.0-0.1: 仕様の初期化と要件定義
70
-
71
- #### Phase 0.0 Step 1: 仕様の初期化
72
-
73
- Cursorで実行:
74
-
75
- ```bash
76
- # 凡例
77
- /kiro:spec-init <機能説明>
78
-
79
- # 具体例
80
- /kiro:spec-init ユーザー認証機能を実装したい。OAuth 2.0とJWTを使用。
81
- ```
82
-
83
- AIが `.kiro/specs/<feature>/` ディレクトリを作成します。
84
-
85
- #### Phase 0.1 Step 1: 要件定義の生成
86
-
87
- ```bash
88
- # 凡例
89
- /kiro:spec-requirements <feature>
90
-
91
- # 具体例
92
- /kiro:spec-requirements user-auth
93
- ```
94
-
95
- AIが以下を生成:
96
-
97
- - `.kiro/specs/<feature>/requirements.md`
98
- - ビジネス要件、機能要件、非機能要件、リスク
99
-
100
- #### Phase 0.1 Step 2: GitHubにコミット
101
-
102
- ```bash
103
- # 凡例
104
- jj commit -m "docs: <feature> 要件定義追加"
105
- jj git push
106
-
107
- # 具体例
108
- jj commit -m "docs: ユーザー認証 要件定義追加"
109
- jj git push
110
- ```
111
-
112
- #### Phase 0.1 Step 3: Confluenceに同期
113
-
114
- Cursorで実行:
115
-
116
- ```bash
117
- # 凡例
118
- /kiro:confluence-sync <feature> requirements
119
-
120
- # 具体例
121
- /kiro:confluence-sync user-auth requirements
122
- ```
123
-
124
- または:
125
-
126
- ```bash
127
- # 凡例
128
- michi confluence:sync <feature> requirements
129
-
130
- # 具体例
131
- michi confluence:sync user-auth requirements
132
- ```
133
-
134
- AIが自動的に:
135
-
136
- - Confluenceページ作成
137
- - プロジェクト情報付与
138
- - 企画・部長にメンション通知
139
-
140
- #### Phase 0.1 Step 4: 承認待ち
141
-
142
- 企画・部長がConfluenceで:
143
-
144
- - 要件をレビュー
145
- - コメントでフィードバック
146
- - Page Propertiesで承認
147
-
148
- ### Phase 0.2: 設計
149
-
150
- #### Phase 0.2 Step 1: 設計書の生成
151
-
152
- ```bash
153
- # 推奨: Michi 拡張版(Phase 0.3-0.4 ガイダンス付き)
154
- /michi:spec-design <feature>
155
-
156
- # または cc-sdd 標準版
157
- /kiro:spec-design <feature>
158
-
159
- # 具体例
160
- /michi:spec-design user-auth
161
- ```
162
-
163
- **推奨**: `/michi:spec-design` を使用すると、設計完了後に Phase 0.3-0.4(テスト計画)へのガイダンスが自動的に表示されます。
164
-
165
- AIが以下を生成:
166
-
167
- - アーキテクチャ図
168
- - API設計
169
- - データベース設計
170
- - 見積もり
171
-
172
- #### Phase 0.2 Step 2: GitHubにコミット
173
-
174
- ```bash
175
- # 凡例
176
- jj commit -m "docs: <feature> 設計追加"
177
- jj git push
178
-
179
- # 具体例
180
- jj commit -m "docs: ユーザー認証 設計追加"
181
- jj git push
182
- ```
183
-
184
- #### Phase 0.2 Step 3: Confluenceに同期 + 見積もり出力
185
-
186
- ```bash
187
- # 凡例
188
- michi confluence:sync <feature> design
189
-
190
- # 具体例
191
- michi confluence:sync user-auth design
192
- ```
193
-
194
- 見積もりExcelファイルが `estimates/<feature>-estimate.xlsx` に出力されます。
195
-
196
- #### Phase 0.2 Step 4: 承認待ち
197
-
198
- アーキテクト・部長がレビュー・承認
199
-
200
- ### Phase 0.3-0.4: テスト計画
201
-
202
- > **Michi 固有機能**: Phase 0.3-0.4 は Michi 独自の拡張フェーズです。cc-sdd 標準には含まれません。
203
- >
204
- > `/michi:spec-design` コマンドを使用すると、設計完了後に自動的にこのフェーズへのガイダンスが表示されます。
205
-
206
- #### Phase 0.3: テストタイプの選択
207
-
208
- Phase 0.2(設計)完了後、Phase 0.5(タスク分割)の前に、どのテストタイプが必要かを決定します。
209
-
210
- 詳細は [テスト計画フロー](../testing/test-planning-flow.md#phase-03-テストタイプの選択) を参照してください。
211
-
212
- **選択基準**:
213
-
214
- - 単体テスト: すべてのプロジェクトで必須
215
- - 統合テスト: 複数コンポーネントが連携するシステムで推奨
216
- - E2Eテスト: ユーザーインターフェースを持つアプリケーションで推奨
217
- - パフォーマンステスト: 高負荷が予想される、レスポンスタイムが重要な場合
218
- - セキュリティテスト: 機密データを扱う、外部公開APIの場合
219
-
220
- #### Phase 0.4: テスト仕様書の作成
221
-
222
- Phase 0.3で選択したテストタイプごとに、テスト仕様書を作成します。
223
-
224
- 詳細は [テスト計画フロー](../testing/test-planning-flow.md#phase-04-テスト仕様書の作成) を参照してください。
225
-
226
- **使用するテンプレート**:
227
-
228
- - 単体テスト: `templates/test-specs/unit-test-spec-template.md`
229
- - 統合テスト: `templates/test-specs/integration-test-spec-template.md`
230
- - E2Eテスト: `templates/test-specs/e2e-test-spec-template.md`
231
- - パフォーマンステスト: `templates/test-specs/performance-test-spec-template.md`
232
- - セキュリティテスト: `templates/test-specs/security-test-spec-template.md`
233
-
234
- ### Phase 0.5-0.6: タスク分割とJIRA同期
235
-
236
- #### Phase 0.5 Step 1: タスク生成
237
-
238
- ```bash
239
- # 凡例
240
- /kiro:spec-tasks <feature>
241
-
242
- # 具体例
243
- /kiro:spec-tasks user-auth
244
- ```
245
-
246
- AIが実装タスクをストーリーに分割し、tasks.mdを生成します。
247
-
248
- #### Phase 0.5 Step 2: GitHubにコミット
249
-
250
- ```bash
251
- # 凡例
252
- jj commit -m "docs: <feature> タスク分割追加"
253
- jj git push
254
-
255
- # 具体例
256
- jj commit -m "docs: ユーザー認証 タスク分割追加"
257
- jj git push
258
- ```
259
-
260
- #### Phase 0.6 Step 1: JIRAに同期
261
-
262
- ```bash
263
- # 凡例
264
- michi jira:sync <feature>
265
-
266
- # 具体例
267
- michi jira:sync user-auth
268
- ```
269
-
270
- 自動的に:
271
-
272
- - Epic作成: `[<project-name>] <feature>`
273
- - Story作成: 各実装タスク
274
- - Subtask作成: テスト、レビュータスク
275
-
276
- ### Phase 1: 環境構築・基盤整備
277
-
278
- Phase 0.6までのテスト計画が完了したら、Phase 1で実装環境とテスト環境を整備します。
279
-
280
- 詳細は [テスト計画フロー](../testing/test-planning-flow.md#phase-1-環境構築基盤整備) を参照してください。
281
-
282
- **実施内容**:
283
-
284
- - プロジェクト初期化
285
- - 依存関係インストール(テストフレームワーク、Lintツール等)
286
- - データベース接続設定
287
- - テスト環境の準備(pytest, vitest, JUnit等)
288
- - テストデータの準備(fixtures, seed等)
289
- - テストディレクトリ構造の作成
290
-
291
- **テストディレクトリ構造例**:
292
-
293
- ```
294
- tests/
295
- ├── specs/ # テスト仕様書(Phase 0.4で作成)
296
- ├── unit/ # 単体テスト(Phase 2で作成)
297
- ├── integration/ # 統合テスト(Phase 2で作成、必要に応じて)
298
- ├── e2e/ # E2Eテスト(Phase 2で作成、必要に応じて)
299
- ├── performance/ # パフォーマンステスト(Phase 2で作成、任意)
300
- └── security/ # セキュリティテスト(Phase 2で作成、任意)
301
- ```
302
-
303
- ### Phase 2: TDD実装
304
-
305
- #### Phase 2 Step 1: TDD実装(JIRA連携付き)
306
-
307
- ```bash
308
- # 凡例
309
- /kiro:spec-impl <feature>
310
-
311
- # 具体例
312
- /kiro:spec-impl user-auth
313
- ```
314
-
315
- AIがTDD(テスト駆動開発)で実装します。JIRA連携は**自動**で行われます。
316
-
317
- **自動実行される処理**:
318
-
319
- - ✅ spec.json から JIRA 情報(Epic + Story)を自動取得
320
- - ✅ Epic と最初の Story を「進行中」に移動
321
- - ✅ TDD サイクルで実装
322
- - ✅ PR 作成
323
- - ✅ Epic と最初の Story を「レビュー待ち」に移動
324
- - ✅ JIRA に PR リンクをコメント
325
-
326
- 詳細は [TDDサイクル](../testing/tdd-cycle.md) を参照してください。
327
-
328
- **TDDサイクル**:
329
-
330
- 1. RED: 失敗するテストを書く
331
- 2. GREEN: 最小限の実装でテストを通す
332
- 3. REFACTOR: コードを改善する
333
-
334
- **重要**: Phase 2では、テストコードと実装コードを同時進行で作成します。Phase 0.4で作成したテスト仕様書に基づき、TDDサイクルを繰り返しながら開発を進めます。
335
-
336
- #### Phase 2 Step 2: コミット
337
-
338
- ```bash
339
- # 凡例
340
- jj commit -m "feat: <feature> 実装 [JIRA-XXX]"
341
- jj bookmark create <project-id>/feature/<feature> -r '@-'
342
- jj git push --bookmark <project-id>/feature/<feature> --allow-new
343
-
344
- # 具体例
345
- jj commit -m "feat: ユーザー認証実装 [MICHI-123]"
346
- jj bookmark create michi/feature/user-auth -r '@-'
347
- jj git push --bookmark michi/feature/user-auth --allow-new
348
- ```
349
-
350
- **注意**: JIRA連携は `/kiro:spec-impl` コマンドが自動で行うため、手動でのステータス変更は不要です。
351
-
352
- **個別のJIRA操作が必要な場合**:
353
-
354
- ```bash
355
- # ステータス変更
356
- michi jira:transition MICHI-123 "In Progress"
357
-
358
- # コメント追加
359
- michi jira:comment MICHI-123 "補足コメント"
360
- ```
361
-
362
- ### Phase A: PR作成前の自動テスト
363
-
364
- Phase 2(実装)が完了したら、PR作成前にPhase Aのテストを実行します。
365
-
366
- 詳細は [テスト実行フロー - Phase A](../testing/test-execution-flow.md#phase-a-pr作成前の自動テスト) を参照してください。
367
-
368
- **実行内容**:
369
-
370
- - 単体テスト(必須)
371
- - Lint(必須)
372
- - ビルド(必須)
373
-
374
- **実行方法**:
375
-
376
- - ローカルで事前確認: `npm test && npm run lint && npm run build`
377
- - CI/CDが自動実行(GitHub Actions / Screwdriver)
378
-
379
- **合格基準**:
380
-
381
- - すべての単体テストが成功
382
- - Lintエラー: 0件
383
- - ビルドエラー: 0件
384
-
385
- Phase Aが成功したら、PRを作成します。
386
-
387
- #### Phase A Step 1: PR作成
388
-
389
- ```bash
390
- # 凡例
391
- gh pr create --head <project-id>/feature/<feature> --base main \
392
- --title "[JIRA-XXX] <タイトル>" \
393
- --body "<説明>"
394
-
395
- # 具体例
396
- gh pr create --head michi/feature/user-auth --base main \
397
- --title "[MICHI-123] ユーザー認証実装" \
398
- --body "実装内容..."
399
- ```
400
-
401
- ### Phase 3: 追加の品質保証(PRマージ後)
402
-
403
- PRがマージされた後、Phase 3で追加の品質保証を実施します。
404
-
405
- **実行内容**:
406
-
407
- - 静的解析(詳細な品質チェック)
408
- - セキュリティスキャン
409
- - カバレッジ確認と改善
410
-
411
- **目的**:
412
-
413
- - Phase Aで検出できなかった問題の早期発見
414
- - コード品質の継続的な向上
415
- - リリース前の品質保証を強化
416
-
417
- ### Phase B: リリース準備時の手動テスト
418
-
419
- Phase 3完了後、リリース準備時にPhase Bのテストを実行します。
420
-
421
- 詳細は [テスト実行フロー - Phase B](../testing/test-execution-flow.md#phase-b-リリース準備時の手動テスト) を参照してください。
422
-
423
- **実行内容**:
424
-
425
- - 統合テスト(推奨): 複数コンポーネント間の連携を検証
426
- - E2Eテスト(推奨): ユーザー視点での完全なフローを検証
427
- - パフォーマンステスト(任意): システムの性能を検証
428
- - セキュリティテスト(任意): セキュリティ脆弱性を検証
429
-
430
- **対話的テスト作成**:
431
-
432
- テストファイルを対話的に作成できます:
433
-
434
- ```bash
435
- npm run test:interactive
436
- ```
437
-
438
- 以下のテストタイプに対応:
439
-
440
- 1. **手動回帰テスト**: curlベースのAPIテスト
441
- 2. **負荷テスト**: Locustを使用した負荷テスト
442
- 3. **セキュリティテスト**: OWASP ZAPを使用したセキュリティスキャン
443
-
444
- 実行ファイルは `michi phase:run` コマンドにより動的に生成されます。
445
-
446
- **実行タイミング**:
447
-
448
- - PRがmainブランチにマージされた後
449
- - リリースタグを作成する前
450
-
451
- **重要**: Phase Bで問題が見つかった場合は、バグ修正のPRを作成し、Phase A → マージ → Phase Bのフローを経て修正します。
452
-
453
- ### Phase 4-5: リリース準備と実行
454
-
455
- Phase Bのすべてのテストが成功したら、リリース準備とリリース実行を行います。
456
-
457
- 詳細は [リリースフロー](../release/release-flow.md) を参照してください。
458
-
459
- #### Phase 4: リリース準備ドキュメント作成
460
-
461
- **Confluenceリリース手順書作成**:
462
-
463
- - リリースバージョン、予定日、担当者
464
- - リリース内容(新機能、バグ修正、変更点)
465
- - 影響範囲
466
- - リリース手順(事前準備、作業、事後確認)
467
- - ロールバック手順
468
-
469
- **リリースJIRA起票**:
470
-
471
- - プロジェクト、課題タイプ、要約、説明
472
- - Phase B完了確認チェックリスト
473
- - リリース作業チェックリスト
474
-
475
- #### Phase 5: リリース実行
476
-
477
- **タグ作成**:
478
-
479
- ```bash
480
- git tag -a v1.0.0 -m "Release version 1.0.0"
481
- git push origin v1.0.0
482
- ```
483
-
484
- **CI/CD実行確認**:
485
-
486
- - GitHub ActionsまたはScrewdriverのステータス確認
487
-
488
- **GitHub Release作成**:
489
-
490
- ```bash
491
- gh release create v1.0.0 --title "Release v1.0.0" --notes-file release-notes.md
492
- ```
493
-
494
- **リリース完了後**:
495
-
496
- - リリースJIRAをクローズ
497
- - 関係者への報告
498
-
499
- ## 統合ワークフロー実行
500
-
501
- すべてのフェーズを自動実行:
502
-
503
- ```bash
504
- # 凡例
505
- michi workflow:run --feature <feature>
506
-
507
- # 具体例
508
- michi workflow:run --feature user-auth
509
- ```
510
-
511
- 承認ゲートで一時停止し、承認後に次のフェーズに進みます。
512
-
513
- ### 承認ゲートの設定
514
-
515
- ワークフロー実行時の承認ゲートで使用するロール名は、環境変数で設定できます。
516
-
517
- #### 環境変数設定
518
-
519
- `.env` ファイルに以下を追加:
520
-
521
- ```bash
522
- # 要件定義フェーズの承認者
523
- APPROVAL_GATES_REQUIREMENTS=pm,director
524
-
525
- # 設計フェーズの承認者
526
- APPROVAL_GATES_DESIGN=architect,director
527
-
528
- # リリースフェーズの承認者
529
- APPROVAL_GATES_RELEASE=sm,director
530
- ```
531
-
532
- #### 設定例
533
-
534
- **デフォルト(英語ロール名):**
535
-
536
- ```bash
537
- APPROVAL_GATES_REQUIREMENTS=pm,director
538
- APPROVAL_GATES_DESIGN=architect,director
539
- APPROVAL_GATES_RELEASE=sm,director
540
- ```
541
-
542
- **日本語ロール名:**
543
-
544
- ```bash
545
- APPROVAL_GATES_REQUIREMENTS=企画,部長
546
- APPROVAL_GATES_DESIGN=アーキテクト,部長
547
- APPROVAL_GATES_RELEASE=SM,部長
548
- ```
549
-
550
- **カスタムロール名:**
551
-
552
- ```bash
553
- APPROVAL_GATES_REQUIREMENTS=product-manager,cto,legal
554
- APPROVAL_GATES_DESIGN=tech-lead,architect,security
555
- APPROVAL_GATES_RELEASE=release-manager,qa-lead,director
556
- ```
557
-
558
- 詳細は [セットアップガイド](./setup.md#4-3-ワークフロー承認ゲートの設定オプション) を参照してください。
559
-
560
- ## ベストプラクティス
561
-
562
- 1. **小さく始める**: 最初は1フェーズずつ手動実行
563
- 2. **承認を待つ**: 各フェーズで承認を取ってから次へ
564
- 3. **GitHubを真実の源に**: 編集は常にGitHubで
565
- 4. **定期的な同期**: GitHub更新後は必ずConfluence/JIRA同期
566
- 5. **プロジェクトメタデータの維持**: `.kiro/project.json` を最新に保つ
567
-
568
- ## トラブルシューティング
569
-
570
- ### Confluence同期エラー
571
-
572
- - `.env` の認証情報を確認
573
- - Confluenceスペースが存在するか確認
574
- - Markdownファイルが存在するか確認
575
-
576
- ### JIRA同期エラー
577
-
578
- - JIRAプロジェクトキーが正しいか確認
579
- - Epic/Storyの作成権限があるか確認
580
-
581
- ### PR作成エラー
582
-
583
- - GitHub認証を確認: `gh auth status`
584
- - ブランチが存在するか確認: `jj bookmark list`