@unlaxer/dge-toolkit 1.1.1 → 1.2.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.
package/README.md CHANGED
@@ -41,6 +41,18 @@ Go/No-Go: 今泉 + 鷲津 + 僕
41
41
  障害振り返り: 今泉 + 千石 + Red Team
42
42
  ```
43
43
 
44
+ ## パターン(プリセット)
45
+
46
+ | プリセット | 用途 |
47
+ |---|---|
48
+ | 🆕 new-project | 新規プロジェクト |
49
+ | 🔧 feature-extension | 機能追加 |
50
+ | 🚀 pre-release | リリース前チェック |
51
+ | 📢 advocacy | 社内提案 |
52
+ | 🔍 comprehensive | 網羅的 DGE |
53
+
54
+ 詳細は [patterns.md](./patterns.md) を参照。
55
+
44
56
  ## フォルダ構成
45
57
 
46
58
  ```
@@ -48,6 +60,7 @@ dge/
48
60
  ├── README.md ← これ
49
61
  ├── LICENSE
50
62
  ├── method.md ← DGE の方法論
63
+ ├── patterns.md ← 20 パターン + 5 プリセット
51
64
  ├── characters/
52
65
  │ └── catalog.md ← 12 キャラの一覧 + prompt
53
66
  ├── templates/ ← テーマ別テンプレート
package/install.sh CHANGED
@@ -34,6 +34,7 @@ else
34
34
  cp "${SRC}/characters/catalog.md" "${DGE_DIR}/characters/"
35
35
  cp "${SRC}/templates/"*.md "${DGE_DIR}/templates/"
36
36
  [ -f "${SRC}/integration-guide.md" ] && cp "${SRC}/integration-guide.md" "${DGE_DIR}/"
37
+ [ -f "${SRC}/patterns.md" ] && cp "${SRC}/patterns.md" "${DGE_DIR}/"
37
38
  # Version tracking for updates
38
39
  SRC_VERSION="$(cat "${SRC}/version.txt" 2>/dev/null || echo "1.0.0")"
39
40
  echo "${SRC_VERSION}" > "${DGE_DIR}/version.txt"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unlaxer/dge-toolkit",
3
- "version": "1.1.1",
3
+ "version": "1.2.0",
4
4
  "description": "DGE (Dialogue-driven Gap Extraction) — 会話劇で設計の穴を発見するメソッドkit",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -29,6 +29,7 @@
29
29
  "templates/",
30
30
  "skills/",
31
31
  "integration-guide.md",
32
+ "patterns.md",
32
33
  "install.sh",
33
34
  "update.sh"
34
35
  ],
package/patterns.md ADDED
@@ -0,0 +1,71 @@
1
+ # DGE Dialogue Patterns — 20 パターン + 5 プリセット
2
+
3
+ ## 概要
4
+
5
+ パターンは「どういう角度で設計の穴を攻めるか」を決める。テンプレート(テーマ)× パターン(角度)の組み合わせで会話劇が生成される。
6
+
7
+ ## パターン早見表
8
+
9
+ ### Category A: 対比パターン(5)
10
+ 2 つの状況を並べて差異から発見を得る。
11
+
12
+ | ID | パターン | 発見するもの |
13
+ |---|---|---|
14
+ | A1 | `before-after` 導入前後対比 | 導入効果、残存する手動ステップ |
15
+ | A2 | `role-contrast` ロール対比 | 権限問題、ロール別 UX の欠如 |
16
+ | A3 | `app-type-variation` アプリ種別変奏 | 種別固有の制約、テンプレの限界 |
17
+ | A4 | `expertise-contrast` 習熟度対比 | 初心者ガイダンス不足、パワーユーザー最適化 |
18
+ | A5 | `platform-contrast` プラットフォーム対比 | レスポンシブ対応、タッチ操作、API 設計 |
19
+
20
+ ### Category B: 探索パターン(7)
21
+ 特定の状況を設定して、通常の spec 検討では見えない問題を炙り出す。
22
+
23
+ | ID | パターン | 発見するもの |
24
+ |---|---|---|
25
+ | B1 | `zero-state` 空状態起動 | オンボーディング、デフォルト値、初期 UX |
26
+ | B2 | `return-after-absence` 不在復帰 | サマリー機能、コンテキスト回復 |
27
+ | B3 | `escalation-chain` エスカレーション連鎖 | エラー回復、フォールバック、最終手段 |
28
+ | B4 | `cross-persona-conflict` ペルソナ間衝突 | 排他制御、優先度ルール、通知 |
29
+ | B5 | `migration-path` 移行パス | データ変換、互換性、ロールバック |
30
+ | B6 | `multi-tenant` マルチテナント分離 | データリーク、権限バイパス |
31
+ | B7 | `concurrent-operation` 同時操作 | 楽観ロック、last-write-wins、競合 |
32
+
33
+ ### Category C: 限界探索パターン(8)
34
+ システムの限界点やワークフロー自体の弱点を意図的に探す。
35
+
36
+ | ID | パターン | 発見するもの |
37
+ |---|---|---|
38
+ | C1 | `scale-break` スケール破綻 | ページネーション、タイムアウト、メモリ |
39
+ | C2 | `hallucination-probe` 幻覚探査 | LLM 生成の信頼性、存在しない機能の補完 |
40
+ | C3 | `convergence-test` 収束テスト | DGE 反復の収束判定、矛盾する修正 |
41
+ | C4 | `drift-detection` 乖離検出 | 実装後の spec 乖離、ドキュメント陳腐化 |
42
+ | C5 | `security-adversary` セキュリティ攻撃者 | 入力バリデーション、認証バイパス |
43
+ | C6 | `accessibility-barrier` アクセシビリティ障壁 | スクリーンリーダー、キーボード操作 |
44
+ | C7 | `disaster-recovery` 災害復旧 | バックアップ、データ整合性、フェイルオーバー |
45
+ | C8 | `i18n-mismatch` 国際化不一致 | 文字化け、日付/通貨、翻訳漏れ |
46
+
47
+ ## プリセット(推奨パターンセット)
48
+
49
+ | プリセット | パターン | 用途 |
50
+ |---|---|---|
51
+ | 🆕 `new-project` | zero-state, role-contrast, escalation-chain | 新規プロジェクト |
52
+ | 🔧 `feature-extension` | before-after, cross-persona-conflict, expertise-contrast | 機能追加 |
53
+ | 🚀 `pre-release` | scale-break, security-adversary, concurrent-operation, disaster-recovery | リリース前チェック |
54
+ | 📢 `advocacy` | before-after, app-type-variation, role-contrast | 社内提案・導入説得 |
55
+ | 🔍 `comprehensive` | zero-state, role-contrast, escalation-chain, cross-persona-conflict, scale-break, security-adversary, migration-path | 網羅的 DGE |
56
+
57
+ ## テンプレート → プリセット 自動推奨
58
+
59
+ | テンプレート | 推奨プリセット |
60
+ |---|---|
61
+ | api-design | feature-extension |
62
+ | feature-planning | new-project |
63
+ | go-nogo | advocacy |
64
+ | incident-review | comprehensive |
65
+ | security-review | pre-release |
66
+
67
+ パターンを指定しなければ、テンプレートに応じたプリセットが自動的に使われます。
68
+
69
+ ## 詳細
70
+
71
+ 各パターンの詳細な説明と実績は [docs/dge-v2/dge-dialogue-patterns.md](../docs/dge-v2/dge-dialogue-patterns.md) を参照。
@@ -1,4 +1,4 @@
1
- <!-- DGE-toolkit (MIT License) — https://github.com/xxx/DGE-toolkit -->
1
+ <!-- DGE-toolkit (MIT License) -->
2
2
  <!-- 前提条件: プロジェクトルートに dge/ フォルダが存在すること -->
3
3
 
4
4
  # Skill: DGE Session 実行
@@ -10,152 +10,178 @@
10
10
  - 「gap を探して」
11
11
  - 「壁打ちして」
12
12
  - 「ブレストして」
13
+ - 「実装できるまで回して」(→ 自動反復モード)
13
14
 
14
15
  ## 前提条件
15
16
  - `dge/method.md` が存在すること
16
- - 見つからない場合、session を開始せず以下を案内する:
17
- 「DGE toolkit がインストールされていません。https://github.com/xxx/DGE-toolkit を参照してインストールしてください。」
17
+ - 見つからない場合、session を開始せず install 案内を出す
18
18
 
19
19
  ## MUST ルール(必ず守る)
20
- 1. **キャラクター選択はユーザーに提示して確認を得てから進む。** 確認なしで会話劇を生成しない。推奨セットを 1 つ提案し「変更しますか?」と聞く。
21
- 2. **会話劇の全文を画面に表示し、同時に markdown ファイルとして保存する。** 画面には全文を出す。保存はユーザーに聞かず無条件で行う。画面表示の直後にファイル保存する。保存先ディレクトリが存在しない場合のみ、(a) 作成する (b) 別の場所を指定する をユーザーに聞く。デフォルトは `dge/sessions/`。
22
- 3. **会話劇の後、Gap 一覧テーブルを出力する。** テーブルの列は: `| # | Gap | Category | Severity |`
23
- 4. **サマリー表示後、ユーザーの次のアクション指示を待つ。** 勝手に次の session や実装を開始しない。
24
- 5. **サマリーの後に選択肢を提示する:** DGE を回す / 実装する / 後で
25
- 6. **初回チェック:** CLAUDE.md に DGE の記述があるか確認する。なければ「CLAUDE.md に DGE の記述を追記しますか?(次回から自動で認識されます)」と聞く。Yes なら追記して続行、No ならそのまま続行。
26
- 7. **「実装する」を選んだ場合、Critical/High の Gap について Spec ファイルを `dge/specs/` に生成してからでなければ実装に進まない。** Medium 以下は SHOULD。Low は Action Item のみ。
27
- 8. **`dge/specs/` に生成する全ファイルの冒頭に DGE 生成警告ヘッダを入れ、`status: draft` のフロントマターを付与する。**
28
- 9. **DGE は `dge/` 内にのみ書き込む。プロジェクトの docs/ や既存ファイルを直接変更しない。**(CLAUDE.md への初回追記提案のみ例外)
20
+ 1. **キャラクター選択はユーザーに提示して確認を得てから進む。** 推奨セットを 1 つ提案し「変更しますか?」と聞く。
21
+ 2. **会話劇の全文を画面に表示し、同時に markdown ファイルとして保存する。** 保存はユーザーに聞かず無条件で行う。保存先ディレクトリが存在しない場合のみ確認。デフォルト `dge/sessions/`。**(自動反復モード中は画面サマリーのみ、ファイル保存は MUST)**
22
+ 3. **会話劇の後、Gap 一覧テーブルを出力する。** 列: `| # | Gap | Category | Severity |`
23
+ 4. **サマリー表示後、ユーザーの次のアクション指示を待つ。** 勝手に次の session や実装を開始しない。**(自動反復モード中は自動で次の iteration に進む)**
24
+ 5. **サマリーの後に番号付き選択肢を提示する。**
25
+ 6. **初回チェック:** CLAUDE.md に DGE の記述がなければ追記を提案。
26
+ 7. **「実装する」を選んだ場合、Critical/High の Gap Spec `dge/specs/` に生成してから実装に進む。** Medium SHOULD。Low は Action Item のみ。
27
+ 8. **`dge/specs/` の全ファイルに DGE 生成警告ヘッダと `status: draft` フロントマターを付与する。**
28
+ 9. **DGE は `dge/` 内にのみ書き込む。** プロジェクトの docs/ や既存ファイルを直接変更しない(CLAUDE.md 初回提案のみ例外)。
29
+ 10. **自動反復モード中、各 iteration の出力をファイルに保存する。** 省略不可。
29
30
 
30
31
  ## SHOULD ルール(推奨)
31
- 1. テンプレート候補が 1 つなら自動選択し報告する。2 つ以上ならユーザーに提示する。
32
+ 1. テンプレート候補 1 つなら自動選択して報告。2 つ以上ならユーザーに提示。
32
33
  2. Gap 詳細は Observe / Suggest / Act の構造で書く。
33
- 3. 会話劇は 3-5 Scene で構成する。先輩(ナレーション)で各 Scene の背景を設定する。
34
- 4. サマリー表示時に全文ファイルへのパスを表示する。
35
- 5. Medium の Gap も Spec 化する(Low は Action Item のみで十分)。
34
+ 3. 会話劇は 3-5 Scene。先輩(ナレーション)で各 Scene の背景を設定。
35
+ 4. サマリー表示時に全文ファイルパスを表示。
36
+ 5. Medium の Gap も Spec 化する。
37
+ 6. **verify-poc**: コードが存在する場合、会話劇の前にソースを読んで機能一覧を作る(hallucination 防止)。
38
+ 7. **audience**: デフォルト engineer。pm / junior が指定されたら出力粒度を変える。
39
+ 8. **hallucination check**: 会話劇後、言及された機能がプロジェクトに実在するか確認する。
36
40
 
37
- ## 判断ルール(auto-decide vs ask)
41
+ ## 判断ルール
38
42
 
39
43
  | Step | 条件 | アクション |
40
44
  |------|------|-----------|
41
- | テーマ確認 | ユーザーの指示が 1 文で明確 | そのまま進む |
42
- | テーマ確認 | 質問形式 or 曖昧 | 掘り下げて聞く |
43
- | テンプレート選択 | 候補が 1 つ | 自動選択して報告 |
44
- | テンプレート選択 | 候補が 2 つ以上 | ユーザーに提示 |
45
- | キャラクター選択 | 常に | ユーザーに確認(例外なし) |
46
- | 保存先 | 初回 or ディレクトリ不在 | ユーザーに確認 |
47
- | 保存先 | 2 回目以降 and ディレクトリ存在 | 前回と同じ場所に保存 |
48
- | 実装 vs 深掘り | DGE で具体的な実装仕様が書ける状態 | 「実装する」を提案 |
49
- | 実装 vs 深掘り | 未決事項や曖昧な点が残っている | 「DGE を回す」を提案 |
45
+ | テーマ確認 | 1 文で明確 | そのまま進む |
46
+ | テーマ確認 | 曖昧 | 掘り下げて聞く |
47
+ | テンプレート | 候補 1 つ | 自動選択 |
48
+ | テンプレート | 候補 2+ | ユーザーに提示 |
49
+ | パターン | ユーザー指定なし | テンプレートから自動推奨(patterns.md 参照) |
50
+ | パターン | ユーザー指定あり | そのまま使う |
51
+ | キャラクター | 常に | ユーザーに確認(例外なし) |
52
+ | 保存先 | 初回 or 不在 | ユーザーに確認 |
53
+ | 保存先 | 2 回目以降 | 前回と同じ |
54
+ | 実装 vs 深掘り | 具体的な実装仕様が書ける | 「実装する」を提案 |
55
+ | 実装 vs 深掘り | 未決事項あり | 「DGE を回す」を提案 |
56
+ | 自動反復 | 「実装できるまで」と言われた | 自動反復モードに入る |
57
+ | 自動反復中 | 新規 Critical/High Gap が 0 | 収束 → Spec 化に遷移 |
58
+ | 自動反復中 | iteration が上限(5)に到達 | 停止して結果報告 |
50
59
 
51
60
  ## 手順
52
61
 
53
62
  ### Step 1: 初回チェックと DGE Kit 読み込み
54
- 1. `dge/method.md` を読む(なければ前提条件のエラーメッセージ)
63
+ 1. `dge/method.md` を読む(なければ install 案内)
55
64
  2. `dge/characters/catalog.md` を読む
56
- 3. `dge/version.txt` があればバージョンを 1 行表示する(例: `DGE toolkit v1.0.0`)。なくても続行
57
- 4. CLAUDE.md DGE の記述があるか確認(MUST ルール 6)
65
+ 3. `dge/patterns.md` を読む
66
+ 4. `dge/version.txt` があればバージョンを 1 行表示
67
+ 5. CLAUDE.md に DGE の記述があるか確認(MUST-6)
58
68
 
59
69
  ### Step 2: テーマを確認
60
- ユーザーに「何をテーマにしますか?」と確認。
61
70
  明確なら Step 3 へ。不明確なら掘り下げる。
62
71
 
63
72
  ### Step 3: テンプレートを選択
64
73
  `dge/templates/` から最も近いテンプレートを選ぶ。
65
- なければ method.md の Scene 構成ガイドに従って即席で作る。
74
+
75
+ ### Step 3.5: パターンを選択
76
+ テンプレートに応じたプリセットを推奨する:
77
+ ```
78
+ パターンを選んでください:
79
+ 1. 🆕 new-project — 新規プロジェクト
80
+ 2. 🔧 feature-extension — 機能追加
81
+ 3. 🚀 pre-release — リリース前チェック
82
+ 4. 📢 advocacy — 社内提案用
83
+ 5. 🔍 comprehensive — 網羅的
84
+ 6. カスタム — 20 パターンから選択
85
+ ```
86
+ テンプレートに対応するプリセットを推奨し「これでいいですか?」と聞く。
87
+ ユーザーが指定しなければ自動推奨を使う。
66
88
 
67
89
  ### Step 4: キャラクターを提案
68
- テーマに応じて catalog.md の推奨を提案:
69
- 「このテーマには [キャラA] + [キャラB] + [キャラC] を推奨しますが、変更しますか?」
70
90
  **ユーザーの応答を待つ。**
71
91
 
72
92
  ### Step 5: 会話劇を生成
73
- 各 Scene について:
74
- 1. 先輩(ナレーション)で技術的背景を設定
75
- 2. キャラクターのセリフを生成(prompt を参照)
76
- 3. セリフの直後に `→ Gap 発見:` を挿入
77
- 4. Scene 末尾に Gap リストをまとめる
78
-
79
- 「先輩」はキャラクターではなく narrator。
80
- 技術的背景を neutral に語り、キャラが議論に入る context を提供する。
93
+ 選択されたパターンに沿って会話劇を生成する。
94
+ Scene で先輩(ナレーション)→ キャラクター発言 → Gap 発見マーク。
81
95
 
82
96
  ### Step 6: Gap を構造化
83
- 各 Gap について:
84
- ```
85
- Gap: [タイトル]
86
- Observe: [現状の問題]
87
- Suggest: [提案]
88
- Category: [11 カテゴリのいずれか]
89
- Severity: [Critical/High/Medium/Low]
90
- ```
97
+ 各 Gap に Category と Severity を付与。
91
98
 
92
99
  ### Step 7: ファイルに保存
93
- session 出力を markdown ファイルとして保存する。
94
- - ファイル名: テーマを kebab-case にしたもの(例: `auth-api-review.md`)
95
- - 保存先: デフォルト `dge/sessions/`(初回にユーザー確認)
96
- - ディレクトリが存在しなければユーザーに確認して作成
97
-
98
- ### Step 8: サマリーを表示してユーザーの判断を待つ
99
- 以下の形式で表示する:
100
+ session 出力を保存。ファイル名は kebab-case。
100
101
 
102
+ ### Step 8: サマリーを表示して判断を待つ
101
103
  ```
102
104
  ## DGE 結果サマリー
103
105
 
104
106
  **テーマ**: [テーマ]
107
+ **パターン**: [使用パターン/プリセット]
105
108
  **Gap 数**: N 件(Critical: X / High: X / Medium: X / Low: X)
106
109
 
107
110
  | # | Gap | Severity |
108
111
  |---|-----|----------|
109
- (High 以上を表示、Medium 以下は件数のみ)
112
+ (High 以上を表示)
110
113
 
111
114
  **全文**: `[ファイルパス]`
112
115
 
113
116
  どうしますか?
114
- - **DGE を回す**この結果をさらに深掘り
115
- - **実装する**Spec 化してから実装
116
- - **後で**保存したまま終了
117
+ 1. DGE を回す1 回深掘り
118
+ 2. 実装できるまで回す自動反復モード(最大 5 回)
119
+ 3. 実装するSpec 化してから実装
120
+ 4. 後で → 保存したまま終了
117
121
  ```
118
122
 
119
- **ユーザーの応答を待つ。勝手に次のアクションに進まない。**
123
+ **ユーザーの応答を待つ。**
120
124
 
121
125
  ### Step 9: ユーザーの判断に従う
122
126
 
123
- | ユーザーの判断 | アクション |
124
- |---------------|-----------|
125
- | DGE を回す | Step 2 に戻る(テーマ = 前回の Gap や提案) |
126
- | 実装する | **Step 10 へ進む(Spec 化フロー)** |
127
- | 後で | 何もしない。ファイルはそのまま |
127
+ | 選択 | アクション |
128
+ |------|-----------|
129
+ | 1 | Step 2 に戻る(テーマ = 前回の Gap |
130
+ | 2 | **自動反復モードに入る(Step 9A)** |
131
+ | 3 | **Step 10 へ(Spec 化)** |
132
+ | 4 | 何もしない |
133
+
134
+ ### Step 9A: 自動反復モード
135
+
136
+ 1. パターンを自動ローテーション(1 回目のプリセット → 次のプリセット → comprehensive)
137
+ 2. 会話劇を生成 → ファイル保存(MUST)→ 画面にサマリーのみ
138
+ 3. 新規 Critical/High Gap を確認:
139
+ - あり → 2 に戻る
140
+ - なし → 収束。累計サマリーを表示して Step 10 へ
141
+ 4. iteration が 5 回に達したら停止:
142
+
143
+ ```
144
+ ## 自動反復: 上限到達
145
+
146
+ | Iteration | 新規 Gap | Critical | High |
147
+ |-----------|---------|----------|------|
148
+ | 1 | N | X | X |
149
+ | 2 | N | X | X |
150
+ | ... |
151
+
152
+ 累計: N 件(重複除外)
153
+ 全文: dge/sessions/xxx-iter-1.md 〜 xxx-iter-N.md
154
+
155
+ どうしますか?
156
+ 1. もう少し回す → +3 回追加(hard limit: 8 回)
157
+ 2. Spec 化 → Critical/High を Spec に
158
+ 3. 後で
159
+ ```
128
160
 
129
161
  ### Step 10: Spec 化(「実装する」選択時)
130
162
 
131
- 1. Critical/High の Gap を抽出する
132
- 2. Gap Category に応じた成果物を生成する(下記マッピング参照)
133
- 3. `dge/specs/` に全ファイルを保存する(status: draft、DGE 生成警告ヘッダ付き)
134
- 4. 生成した Spec 一覧を表示する:
163
+ 1. Critical/High の Gap を抽出
164
+ 2. Gap Category → 成果物マッピングに従い Spec を自動生成
165
+ 3. `dge/specs/` に保存(status: draft、DGE 生成警告ヘッダ付き)
166
+ 4. Spec 一覧を表示:
135
167
 
136
168
  ```
137
169
  ## Spec 生成完了
138
170
 
139
- 以下の Spec を dge/specs/ に生成しました:
140
-
141
171
  | ファイル | 種類 | 元 Gap |
142
172
  |---------|------|-------|
143
173
  | UC-xxx.md | Use Case | Gap-1 |
144
174
  | TECH-xxx.md | Tech Spec | Gap-3 |
145
- | ADR-NNN-xxx.md | ADR | Gap-5 |
146
-
147
- Medium の Gap(N 件)は Spec 化していません。必要なら指示してください。
148
175
 
149
176
  どうしますか?
150
- - **レビューOK** → status を reviewed に更新して実装開始
151
- - **修正指示** → Spec を修正して再表示
152
- - **後で** → draft のまま残す
177
+ 1. レビューOK → status を reviewed に更新して実装開始
178
+ 2. 修正指示 → Spec を修正
179
+ 3. 後で → draft のまま
153
180
  ```
154
181
 
155
- 5. **ユーザーの応答を待つ**
156
- 6. レビューOK全 Spec の status を `reviewed` に自動更新 → 実装開始
157
- 7. 修正指示に従い Spec を修正して再表示
158
- 8. 後で → draft のまま残す
182
+ 5. レビューOK → status を `reviewed` に自動更新 → 実装開始
183
+ 6. 修正修正して再表示
184
+ 7. 後でdraft のまま
159
185
 
160
186
  ## Gap Category → 成果物マッピング
161
187
 
@@ -173,89 +199,60 @@ Medium の Gap(N 件)は Spec 化していません。必要なら指示し
173
199
  | Message gap | UC | — |
174
200
  | Legal gap | ADR + ACT | — |
175
201
 
176
- ## Spec ファイルテンプレート
177
-
178
- ### 共通フロントマター + 警告ヘッダ(MUST)
202
+ ## Spec ファイル共通ヘッダ(MUST)
179
203
  ```yaml
180
204
  ---
181
- status: draft # draft → reviewed → migrated
182
- source_session: [session ファイルパス]
205
+ status: draft
206
+ source_session: [session パス]
183
207
  source_gap: [Gap 番号]
184
- migrated_to: # migrated の場合のみ記入
208
+ migrated_to:
185
209
  ---
186
210
  ```
187
211
  ```
188
- <!-- DGE 生成: この Spec は DGE session から自動生成された提案です。
212
+ <!-- DGE 生成: この Spec は自動生成された提案です。
189
213
  実装前に必ず人間がレビューしてください。
190
214
  既存 docs と矛盾する場合、既存 docs が Source of Truth です。 -->
191
215
  ```
192
216
 
193
- ### UC-[name].md — Use Case
194
- `# UC-[name]: [タイトル]` Trigger / Actors / Flow / Exceptions / Acceptance Criteria
195
-
196
- ### TECH-[name].md — Tech Spec
197
- `# TECH-[name]: [タイトル]` 変更内容 / API / Data Model / 影響範囲
198
-
199
- ### ADR-NNN-[name].md — Architecture Decision Record
200
- `# ADR-NNN: [タイトル]` → Context / Options (A, B) / Decision (未決定) / Consequences
201
-
202
- ### DQ-[name].md — Design Question
203
- `# DQ-[name]: [質問]` → Context / Options / 決定期限
204
-
205
- ### ACT-[name].md — Action Item
206
- `# ACT-[name]: [やること]` → 内容 / 担当
217
+ ## Spec 種類
218
+ - `UC-[name].md` Use Case(Trigger / Actors / Flow / Exceptions / Acceptance Criteria
219
+ - `TECH-[name].md` — Tech Spec(変更内容 / API / Data Model / 影響範囲)
220
+ - `ADR-NNN-[name].md`Architecture Decision Record(Context / Options / Decision / Consequences)
221
+ - `DQ-[name].md` Design Question(Context / Options / 決定期限)
222
+ - `ACT-[name].md` — Action Item(内容 / 担当)
207
223
 
208
224
  ## Spec ライフサイクル
225
+ `draft → reviewed → migrated`
209
226
 
210
- ```
211
- draft → reviewed → migrated
212
- ↑ 修正 ↓ 正本への転記
213
- └────┘ migrated_to: [正本パス]
214
- ```
227
+ ## Severity 判断基準
215
228
 
216
- - **draft**: DGE が自動生成した状態。未レビュー
217
- - **reviewed**: 人間がレビュー済み。実装可能
218
- - **migrated**: プロジェクトの正式な docs/ に転記済み。このファイルは参照用
229
+ | Severity | 基準 |
230
+ |----------|------|
231
+ | Critical | 機能が実装不能 / データ損失リスク |
232
+ | High | 主要ユースケースに影響 / セキュリティリスク |
233
+ | Medium | 品質・UX に影響するが回避策あり |
234
+ | Low | 改善レベル / nice-to-have |
219
235
 
220
- ## 出力フォーマット仕様
236
+ ## 出力フォーマット
221
237
 
222
238
  ### ファイルヘッダ(MUST)
223
239
  ```markdown
224
240
  # DGE Session: [テーマ]
225
241
 
226
242
  - **日付**: YYYY-MM-DD
227
- - **テーマ**: [テーマの 1 行説明]
228
- - **キャラクター**: [使用キャラクター]
229
- - **テンプレート**: [使用テンプレート名] または "カスタム"
243
+ - **テーマ**: [テーマ]
244
+ - **キャラクター**: [キャラクター]
245
+ - **パターン**: [使用パターン/プリセット]
246
+ - **テンプレート**: [テンプレート名]
230
247
  ```
231
248
 
232
249
  ### Gap 一覧テーブル(MUST)
233
- ```markdown
234
- | # | Gap | Category | Severity |
235
- |---|-----|----------|----------|
236
- | 1 | [Gap の 1 行説明] | [Category] | High |
237
- ```
250
+ `| # | Gap | Category | Severity |`
238
251
 
239
252
  ### Gap 詳細(SHOULD)
240
- ```markdown
241
- ### Gap-N: [タイトル]
242
- - **Observe**: [現状の問題]
243
- - **Suggest**: [提案]
244
- - **Act**: [具体的な仕様: UC, API, Data Model 等]
245
- ```
246
-
247
- ## Severity 判断基準
248
-
249
- | Severity | 基準 |
250
- |----------|------|
251
- | Critical | これがないと機能が実装不能 / データ損失リスク |
252
- | High | 主要ユースケースに影響 / セキュリティリスク |
253
- | Medium | 品質・UX に影響するが回避策あり |
254
- | Low | 改善レベル / nice-to-have |
253
+ `### Gap-N: [タイトル]` → Observe / Suggest / Act
255
254
 
256
255
  ## 注意
257
- - 1 Scene 3-5 キャラの発言で構成
258
- - 1 Session 3-5 Scene
259
- - 合計 15-30 分が目安
260
- - 会話劇の後、必ずユーザーにレビューしてもらう(会話劇 → レビュー の往復が本質)
261
- - DGE の Spec と既存 docs が矛盾する場合、**既存 docs が Source of Truth**。DGE Spec は提案
256
+ - 1 Scene 3-5 キャラ発言、1 Session 3-5 Scene
257
+ - 会話劇 人間レビュー の往復が本質
258
+ - DGE Spec と既存 docs が矛盾する場合、**既存 docs が Source of Truth**
package/version.txt CHANGED
@@ -1 +1 @@
1
- 1.1.1
1
+ 1.2.0