spec-runner 1.1.16 → 1.1.17

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 (32) hide show
  1. package/bin/spec-runner-installer.js +63 -0
  2. package/package.json +1 -1
  3. package/spec-runner/templates/.claude/rules/design-docs.md +21 -4
  4. package/spec-runner/templates/.claude/rules/harness-formats.md +7 -4
  5. package/spec-runner/templates/.claude/skills/architecture-definition/SKILL.md +42 -14
  6. package/spec-runner/templates/.claude/skills/architecture-skill-development/SKILL.md +19 -19
  7. package/spec-runner/templates/.claude/skills/design-change/SKILL.md +1 -0
  8. package/spec-runner/templates/.claude/skills/design-change/templates/90_ADR/ADR/343/203/206/343/203/263/343/203/227/343/203/254/343/203/274/343/203/210.md +0 -32
  9. package/spec-runner/templates/.claude/skills/docs-driven-seed/SKILL.md +7 -20
  10. package/spec-runner/templates/.claude/skills/docs-driven-seed/templates/01_/350/246/201/344/273/266/345/256/232/347/276/251//343/203/246/343/203/223/343/202/255/343/202/277/343/202/271/350/250/200/350/252/236/350/276/236/346/233/270.md +15 -0
  11. package/spec-runner/templates/.claude/skills/docs-driven-seed/templates/01_/350/246/201/344/273/266/345/256/232/347/276/251//350/246/201/344/273/266/345/256/232/347/276/251.md +34 -0
  12. package/spec-runner/templates/.claude/skills/docs-driven-seed/templates/02_/346/246/202/350/246/201/350/250/255/350/250/210//343/202/267/343/202/271/343/203/206/343/203/240/345/205/250/344/275/223/344/277/257/347/236/260.md +33 -0
  13. package/spec-runner/templates/.claude/skills/docs-driven-seed/templates/02_/346/246/202/350/246/201/350/250/255/350/250/210//343/203/211/343/203/241/343/202/244/343/203/263/343/203/242/343/203/207/343/203/253.md +32 -0
  14. package/spec-runner/templates/.claude/skills/docs-driven-seed/templates/02_/346/246/202/350/246/201/350/250/255/350/250/210//343/203/246/343/203/274/343/202/271/343/202/261/343/203/274/343/202/271/344/270/200/350/246/247.md +15 -0
  15. package/spec-runner/templates/.claude/skills/docs-driven-seed/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/01_/343/203/211/343/203/241/343/202/244/343/203/263/{/343/203/211/343/203/241/343/202/244/343/203/263/345/220/215}.md +17 -0
  16. package/spec-runner/templates/.claude/skills/simple-seed/SKILL.md +105 -0
  17. package/spec-runner/templates/.claude/skills/simple-seed/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/01_/343/203/246/343/203/274/343/202/271/343/202/261/343/203/274/343/202/271/UC-{/346/227/245/346/234/254/350/252/236/345/220/215}.md +53 -0
  18. package/spec-runner/templates/.github/instructions/design-docs.instructions.md +21 -4
  19. package/spec-runner/templates/.github/instructions/harness-formats.instructions.md +7 -4
  20. package/spec-runner/templates/.github/skills/architecture-definition/SKILL.md +42 -14
  21. package/spec-runner/templates/.github/skills/architecture-skill-development/SKILL.md +19 -19
  22. package/spec-runner/templates/.github/skills/design-change/SKILL.md +1 -0
  23. package/spec-runner/templates/.github/skills/design-change/templates/90_ADR/ADR/343/203/206/343/203/263/343/203/227/343/203/254/343/203/274/343/203/210.md +0 -32
  24. package/spec-runner/templates/.github/skills/docs-driven-seed/SKILL.md +7 -20
  25. package/spec-runner/templates/.github/skills/docs-driven-seed/templates/01_/350/246/201/344/273/266/345/256/232/347/276/251//343/203/246/343/203/223/343/202/255/343/202/277/343/202/271/350/250/200/350/252/236/350/276/236/346/233/270.md +15 -0
  26. package/spec-runner/templates/.github/skills/docs-driven-seed/templates/01_/350/246/201/344/273/266/345/256/232/347/276/251//350/246/201/344/273/266/345/256/232/347/276/251.md +34 -0
  27. package/spec-runner/templates/.github/skills/docs-driven-seed/templates/02_/346/246/202/350/246/201/350/250/255/350/250/210//343/202/267/343/202/271/343/203/206/343/203/240/345/205/250/344/275/223/344/277/257/347/236/260.md +33 -0
  28. package/spec-runner/templates/.github/skills/docs-driven-seed/templates/02_/346/246/202/350/246/201/350/250/255/350/250/210//343/203/211/343/203/241/343/202/244/343/203/263/343/203/242/343/203/207/343/203/253.md +32 -0
  29. package/spec-runner/templates/.github/skills/docs-driven-seed/templates/02_/346/246/202/350/246/201/350/250/255/350/250/210//343/203/246/343/203/274/343/202/271/343/202/261/343/203/274/343/202/271/344/270/200/350/246/247.md +15 -0
  30. package/spec-runner/templates/.github/skills/docs-driven-seed/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/01_/343/203/211/343/203/241/343/202/244/343/203/263/{/343/203/211/343/203/241/343/202/244/343/203/263/345/220/215}.md +17 -0
  31. package/spec-runner/templates/.github/skills/simple-seed/SKILL.md +105 -0
  32. package/spec-runner/templates/.github/skills/simple-seed/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/01_/343/203/246/343/203/274/343/202/271/343/202/261/343/203/274/343/202/271/UC-{/346/227/245/346/234/254/350/252/236/345/220/215}.md +53 -0
@@ -17,6 +17,23 @@ spec_runner:
17
17
 
18
18
  ## 集約
19
19
 
20
+ ```mermaid
21
+ classDiagram
22
+ class {集約ルート} {
23
+ +{ID型} id
24
+ +{値オブジェクト} {フィールド名}
25
+ +{操作}() {戻り値型}
26
+ }
27
+ class {エンティティ} {
28
+ +{ID型} id
29
+ }
30
+ class {値オブジェクト} {
31
+ +{型} {フィールド名}
32
+ }
33
+ {集約ルート} "1" --> "0..*" {エンティティ} : 含む
34
+ {集約ルート} --> {値オブジェクト} : 持つ
35
+ ```
36
+
20
37
  | 集約 | 責務 | ルートエンティティ |
21
38
  |------|------|----------------|
22
39
  | {集約名} | {責務} | {ルートエンティティ名} |
@@ -0,0 +1,105 @@
1
+ ---
2
+ name: simple-seed
3
+ description: レイヤードアーキテクチャ / CRUD 中心のプロジェクト向け docs 正本開発フロー。ドメイン層を持たず UC・サービス層で設計する。architecture.yaml の style: layered のときに使う。
4
+ ---
5
+
6
+ # simple-seed
7
+
8
+ **レイヤードアーキテクチャ / CRUD 中心のプロジェクト向け**の docs 正本開発フロー参照実装(種)。
9
+ `architecture.yaml` の `style: layered` のときに使う。DDD が必要なプロジェクトは `docs-driven-seed` を使う。
10
+
11
+ **このスキルをそのまま使い続けない。`architecture-skill-development` で自プロジェクト専用スキルに育てることを前提とする。**
12
+
13
+ ## 全体フロー
14
+
15
+ ```
16
+ Phase 1: 要件定義
17
+ Phase 2: 概要設計(ユースケース + システム全体俯瞰)
18
+ Phase 3: ADR(必要時のみ)
19
+ Phase 4: 詳細設計(UC → DB・外部サービス)
20
+ Phase 5: TDD → 実装
21
+ ```
22
+
23
+ ## 前提ルール
24
+
25
+ - docs は正本とし、各ドキュメントに `spec_runner` frontmatter を付ける
26
+ - 詳細設計は `01_ユースケース/` `02_DB・外部サービス/` の 2 層で構成する
27
+ - `maps_to` は必ず設定する。パス推定に頼らない
28
+ - ユーザー承認なしに次フェーズへ進めない
29
+
30
+ ## Phase 1: 要件定義
31
+
32
+ `architecture-definition` で完了済み。`docs/01_要件定義/` が存在することを確認して次へ進む。
33
+
34
+ ## Phase 2: 概要設計
35
+
36
+ テンプレート: `../docs-driven-seed/templates/02_概要設計/`(ユースケース一覧・システム全体俯瞰のみ)
37
+
38
+ 1. 要件定義からユースケースを洗い出す(Query / Command を意識)
39
+ 2. テンプレートをコピーして `docs/02_概要設計/ユースケース一覧.md` を作る
40
+ 3. コンポーネント全体図・外部 IF を整理し `docs/02_概要設計/システム全体俯瞰.md` を作る
41
+ 4. ユーザーに確認・承認を得る
42
+
43
+ ### 出力
44
+
45
+ ```
46
+ docs/02_概要設計/
47
+ ユースケース一覧.md
48
+ システム全体俯瞰.md
49
+ 90_ADR/
50
+ 全体/
51
+ UC/
52
+ DB/
53
+ ```
54
+
55
+ ## Phase 3: ADR(必要時のみ)
56
+
57
+ 1. 設計判断が必要な場合だけ ADR を作る
58
+ 2. **提案時に必ず 3 案を比較する。ドキュメントには採用案と採用理由のみ記録する**
59
+ 3. ファイル名は `mmdd-{日本語タイトル}.md`、配置先は対象フォルダ
60
+
61
+ | 対象 | 配置先 |
62
+ |------|--------|
63
+ | システム横断の決定 | `90_ADR/全体/` |
64
+ | UC フローの決定 | `90_ADR/UC/` |
65
+ | DB・外部サービスの決定 | `90_ADR/DB/` |
66
+
67
+ 4. 採用案を概要設計へ反映してから次へ進む
68
+
69
+ ## Phase 4: 詳細設計
70
+
71
+ **UC → DB・外部サービス の順に設計する。**
72
+
73
+ ### 4-1. ユースケース
74
+
75
+ テンプレート: `templates/03_詳細設計/01_ユースケース/UC-{日本語名}.md`
76
+
77
+ ```
78
+ docs/03_詳細設計/01_ユースケース/
79
+ UC-{日本語名}.md
80
+ ```
81
+
82
+ ### 4-2. DB・外部サービス(必要時のみ)
83
+
84
+ ```
85
+ docs/03_詳細設計/02_DB・外部サービス/
86
+ スキーマ定義.dbml
87
+ 外部サービス.md
88
+ ```
89
+
90
+ 3. ユーザーに確認・承認を得る
91
+
92
+ ## Phase 5: TDD → 実装
93
+
94
+ `test-driven-development` スキルへ移行する。
95
+
96
+ ### 実装完了後
97
+
98
+ - `@design-reviewer` — 設計書⇔実装の整合性チェック
99
+ - `@code-reviewer` — コーディング規約への適合チェック
100
+
101
+ ## 原則
102
+
103
+ - **このスキルは種。`architecture-skill-development` でプロジェクト専用スキルに育てることを前提とする**
104
+ - **ドメイン層は持たない。ビジネスロジックは UC / サービス層で表現する**
105
+ - **`maps_to` は必ず設定する。パス推定に頼らない**
@@ -0,0 +1,53 @@
1
+ ---
2
+ spec_runner:
3
+ node_id: detail.usecase.{UC名}
4
+ kind: detailed_design
5
+ depends_on:
6
+ - overview.use_case_list
7
+ maps_to:
8
+ - src/application/{uc_name}/
9
+ - tests/application/{uc_name}/
10
+ ---
11
+
12
+ # UC-{UC名} 詳細設計
13
+
14
+ ## 概要
15
+
16
+ - トリガー: {何がこのUCを呼び出すか}
17
+ - 事前条件: {UCが成立するために必要な状態}
18
+ - 事後条件: {UC完了後の状態}
19
+
20
+ ## 入出力
21
+
22
+ | 種別 | 名前 | 型 | 説明 |
23
+ |------|------|----|------|
24
+ | 入力 | {入力名} | {型} | {説明} |
25
+ | 出力 | {出力名} | {型} | {説明} |
26
+
27
+ ## 主要フロー
28
+
29
+ ```mermaid
30
+ sequenceDiagram
31
+ {シーケンス図}
32
+ ```
33
+
34
+ 1. {ステップ1}
35
+ 2. {ステップ2}
36
+
37
+ ## 判断条件
38
+
39
+ | 判断ポイント | 条件 | アクション |
40
+ |------------|------|----------|
41
+ | {判断ポイント} | {条件} | {アクション} |
42
+
43
+ ## エラーポリシー
44
+
45
+ | エラーケース | 発生条件 | 対応 |
46
+ |------------|---------|------|
47
+ | {エラーケース} | {発生条件} | {対応} |
48
+
49
+ ## テスト観点
50
+
51
+ - {正常系の観点}
52
+ - {異常系の観点}
53
+ - {境界条件の観点}