@einja/dev-cli 0.1.30 → 0.1.32

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 (51) hide show
  1. package/README.md +1 -0
  2. package/dist/commands/task-loop/index.d.ts.map +1 -1
  3. package/dist/commands/task-loop/index.js +149 -16
  4. package/dist/commands/task-loop/index.js.map +1 -1
  5. package/dist/commands/task-loop/lib/task-state-manager.d.ts +33 -2
  6. package/dist/commands/task-loop/lib/task-state-manager.d.ts.map +1 -1
  7. package/dist/commands/task-loop/lib/task-state-manager.js +74 -3
  8. package/dist/commands/task-loop/lib/task-state-manager.js.map +1 -1
  9. package/dist/commands/task-loop/lib/task-state-manager.test.js +252 -1
  10. package/dist/commands/task-loop/lib/task-state-manager.test.js.map +1 -1
  11. package/dist/commands/task-loop/lib/types.d.ts +17 -0
  12. package/dist/commands/task-loop/lib/types.d.ts.map +1 -1
  13. package/dist/commands/task-loop/lib/vibe-kanban-client.d.ts +25 -0
  14. package/dist/commands/task-loop/lib/vibe-kanban-client.d.ts.map +1 -1
  15. package/dist/commands/task-loop/lib/vibe-kanban-client.js +63 -0
  16. package/dist/commands/task-loop/lib/vibe-kanban-client.js.map +1 -1
  17. package/dist/commands/task-loop/lib/vibe-kanban-client.test.js +184 -0
  18. package/dist/commands/task-loop/lib/vibe-kanban-client.test.js.map +1 -1
  19. package/dist/commands/task-loop/lib/vibe-kanban-rest-client.d.ts +47 -0
  20. package/dist/commands/task-loop/lib/vibe-kanban-rest-client.d.ts.map +1 -1
  21. package/dist/commands/task-loop/lib/vibe-kanban-rest-client.js +116 -0
  22. package/dist/commands/task-loop/lib/vibe-kanban-rest-client.js.map +1 -1
  23. package/dist/commands/task-loop/lib/vibe-kanban-rest-client.test.d.ts +2 -0
  24. package/dist/commands/task-loop/lib/vibe-kanban-rest-client.test.d.ts.map +1 -0
  25. package/dist/commands/task-loop/lib/vibe-kanban-rest-client.test.js +293 -0
  26. package/dist/commands/task-loop/lib/vibe-kanban-rest-client.test.js.map +1 -0
  27. package/package.json +1 -1
  28. package/presets/default/.claude/agents/einja/codex-agent.md +117 -0
  29. package/presets/default/.claude/agents/einja/specs/spec-requirements-generator.md +15 -6
  30. package/presets/default/.claude/hooks/einja/playwright-resize.sh +12 -2
  31. package/presets/default/.claude/settings.json +15 -0
  32. package/presets/default/.claude/skills/einja-backend-architecture/SKILL.md +4 -0
  33. package/presets/default/.claude/skills/einja-output-format/SKILL.md +21 -0
  34. package/presets/default/.claude/skills/einja-spec-context-loader/SKILL.md +1 -1
  35. package/scaffolds/.mcp.json +6 -9
  36. package/scaffolds/example/specs/issues/issue999-example-task/qa-tests/scenarios.md +4 -4
  37. package/scaffolds/example/specs/issues/issue999-example-task/requirements.md +131 -100
  38. package/scaffolds/example/specs/issues/issue999-example-task/tasks.md +4 -3
  39. package/scaffolds/instructions/task-vibe-kanban-loop.md +38 -17
  40. package/scaffolds/instructions/vercel-cli-reference.md +451 -0
  41. package/scaffolds/steering/README.md +1 -0
  42. package/scaffolds/steering/acceptance-criteria-and-qa-guide.md +13 -1
  43. package/scaffolds/steering/development/backend-architecture.md +2 -1
  44. package/scaffolds/steering/development/database-guidelines.md +239 -0
  45. package/scaffolds/steering/development/frontend-development.md +80 -5
  46. package/scaffolds/steering/development/review-guidelines.md +5 -0
  47. package/scaffolds/steering/development-workflow.md +15 -1
  48. package/scaffolds/steering/infrastructure/deployment.md +27 -21
  49. package/scaffolds/steering/task-management.md +21 -0
  50. package/scaffolds/templates/README.md +11 -7
  51. package/scaffolds/templates/requirements.md.template +44 -32
package/README.md CHANGED
@@ -136,6 +136,7 @@ npx @einja/dev-cli sync --only hooks
136
136
  ### `task:loop`
137
137
 
138
138
  GitHub Issueのタスクを自動実行します(Claude Code経由)。
139
+ Phase毎に親Issueを作成し、タスクグループをサブIssueとして階層管理します。
139
140
 
140
141
  ```bash
141
142
  # pnpm scripts経由(推奨)
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/task-loop/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA+BH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA0BD;;;GAGG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CA4Nf"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/task-loop/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAmCH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA6BD;;;GAGG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CAkTf"}
@@ -14,11 +14,14 @@ import { getIssue, getRepoInfo } from "./lib/github-client.js";
14
14
  import { parseIssueBody } from "./lib/issue-parser.js";
15
15
  import { selectProject } from "./lib/project-selector.js";
16
16
  import { ensurePullRequestCreated } from "./lib/pull-request-manager.js";
17
- import { TaskStateManager, extractIssueNumberFromTitle, extractTaskGroupIdFromTitle, generateVibeKanbanDescription, generateVibeKanbanTitle, } from "./lib/task-state-manager.js";
17
+ import { TaskStateManager, extractIssueNumberFromTitle, extractTaskGroupIdFromTitle, generateParentIssueDescription, generateParentIssueTitle, generateVibeKanbanDescription, generateVibeKanbanTitle, } from "./lib/task-state-manager.js";
18
18
  import { VibeKanbanClient } from "./lib/vibe-kanban-client.js";
19
+ import { VibeKanbanRestClient } from "./lib/vibe-kanban-rest-client.js";
19
20
  import { getWorktreePathByAttemptId, runDirenvAllow } from "./lib/worktree-utils.js";
20
21
  /** ポーリング間隔(ミリ秒) */
21
22
  const POLLING_INTERVAL_MS = 15000;
23
+ /** 親Issue自動Doneタイムアウト(ミリ秒) */
24
+ const PARENT_DONE_TIMEOUT_MS = 120000;
22
25
  /**
23
26
  * 現在日時を YYYY/MM/DD HH:mm:ss 形式で取得
24
27
  */
@@ -94,8 +97,47 @@ export async function taskLoopCommand(issue, options) {
94
97
  // Vibe-Kanban 接続
95
98
  const vibeKanban = new VibeKanbanClient();
96
99
  await vibeKanban.connect();
100
+ // Vibe-Kanban に登録済みのリポジトリから現在のリポジトリを特定
101
+ const allRepos = await vibeKanban.listRepos();
102
+ const normalize = (name) => {
103
+ var _a;
104
+ return (_a = name
105
+ .toLowerCase()
106
+ .replace(/\.git$/, "")
107
+ .split("/")
108
+ .pop()) !== null && _a !== void 0 ? _a : "";
109
+ };
110
+ const normalizedRepoName = normalize(repoInfo.name);
111
+ const matchedRepos = allRepos.filter((repo) => normalize(repo.name) === normalizedRepoName);
112
+ if (matchedRepos.length === 0) {
113
+ console.error(`❌ Vibe-Kanbanにリポジトリ "${repoInfo.name}" が見つかりません`);
114
+ console.error(` 登録済みリポジトリ: ${allRepos.map((r) => r.name).join(", ")}`);
115
+ process.exit(1);
116
+ }
117
+ if (matchedRepos.length > 1) {
118
+ console.error(`❌ リポジトリ "${repoInfo.name}" に複数の候補が見つかりました`);
119
+ console.error(` 候補: ${matchedRepos.map((r) => `${r.name} (${r.id})`).join(", ")}`);
120
+ process.exit(1);
121
+ }
122
+ const currentRepo = matchedRepos[0];
123
+ console.log(`✅ リポジトリ: ${currentRepo.name} (${currentRepo.id})`);
97
124
  // プロジェクト ID 取得(設定ファイルまたはインタラクティブ選択)
98
125
  const projectId = await selectProject(vibeKanban, issueNumber);
126
+ // REST APIクライアント初期化(サブIssue作成に必要)
127
+ const restPort = VibeKanbanRestClient.discoverPort();
128
+ if (!restPort) {
129
+ console.error("❌ Vibe-Kanban REST API のポートが見つかりません");
130
+ process.exit(1);
131
+ }
132
+ const restClient = new VibeKanbanRestClient(restPort);
133
+ // REST API Capability Probe
134
+ const restAvailable = await restClient.probeCapability();
135
+ if (!restAvailable) {
136
+ console.warn("⚠️ Vibe-Kanban REST API (/api/remote/issues) が利用できません。サブIssue機能が制限されます。");
137
+ }
138
+ else {
139
+ console.log("✅ Vibe-Kanban REST API 利用可能");
140
+ }
99
141
  // タスク状態マネージャー初期化
100
142
  const stateManager = new TaskStateManager();
101
143
  // 既存の Vibe-Kanban タスクを取得
@@ -147,10 +189,33 @@ export async function taskLoopCommand(issue, options) {
147
189
  // 起動時に既存のDoneタスクのGitHub Issueを同期
148
190
  console.log("\n🔄 既存Doneタスクの同期チェック...");
149
191
  parsedIssue = await syncExistingDoneTasks(parsedIssue, existingTasks, issueNumber, stateManager, descriptionCache);
192
+ // Phase毎に親Issue初期化
193
+ console.log("\n📌 Phase 親Issue を初期化中...");
194
+ for (const phase of parsedIssue.phases) {
195
+ const parentTitle = generateParentIssueTitle(phase, issueNumber);
196
+ // 既存チェック(再開サポート: 同一タイトルの既存親Issueを検索)
197
+ const existingParent = existingTasks.find((t) => t.title === parentTitle && t.status !== "cancelled");
198
+ if (existingParent) {
199
+ console.log(` 📌 既存の親Issueを使用: Phase ${phase.number} → ${existingParent.id}`);
200
+ stateManager.registerPhaseMapping(phase.number, {
201
+ phaseNumber: phase.number,
202
+ parentIssueId: existingParent.id,
203
+ });
204
+ }
205
+ else {
206
+ const parentDesc = generateParentIssueDescription(phase, issueNumber);
207
+ const parentIssueId = await vibeKanban.createParentIssue(projectId, parentTitle, parentDesc);
208
+ console.log(` ✅ 親Issue作成: Phase ${phase.number} → ${parentIssueId}`);
209
+ stateManager.registerPhaseMapping(phase.number, {
210
+ phaseNumber: phase.number,
211
+ parentIssueId,
212
+ });
213
+ }
214
+ }
150
215
  try {
151
216
  // 初期化: 着手可能なタスクを全部 Doing に移す
152
217
  console.log("\n🔍 着手可能なタスクを選定中...");
153
- await startExecutableTasks(parsedIssue, maxTaskNumber, issueNumber, issueBranch, baseBranch, projectId, vibeKanban, stateManager);
218
+ await startExecutableTasks(parsedIssue, maxTaskNumber, issueNumber, issueBranch, baseBranch, projectId, vibeKanban, stateManager, restClient, currentRepo);
154
219
  // メインループ
155
220
  let loopCount = 0;
156
221
  while (true) {
@@ -162,16 +227,20 @@ export async function taskLoopCommand(issue, options) {
162
227
  const doneTasks = currentTasks.filter((t) => t.status === "done" && isTaskForThisIssue(t));
163
228
  const totalDoneTasks = currentTasks.filter((t) => t.status === "done").length;
164
229
  console.log(` 📊 Done: ${doneTasks.length}件 (対象Issue) / ${totalDoneTasks}件 (全体)`);
230
+ // 親Issueを除外してサブIssueのみDone検知(リスク#3 対策: IDベース)
231
+ const subIssueTasks = currentTasks.filter((t) => !stateManager.isParentIssue(t.id));
165
232
  // Done 増加を検知
166
- const newlyCompletedVibeTaskIds = stateManager.detectNewlyCompletedTasks(currentTasks, descriptionCache);
233
+ const newlyCompletedVibeTaskIds = stateManager.detectNewlyCompletedTasks(subIssueTasks, descriptionCache);
167
234
  if (newlyCompletedVibeTaskIds.length > 0) {
168
235
  console.log(`✅ 新たに完了したタスク: ${newlyCompletedVibeTaskIds.length} 件`);
169
236
  // タスクグループ ID を取得
170
237
  const completedTaskGroupIds = stateManager.getCompletedTaskGroupIds(newlyCompletedVibeTaskIds);
171
238
  // GitHub Issue のチェックボックスを更新
172
239
  parsedIssue = await stateManager.markTaskGroupsAsCompleted(issueNumber, completedTaskGroupIds);
240
+ // Phase完了チェック & ハンドリング
241
+ await checkAndHandlePhaseCompletion(parsedIssue, issueNumber, issueBranch, vibeKanban, stateManager, currentRepo);
173
242
  // 新たに着手可能になったタスクを開始
174
- await startExecutableTasks(parsedIssue, maxTaskNumber, issueNumber, issueBranch, baseBranch, projectId, vibeKanban, stateManager);
243
+ await startExecutableTasks(parsedIssue, maxTaskNumber, issueNumber, issueBranch, baseBranch, projectId, vibeKanban, stateManager, restClient, currentRepo);
175
244
  }
176
245
  // 全タスク完了チェック
177
246
  if (isAllTasksCompleted(parsedIssue, maxTaskNumber)) {
@@ -195,6 +264,7 @@ export async function taskLoopCommand(issue, options) {
195
264
  const mergedPhaseNumbers = new Set();
196
265
  /**
197
266
  * 完了した Phase を Issue ブランチにマージ
267
+ * 将来的なフォールバック用として残す
198
268
  */
199
269
  async function mergeCompletedPhases(parsedIssue, issueNumber, issueBranch) {
200
270
  const completedPhases = getCompletedPhaseNumbers(parsedIssue);
@@ -213,13 +283,76 @@ async function mergeCompletedPhases(parsedIssue, issueNumber, issueBranch) {
213
283
  }
214
284
  }
215
285
  }
286
+ /**
287
+ * Phase完了を検出し、親Issue Workspace作成 → PR作成・マージ → 親Issue Done 待機を実行
288
+ */
289
+ async function checkAndHandlePhaseCompletion(parsedIssue, issueNumber, issueBranch, vibeKanban, stateManager, currentRepo) {
290
+ const completedPhases = getCompletedPhaseNumbers(parsedIssue);
291
+ for (const phaseNumber of completedPhases) {
292
+ if (mergedPhaseNumbers.has(phaseNumber)) {
293
+ continue;
294
+ }
295
+ const mapping = stateManager.getParentIssueMapping(phaseNumber);
296
+ if (!mapping) {
297
+ console.warn(` ⚠️ Phase ${phaseNumber} の親Issueマッピングが見つかりません`);
298
+ continue;
299
+ }
300
+ console.log(`\n🎯 Phase ${phaseNumber} が完了 - Phase完了処理を開始`);
301
+ // Step 1: 親Issue用Workspace作成(target = issue/N)
302
+ // → Vibe-KanbanがPRマージを追跡できるように
303
+ try {
304
+ const reposWithIssueBranch = [{ repo_id: currentRepo.id, base_branch: issueBranch }];
305
+ await vibeKanban.startTaskAttempt(`[Issue${issueNumber} Phase${phaseNumber}] Phase merge`, "CLAUDE_CODE", reposWithIssueBranch, mapping.parentIssueId);
306
+ console.log(` ✅ 親Issue Workspace作成完了: Phase ${phaseNumber}`);
307
+ }
308
+ catch (error) {
309
+ console.warn(` ⚠️ 親Issue Workspace作成失敗: ${error}`);
310
+ // Workspace作成失敗でもマージは続行
311
+ }
312
+ // Step 2: PR作成・自動マージ
313
+ try {
314
+ await mergePhaseBranchIntoIssue(issueNumber, phaseNumber, issueBranch);
315
+ mergedPhaseNumbers.add(phaseNumber);
316
+ console.log(` ✅ Phase ${phaseNumber} マージ完了`);
317
+ }
318
+ catch (error) {
319
+ console.error(` ❌ Phase ${phaseNumber} のマージに失敗:`, error);
320
+ throw error;
321
+ }
322
+ // Step 3: 親Issue自動Done待機
323
+ // → Vibe-KanbanがPRマージ検知して自動Doneにするのを待つ
324
+ // → タイムアウト時はフォールバックで手動Done
325
+ await waitForParentIssueDone(vibeKanban, mapping.parentIssueId, phaseNumber);
326
+ }
327
+ }
328
+ /**
329
+ * 親IssueのDone状態を待機(タイムアウト付きフォールバック)
330
+ */
331
+ async function waitForParentIssueDone(vibeKanban, parentIssueId, phaseNumber) {
332
+ const start = Date.now();
333
+ while (Date.now() - start < PARENT_DONE_TIMEOUT_MS) {
334
+ const issue = await vibeKanban.getTask(parentIssueId);
335
+ if ((issue === null || issue === void 0 ? void 0 : issue.status) === "done") {
336
+ console.log(` ✅ 親Issue Done確認: Phase ${phaseNumber}`);
337
+ return;
338
+ }
339
+ await sleep(15000);
340
+ }
341
+ // タイムアウト: 手動でDoneに更新
342
+ console.warn(` ⚠️ 親Issue Phase ${phaseNumber} の自動Done検知がタイムアウト。手動更新します。`);
343
+ try {
344
+ await vibeKanban.updateTask(parentIssueId, "done");
345
+ console.log(` ✅ 親Issue 手動Done完了: Phase ${phaseNumber}`);
346
+ }
347
+ catch (error) {
348
+ console.error(` ❌ 親Issue Done更新失敗: Phase ${phaseNumber}`, error);
349
+ }
350
+ }
216
351
  /**
217
352
  * 着手可能なタスクを Vibe-Kanban に登録して実行開始
218
353
  */
219
- async function startExecutableTasks(parsedIssue, maxTaskNumber, issueNumber, issueBranch, baseBranch, projectId, vibeKanban, stateManager) {
354
+ async function startExecutableTasks(parsedIssue, maxTaskNumber, issueNumber, issueBranch, baseBranch, projectId, vibeKanban, stateManager, restClient, currentRepo) {
220
355
  var _a;
221
- // 完了した Phase を Issue ブランチにマージ(新しい Phase のタスク開始前に実行)
222
- await mergeCompletedPhases(parsedIssue, issueNumber, issueBranch);
223
356
  // 着手可能なタスクグループを選定
224
357
  const executableGroups = await selectExecutableTaskGroups(parsedIssue, maxTaskNumber);
225
358
  if (executableGroups.length === 0) {
@@ -255,8 +388,6 @@ async function startExecutableTasks(parsedIssue, maxTaskNumber, issueNumber, iss
255
388
  existingTaskGroupIdsForThisIssue.add(taskGroupId);
256
389
  }
257
390
  }
258
- // リポジトリ情報を取得(startTaskAttempt に必要)
259
- const repos = await vibeKanban.listRepos();
260
391
  // 各タスクグループを Vibe-Kanban に登録
261
392
  for (const taskGroup of executableGroups) {
262
393
  // 対象Issueで既に存在する場合はスキップ(タスクグループIDで判定)
@@ -268,9 +399,14 @@ async function startExecutableTasks(parsedIssue, maxTaskNumber, issueNumber, iss
268
399
  const description = generateVibeKanbanDescription(taskGroup, issueNumber);
269
400
  // タスク開始前に Phase ブランチを同期(リモートの最新を取得)
270
401
  await syncPhaseBranch(issueNumber, taskGroup.phaseNumber, issueBranch, baseBranch);
271
- // タスク作成
272
- console.log(` 📌 タスク作成: ${taskGroup.id} - ${taskGroup.name}`);
273
- const taskId = await vibeKanban.createTask(projectId, title, description);
402
+ // サブIssue作成(親Issueの子として)
403
+ const phaseMapping = stateManager.getParentIssueMapping(taskGroup.phaseNumber);
404
+ if (!phaseMapping) {
405
+ console.error(` ❌ Phase ${taskGroup.phaseNumber} の親Issueマッピングが見つかりません`);
406
+ continue;
407
+ }
408
+ console.log(` 📌 サブIssue作成: ${taskGroup.id} - ${taskGroup.name} (parent: Phase ${taskGroup.phaseNumber})`);
409
+ const taskId = await vibeKanban.createSubIssue(projectId, phaseMapping.parentIssueId, title, description, restClient);
274
410
  // マッピング登録
275
411
  stateManager.registerTaskMapping(taskId, taskGroup.id);
276
412
  // ステータスを inprogress に更新
@@ -278,10 +414,7 @@ async function startExecutableTasks(parsedIssue, maxTaskNumber, issueNumber, iss
278
414
  // タスク実行開始(Phase ブランチをベースに使用)
279
415
  const phaseBranch = getPhaseBranchNameNew(issueNumber, taskGroup.phaseNumber);
280
416
  try {
281
- const reposWithBranch = repos.map((repo) => ({
282
- repo_id: repo.id,
283
- base_branch: phaseBranch,
284
- }));
417
+ const reposWithBranch = [{ repo_id: currentRepo.id, base_branch: phaseBranch }];
285
418
  const attempt = await vibeKanban.startTaskAttempt(title, "CLAUDE_CODE", reposWithBranch, taskId);
286
419
  console.log(` ▶️ タスク開始: ${taskGroup.id} (base: ${phaseBranch}, attempt: ${(_a = attempt === null || attempt === void 0 ? void 0 : attempt.id) !== null && _a !== void 0 ? _a : "unknown"})`);
287
420
  // direnv allow 自動実行
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/task-loop/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/task-loop/index.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  * - GitHub Issue のチェックボックスを更新
6
6
  * - 着手可能なタスクを取得
7
7
  */
8
- import type { ParsedIssue, TaskGroup, VibeKanbanTask } from "./types.js";
8
+ import type { ParsedIssue, Phase, PhaseIssueMapping, TaskGroup, VibeKanbanTask } from "./types.js";
9
9
  /**
10
10
  * タスク状態マネージャー
11
11
  */
@@ -15,10 +15,27 @@ export declare class TaskStateManager {
15
15
  private vibeTaskToGroupMap;
16
16
  /** 対象Issue番号(フィルタリング用) */
17
17
  private targetIssueNumber;
18
+ /** Phase番号 -> 親Issue マッピング */
19
+ private phaseToParentIssue;
20
+ /** 親Issue IDセット(フィルタリング用) */
21
+ private parentIssueIds;
18
22
  /**
19
23
  * タスクが対象Issueに属するかチェック
20
24
  */
21
25
  private isTaskForTargetIssue;
26
+ /**
27
+ * Phase -> 親Issue マッピングを登録
28
+ */
29
+ registerPhaseMapping(phaseNumber: number, mapping: PhaseIssueMapping): void;
30
+ /**
31
+ * Phase番号から親Issueマッピングを取得
32
+ */
33
+ getParentIssueMapping(phaseNumber: number): PhaseIssueMapping | undefined;
34
+ /**
35
+ * 親Issueかどうか判定(IDベース)
36
+ * Done検知フィルタリングで使用
37
+ */
38
+ isParentIssue(issueId: string): boolean;
22
39
  /**
23
40
  * Vibe-Kanban タスク ID とタスクグループ ID のマッピングを登録
24
41
  */
@@ -53,13 +70,27 @@ export declare class TaskStateManager {
53
70
  export declare function extractTaskGroupIdFromTitle(title: string): string | null;
54
71
  /**
55
72
  * Vibe-Kanban タスクのタイトルから Issue 番号を抽出
56
- * タイトル形式: "[IssueXX Y.Z] タスク名"
73
+ * タイトル形式: "[IssueXX Y.Z] タスク名" または "[IssueXX PhaseM] Phase名"
57
74
  */
58
75
  export declare function extractIssueNumberFromTitle(title: string): number | null;
59
76
  /**
60
77
  * タスクグループ用の Vibe-Kanban タスクタイトルを生成
61
78
  */
62
79
  export declare function generateVibeKanbanTitle(taskGroup: TaskGroup, issueNumber: number): string;
80
+ /**
81
+ * Phase用の Vibe-Kanban 親Issueタイトルを生成
82
+ * 形式: [Issue{N} Phase{M}] {Phase名}
83
+ */
84
+ export declare function generateParentIssueTitle(phase: Phase, issueNumber: number): string;
85
+ /**
86
+ * Phase用の Vibe-Kanban 親Issue説明文を生成
87
+ */
88
+ export declare function generateParentIssueDescription(phase: Phase, issueNumber: number): string;
89
+ /**
90
+ * 親IssueのタイトルからPhase番号を抽出
91
+ * タイトル形式: "[IssueXX PhaseM] Phase名"
92
+ */
93
+ export declare function extractPhaseNumberFromTitle(title: string): number | null;
63
94
  /**
64
95
  * タスクグループ用の Vibe-Kanban タスク説明を生成
65
96
  */
@@ -1 +1 @@
1
- {"version":3,"file":"task-state-manager.d.ts","sourceRoot":"","sources":["../../../../src/commands/task-loop/lib/task-state-manager.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEzE;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,mBAAmB,CAA0B;IACrD,8CAA8C;IAC9C,OAAO,CAAC,kBAAkB,CAAkC;IAC5D,0BAA0B;IAC1B,OAAO,CAAC,iBAAiB,CAAuB;IAEhD;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAkB5B;;OAEG;IACH,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAKlE;;;;;OAKG;IACH,qBAAqB,CACnB,KAAK,EAAE,cAAc,EAAE,EACvB,WAAW,CAAC,EAAE,MAAM,EACpB,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,GAC5C,IAAI;IAwBP;;;;;OAKG;IACH,yBAAyB,CACvB,YAAY,EAAE,cAAc,EAAE,EAC9B,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,GAC5C,MAAM,EAAE;IAiCX;;OAEG;IACH,wBAAwB,CAAC,yBAAyB,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE;IAcvE;;OAEG;IACG,yBAAyB,CAC7B,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EAAE,GACrB,OAAO,CAAC,WAAW,CAAC;CAwBxB;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQxE;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGxE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAEzF;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CA4B/F"}
1
+ {"version":3,"file":"task-state-manager.d.ts","sourceRoot":"","sources":["../../../../src/commands/task-loop/lib/task-state-manager.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEnG;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,mBAAmB,CAA0B;IACrD,8CAA8C;IAC9C,OAAO,CAAC,kBAAkB,CAAkC;IAC5D,0BAA0B;IAC1B,OAAO,CAAC,iBAAiB,CAAuB;IAChD,8BAA8B;IAC9B,OAAO,CAAC,kBAAkB,CAA6C;IACvE,6BAA6B;IAC7B,OAAO,CAAC,cAAc,CAA0B;IAEhD;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAkB5B;;OAEG;IACH,oBAAoB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAW3E;;OAEG;IACH,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAIzE;;;OAGG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIvC;;OAEG;IACH,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAKlE;;;;;OAKG;IACH,qBAAqB,CACnB,KAAK,EAAE,cAAc,EAAE,EACvB,WAAW,CAAC,EAAE,MAAM,EACpB,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,GAC5C,IAAI;IAwBP;;;;;OAKG;IACH,yBAAyB,CACvB,YAAY,EAAE,cAAc,EAAE,EAC9B,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,GAC5C,MAAM,EAAE;IAiCX;;OAEG;IACH,wBAAwB,CAAC,yBAAyB,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE;IAcvE;;OAEG;IACG,yBAAyB,CAC7B,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EAAE,GACrB,OAAO,CAAC,WAAW,CAAC;CAwBxB;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQxE;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAUxE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAEzF;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAElF;AAED;;GAEG;AACH,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAgBxF;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGxE;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CA4B/F"}
@@ -17,6 +17,10 @@ export class TaskStateManager {
17
17
  this.vibeTaskToGroupMap = new Map();
18
18
  /** 対象Issue番号(フィルタリング用) */
19
19
  this.targetIssueNumber = null;
20
+ /** Phase番号 -> 親Issue マッピング */
21
+ this.phaseToParentIssue = new Map();
22
+ /** 親Issue IDセット(フィルタリング用) */
23
+ this.parentIssueIds = new Set();
20
24
  }
21
25
  /**
22
26
  * タスクが対象Issueに属するかチェック
@@ -36,6 +40,32 @@ export class TaskStateManager {
36
40
  }
37
41
  return false;
38
42
  }
43
+ /**
44
+ * Phase -> 親Issue マッピングを登録
45
+ */
46
+ registerPhaseMapping(phaseNumber, mapping) {
47
+ // 既存マッピングの古いIDを削除(再登録時の孤立ID防止)
48
+ const existing = this.phaseToParentIssue.get(phaseNumber);
49
+ if (existing) {
50
+ this.parentIssueIds.delete(existing.parentIssueId);
51
+ }
52
+ this.phaseToParentIssue.set(phaseNumber, mapping);
53
+ this.parentIssueIds.add(mapping.parentIssueId);
54
+ console.log(` 🔗 Phase マッピング登録: Phase ${phaseNumber} → ${mapping.parentIssueId}`);
55
+ }
56
+ /**
57
+ * Phase番号から親Issueマッピングを取得
58
+ */
59
+ getParentIssueMapping(phaseNumber) {
60
+ return this.phaseToParentIssue.get(phaseNumber);
61
+ }
62
+ /**
63
+ * 親Issueかどうか判定(IDベース)
64
+ * Done検知フィルタリングで使用
65
+ */
66
+ isParentIssue(issueId) {
67
+ return this.parentIssueIds.has(issueId);
68
+ }
39
69
  /**
40
70
  * Vibe-Kanban タスク ID とタスクグループ ID のマッピングを登録
41
71
  */
@@ -151,11 +181,18 @@ export function extractTaskGroupIdFromTitle(title) {
151
181
  }
152
182
  /**
153
183
  * Vibe-Kanban タスクのタイトルから Issue 番号を抽出
154
- * タイトル形式: "[IssueXX Y.Z] タスク名"
184
+ * タイトル形式: "[IssueXX Y.Z] タスク名" または "[IssueXX PhaseM] Phase名"
155
185
  */
156
186
  export function extractIssueNumberFromTitle(title) {
157
- const match = title.match(/\[Issue(\d+)\s+\d+\.\d+\]/);
158
- return match ? Number.parseInt(match[1], 10) : null;
187
+ // サブIssue形式: [Issue22 1.2] タスク名
188
+ const subMatch = title.match(/\[Issue(\d+)\s+\d+\.\d+\]/);
189
+ if (subMatch)
190
+ return Number.parseInt(subMatch[1], 10);
191
+ // 親Issue形式: [Issue22 Phase1] Phase名
192
+ const parentMatch = title.match(/\[Issue(\d+)\s+Phase\d+\]/);
193
+ if (parentMatch)
194
+ return Number.parseInt(parentMatch[1], 10);
195
+ return null;
159
196
  }
160
197
  /**
161
198
  * タスクグループ用の Vibe-Kanban タスクタイトルを生成
@@ -163,6 +200,40 @@ export function extractIssueNumberFromTitle(title) {
163
200
  export function generateVibeKanbanTitle(taskGroup, issueNumber) {
164
201
  return `[Issue${issueNumber} ${taskGroup.id}] ${taskGroup.name}`;
165
202
  }
203
+ /**
204
+ * Phase用の Vibe-Kanban 親Issueタイトルを生成
205
+ * 形式: [Issue{N} Phase{M}] {Phase名}
206
+ */
207
+ export function generateParentIssueTitle(phase, issueNumber) {
208
+ return `[Issue${issueNumber} Phase${phase.number}] ${phase.name}`;
209
+ }
210
+ /**
211
+ * Phase用の Vibe-Kanban 親Issue説明文を生成
212
+ */
213
+ export function generateParentIssueDescription(phase, issueNumber) {
214
+ const taskGroupList = phase.taskGroups
215
+ .map((tg) => `- ${tg.id}: ${tg.name}`)
216
+ .join("\n");
217
+ return `## Phase ${phase.number}: ${phase.name}
218
+
219
+ GitHub Issue #${issueNumber} の Phase ${phase.number} を管理する親Issueです。
220
+
221
+ ## 含まれるタスクグループ
222
+
223
+ ${taskGroupList || "(タスクグループなし)"}
224
+
225
+ ## 完了条件
226
+ Phase 内のすべてのサブIssue(タスクグループ)が完了すること。
227
+ `;
228
+ }
229
+ /**
230
+ * 親IssueのタイトルからPhase番号を抽出
231
+ * タイトル形式: "[IssueXX PhaseM] Phase名"
232
+ */
233
+ export function extractPhaseNumberFromTitle(title) {
234
+ const match = title.match(/\[Issue\d+\s+Phase(\d+)\]/);
235
+ return match ? Number.parseInt(match[1], 10) : null;
236
+ }
166
237
  /**
167
238
  * タスクグループ用の Vibe-Kanban タスク説明を生成
168
239
  */
@@ -1 +1 @@
1
- {"version":3,"file":"task-state-manager.js","sourceRoot":"","sources":["../../../../src/commands/task-loop/lib/task-state-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-state-manager.js","sourceRoot":"","sources":["../../../../src/commands/task-loop/lib/task-state-manager.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,QAAQ,EAAE,wBAAwB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGnD;;GAEG;AACH,MAAM,OAAO,gBAAgB;IAA7B;QACU,wBAAmB,GAAgB,IAAI,GAAG,EAAE,CAAC;QACrD,8CAA8C;QACtC,uBAAkB,GAAwB,IAAI,GAAG,EAAE,CAAC;QAC5D,0BAA0B;QAClB,sBAAiB,GAAkB,IAAI,CAAC;QAChD,8BAA8B;QACtB,uBAAkB,GAAmC,IAAI,GAAG,EAAE,CAAC;QACvE,6BAA6B;QACrB,mBAAc,GAAgB,IAAI,GAAG,EAAE,CAAC;IAuLlD,CAAC;IArLC;;OAEG;IACK,oBAAoB,CAC1B,IAAoB,EACpB,gBAA6C;QAE7C,IAAI,IAAI,CAAC,iBAAiB,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAEjD,wBAAwB;QACxB,MAAM,aAAa,GAAG,2BAA2B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9D,IAAI,aAAa,KAAK,IAAI,CAAC,iBAAiB;YAAE,OAAO,IAAI,CAAC;QAE1D,sBAAsB;QACtB,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,IAAI,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3C,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAC,iBAAiB,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAAE,OAAO,IAAI,CAAC;QAC7E,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,oBAAoB,CAAC,WAAmB,EAAE,OAA0B;QAClE,+BAA+B;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC1D,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QACrD,CAAC;QACD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,8BAA8B,WAAW,MAAM,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IACtF,CAAC;IAED;;OAEG;IACH,qBAAqB,CAAC,WAAmB;QACvC,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;IAED;;;OAGG;IACH,aAAa,CAAC,OAAe;QAC3B,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,mBAAmB,CAAC,UAAkB,EAAE,WAAmB;QACzD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,kBAAkB,UAAU,MAAM,WAAW,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED;;;;;OAKG;IACH,qBAAqB,CACnB,KAAuB,EACvB,WAAoB,EACpB,gBAA6C;QAE7C,aAAa;QACb,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAC;QACvC,CAAC;QAED,8BAA8B;QAC9B,MAAM,SAAS,GAAG,KAAK;aACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC;aAClC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC;QAEjE,IAAI,CAAC,mBAAmB,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAE/D,OAAO;QACP,OAAO,CAAC,GAAG,CAAC,iCAAiC,SAAS,CAAC,MAAM,OAAO,CAAC,CAAC;QACtE,IAAI,WAAW,KAAK,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtD,OAAO,CAAC,GAAG,CAAC,cAAc,WAAW,QAAQ,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC;YACpE,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;gBAC7B,MAAM,WAAW,GAAG,2BAA2B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC5D,OAAO,CAAC,GAAG,CAAC,QAAQ,WAAW,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,yBAAyB,CACvB,YAA8B,EAC9B,gBAA6C;QAE7C,2BAA2B;QAC3B,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9C,IAAI,CAAC,oBAAoB,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAC/C,CAAC;QAEF,MAAM,cAAc,GAAG,IAAI,GAAG,CAC5B,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAClE,CAAC;QAEF,gBAAgB;QAChB,OAAO,CAAC,GAAG,CACT,wBAAwB,cAAc,CAAC,IAAI,aAAa,IAAI,CAAC,mBAAmB,CAAC,IAAI,GAAG,CACzF,CAAC;QAEF,MAAM,iBAAiB,GAAa,EAAE,CAAC;QACvC,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;YAC5C,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBACtC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC3B,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;QAED,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,IAAI,cAAc,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC9D,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAC7C,CAAC;QAED,QAAQ;QACR,IAAI,CAAC,mBAAmB,GAAG,cAAc,CAAC;QAE1C,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,wBAAwB,CAAC,yBAAmC;QAC1D,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,KAAK,MAAM,UAAU,IAAI,yBAAyB,EAAE,CAAC;YACnD,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC5D,IAAI,WAAW,EAAE,CAAC;gBAChB,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,kBAAkB,UAAU,MAAM,WAAW,EAAE,CAAC,CAAC;YAC/D,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,kBAAkB,UAAU,cAAc,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,yBAAyB,CAC7B,WAAmB,EACnB,YAAsB;QAEtB,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,yBAAyB;YACzB,MAAM,KAAK,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;YACpC,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;QAED,cAAc;QACd,MAAM,KAAK,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;QACpC,IAAI,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC;QAE7B,oBAAoB;QACpB,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;YACvC,WAAW,GAAG,wBAAwB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YACjE,OAAO,CAAC,GAAG,CAAC,aAAa,WAAW,YAAY,CAAC,CAAC;QACpD,CAAC;QAED,cAAc;QACd,eAAe,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAE1C,sBAAsB;QACtB,MAAM,YAAY,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC3C,OAAO,cAAc,CAAC,YAAY,CAAC,CAAC;IACtC,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,2BAA2B,CAAC,KAAa;IACvD,0BAA0B;IAC1B,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC1D,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC;IAEjC,wBAAwB;IACxB,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAC/C,OAAO,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACvC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,2BAA2B,CAAC,KAAa;IACvD,gCAAgC;IAChC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC1D,IAAI,QAAQ;QAAE,OAAO,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEtD,oCAAoC;IACpC,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC7D,IAAI,WAAW;QAAE,OAAO,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAE5D,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,SAAoB,EAAE,WAAmB;IAC/E,OAAO,SAAS,WAAW,IAAI,SAAS,CAAC,EAAE,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;AACnE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAAY,EAAE,WAAmB;IACxE,OAAO,SAAS,WAAW,SAAS,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;AACpE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,8BAA8B,CAAC,KAAY,EAAE,WAAmB;IAC9E,MAAM,aAAa,GAAG,KAAK,CAAC,UAAU;SACnC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;SACrC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,OAAO,YAAY,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI;;gBAEhC,WAAW,YAAY,KAAK,CAAC,MAAM;;;;EAIjD,aAAa,IAAI,aAAa;;;;CAI/B,CAAC;AACF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,2BAA2B,CAAC,KAAa;IACvD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACvD,OAAO,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACtD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,6BAA6B,CAAC,SAAoB,EAAE,WAAmB;IACrF,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK;SAC7B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;SACvF,IAAI,CAAC,MAAM,CAAC,CAAC;IAEhB,OAAO;;;;;cAKK,WAAW,IAAI,SAAS,CAAC,EAAE;;;;;;kBAMvB,WAAW;;;EAG3B,SAAS,CAAC,EAAE;;;;EAIZ,QAAQ,IAAI,WAAW;;;EAGvB,SAAS,CAAC,kBAAkB,IAAI,OAAO;CACxC,CAAC;AACF,CAAC"}