@unlaxer/dge-toolkit 1.0.1 → 1.1.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.
package/install.sh CHANGED
@@ -33,6 +33,7 @@ else
33
33
  cp "${SRC}/method.md" "${DGE_DIR}/"
34
34
  cp "${SRC}/characters/catalog.md" "${DGE_DIR}/characters/"
35
35
  cp "${SRC}/templates/"*.md "${DGE_DIR}/templates/"
36
+ [ -f "${SRC}/integration-guide.md" ] && cp "${SRC}/integration-guide.md" "${DGE_DIR}/"
36
37
  # Version tracking for updates
37
38
  SRC_VERSION="$(cat "${SRC}/version.txt" 2>/dev/null || echo "1.0.0")"
38
39
  echo "${SRC_VERSION}" > "${DGE_DIR}/version.txt"
@@ -0,0 +1,56 @@
1
+ # DGE Integration Guide
2
+
3
+ ## あなたのプロジェクトに開発 workflow がある場合
4
+
5
+ DGE は `dge/` フォルダ内で完結します。
6
+ プロジェクトの `docs/` や既存ファイルを直接変更しません。
7
+
8
+ ## DGE の出力を既存 workflow に組み込む方法
9
+
10
+ 1. DGE session を実行 → Gap を発見
11
+ 2. 「実装する」→ `dge/specs/` に Spec が生成される(status: draft)
12
+ 3. Spec をレビューする(status: reviewed に更新)
13
+ 4. レビュー済みの Spec を、あなたの workflow に従って正式な `docs/` に転記する
14
+ 5. 転記したら `dge/specs/` のファイルの status を `migrated` に変更し、`migrated_to` に正本パスを記入
15
+
16
+ ## 既存 workflow の phase との対応
17
+
18
+ | あなたの phase | DGE のアクション |
19
+ |---|---|
20
+ | PLAN / DESIGN | DGE session を実行。Gap 発見 → Spec 生成 |
21
+ | IMPLEMENT | `dge/specs/` の reviewed Spec を元に実装 |
22
+ | VERIFY | DGE の Gap が全て対応されたか確認 |
23
+
24
+ ## Source of Truth ルール
25
+
26
+ **DGE の Spec と既存 docs が矛盾する場合、既存 docs が Source of Truth です。**
27
+
28
+ DGE の Spec は「提案」であり、プロジェクトの正式な仕様ではありません。
29
+ DGE が生成した API 定義と、あなたの `api-surface.md` が異なる場合、`api-surface.md` が正しいです。
30
+
31
+ ## DGE が触るもの / 触らないもの
32
+
33
+ | 触る | 触らない |
34
+ |------|---------|
35
+ | `dge/sessions/` | `docs/` |
36
+ | `dge/specs/` | `.claude/rules/` |
37
+ | `dge/custom/` | 既存の spec ファイル |
38
+ | `.claude/skills/dge-*.md` | CLAUDE.md(初回提案のみ) |
39
+
40
+ ## Spec ライフサイクル
41
+
42
+ ```
43
+ draft DGE が自動生成した状態。未レビュー。
44
+ → 実装しない。レビューが必要。
45
+
46
+ reviewed 人間がレビュー済み。実装可能。
47
+ → あなたの workflow に従って実装する。
48
+
49
+ migrated プロジェクトの正式な docs/ に転記済み。
50
+ → このファイルは参照用。正本は migrated_to を参照。
51
+ ```
52
+
53
+ ## workflow がないプロジェクトの場合
54
+
55
+ `dge/specs/` の reviewed Spec をそのまま実装の根拠として使えます。
56
+ 正式な `docs/` への転記は必須ではありません。
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unlaxer/dge-toolkit",
3
- "version": "1.0.1",
3
+ "version": "1.1.1",
4
4
  "description": "DGE (Dialogue-driven Gap Extraction) — 会話劇で設計の穴を発見するメソッドkit",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -28,6 +28,7 @@
28
28
  "characters/",
29
29
  "templates/",
30
30
  "skills/",
31
+ "integration-guide.md",
31
32
  "install.sh",
32
33
  "update.sh"
33
34
  ],
@@ -23,12 +23,16 @@
23
23
  4. **サマリー表示後、ユーザーの次のアクション指示を待つ。** 勝手に次の session や実装を開始しない。
24
24
  5. **サマリーの後に選択肢を提示する:** DGE を回す / 実装する / 後で
25
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 への初回追記提案のみ例外)
26
29
 
27
30
  ## SHOULD ルール(推奨)
28
31
  1. テンプレート候補が 1 つなら自動選択し報告する。2 つ以上ならユーザーに提示する。
29
32
  2. Gap 詳細は Observe / Suggest / Act の構造で書く。
30
33
  3. 会話劇は 3-5 Scene で構成する。先輩(ナレーション)で各 Scene の背景を設定する。
31
34
  4. サマリー表示時に全文ファイルへのパスを表示する。
35
+ 5. Medium の Gap も Spec 化する(Low は Action Item のみで十分)。
32
36
 
33
37
  ## 判断ルール(auto-decide vs ask)
34
38
 
@@ -41,6 +45,8 @@
41
45
  | キャラクター選択 | 常に | ユーザーに確認(例外なし) |
42
46
  | 保存先 | 初回 or ディレクトリ不在 | ユーザーに確認 |
43
47
  | 保存先 | 2 回目以降 and ディレクトリ存在 | 前回と同じ場所に保存 |
48
+ | 実装 vs 深掘り | DGE で具体的な実装仕様が書ける状態 | 「実装する」を提案 |
49
+ | 実装 vs 深掘り | 未決事項や曖昧な点が残っている | 「DGE を回す」を提案 |
44
50
 
45
51
  ## 手順
46
52
 
@@ -73,15 +79,14 @@
73
79
  「先輩」はキャラクターではなく narrator。
74
80
  技術的背景を neutral に語り、キャラが議論に入る context を提供する。
75
81
 
76
- ### Step 6: Gap を Spec に落とす
82
+ ### Step 6: Gap を構造化
77
83
  各 Gap について:
78
84
  ```
79
85
  Gap: [タイトル]
80
86
  Observe: [現状の問題]
81
87
  Suggest: [提案]
82
- UC: UC-XXX-01: [Use Case]
83
- API: METHOD /api/path { body } → { response }
84
- SQL: CREATE TABLE ... / ALTER TABLE ...
88
+ Category: [11 カテゴリのいずれか]
89
+ Severity: [Critical/High/Medium/Low]
85
90
  ```
86
91
 
87
92
  ### Step 7: ファイルに保存
@@ -107,7 +112,7 @@ session 出力を markdown ファイルとして保存する。
107
112
 
108
113
  どうしますか?
109
114
  - **DGE を回す** → この結果をさらに深掘り
110
- - **実装する** → Gap を Task に変換
115
+ - **実装する** → Spec 化してから実装
111
116
  - **後で** → 保存したまま終了
112
117
  ```
113
118
 
@@ -118,9 +123,100 @@ session 出力を markdown ファイルとして保存する。
118
123
  | ユーザーの判断 | アクション |
119
124
  |---------------|-----------|
120
125
  | DGE を回す | Step 2 に戻る(テーマ = 前回の Gap や提案) |
121
- | 実装する | Gap Task に変換し、実装を開始 |
126
+ | 実装する | **Step 10 へ進む(Spec 化フロー)** |
122
127
  | 後で | 何もしない。ファイルはそのまま |
123
128
 
129
+ ### Step 10: Spec 化(「実装する」選択時)
130
+
131
+ 1. Critical/High の Gap を抽出する
132
+ 2. 各 Gap の Category に応じた成果物を生成する(下記マッピング参照)
133
+ 3. `dge/specs/` に全ファイルを保存する(status: draft、DGE 生成警告ヘッダ付き)
134
+ 4. 生成した Spec 一覧を表示する:
135
+
136
+ ```
137
+ ## Spec 生成完了
138
+
139
+ 以下の Spec を dge/specs/ に生成しました:
140
+
141
+ | ファイル | 種類 | 元 Gap |
142
+ |---------|------|-------|
143
+ | UC-xxx.md | Use Case | Gap-1 |
144
+ | TECH-xxx.md | Tech Spec | Gap-3 |
145
+ | ADR-NNN-xxx.md | ADR | Gap-5 |
146
+
147
+ Medium の Gap(N 件)は Spec 化していません。必要なら指示してください。
148
+
149
+ どうしますか?
150
+ - **レビューOK** → status を reviewed に更新して実装開始
151
+ - **修正指示** → Spec を修正して再表示
152
+ - **後で** → draft のまま残す
153
+ ```
154
+
155
+ 5. **ユーザーの応答を待つ**
156
+ 6. レビューOK → 全 Spec の status を `reviewed` に自動更新 → 実装開始
157
+ 7. 修正 → 指示に従い Spec を修正して再表示
158
+ 8. 後で → draft のまま残す
159
+
160
+ ## Gap Category → 成果物マッピング
161
+
162
+ | Gap Category | 主要成果物 | 補助 |
163
+ |---|---|---|
164
+ | Missing logic | UC + TECH | — |
165
+ | Spec-impl mismatch | DQ | ADR |
166
+ | Type/coercion gap | TECH | — |
167
+ | Error quality | TECH | — |
168
+ | Integration gap | TECH | — |
169
+ | Test coverage | ACT | — |
170
+ | Business gap | ADR / DQ | — |
171
+ | Safety gap | TECH + ACT | — |
172
+ | Ops gap | ACT | — |
173
+ | Message gap | UC | — |
174
+ | Legal gap | ADR + ACT | — |
175
+
176
+ ## Spec ファイルテンプレート
177
+
178
+ ### 共通フロントマター + 警告ヘッダ(MUST)
179
+ ```yaml
180
+ ---
181
+ status: draft # draft → reviewed → migrated
182
+ source_session: [session ファイルパス]
183
+ source_gap: [Gap 番号]
184
+ migrated_to: # migrated の場合のみ記入
185
+ ---
186
+ ```
187
+ ```
188
+ <!-- DGE 生成: この Spec は DGE session から自動生成された提案です。
189
+ 実装前に必ず人間がレビューしてください。
190
+ 既存 docs と矛盾する場合、既存 docs が Source of Truth です。 -->
191
+ ```
192
+
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]: [やること]` → 内容 / 担当
207
+
208
+ ## Spec ライフサイクル
209
+
210
+ ```
211
+ draft → reviewed → migrated
212
+ ↑ 修正 ↓ 正本への転記
213
+ └────┘ migrated_to: [正本パス]
214
+ ```
215
+
216
+ - **draft**: DGE が自動生成した状態。未レビュー
217
+ - **reviewed**: 人間がレビュー済み。実装可能
218
+ - **migrated**: プロジェクトの正式な docs/ に転記済み。このファイルは参照用
219
+
124
220
  ## 出力フォーマット仕様
125
221
 
126
222
  ### ファイルヘッダ(MUST)
@@ -162,3 +258,4 @@ session 出力を markdown ファイルとして保存する。
162
258
  - 1 Session は 3-5 Scene
163
259
  - 合計 15-30 分が目安
164
260
  - 会話劇の後、必ずユーザーにレビューしてもらう(会話劇 → レビュー の往復が本質)
261
+ - DGE の Spec と既存 docs が矛盾する場合、**既存 docs が Source of Truth**。DGE Spec は提案
package/version.txt CHANGED
@@ -1 +1 @@
1
- 1.0.1
1
+ 1.1.1