takt 0.3.3 → 0.3.4
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 +98 -24
- package/dist/claude/client.d.ts +2 -0
- package/dist/claude/client.d.ts.map +1 -1
- package/dist/claude/client.js +3 -0
- package/dist/claude/client.js.map +1 -1
- package/dist/claude/executor.d.ts +2 -0
- package/dist/claude/executor.d.ts.map +1 -1
- package/dist/claude/executor.js +6 -0
- package/dist/claude/executor.js.map +1 -1
- package/dist/claude/process.d.ts +2 -0
- package/dist/claude/process.d.ts.map +1 -1
- package/dist/claude/process.js.map +1 -1
- package/dist/claude/stream-converter.d.ts.map +1 -1
- package/dist/claude/stream-converter.js +4 -0
- package/dist/claude/stream-converter.js.map +1 -1
- package/dist/claude/types.d.ts +1 -0
- package/dist/claude/types.d.ts.map +1 -1
- package/dist/cli.d.ts +5 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +83 -9
- package/dist/cli.js.map +1 -1
- package/dist/codex/client.d.ts +2 -0
- package/dist/codex/client.d.ts.map +1 -1
- package/dist/codex/client.js +2 -1
- package/dist/codex/client.js.map +1 -1
- package/dist/commands/addTask.js +1 -1
- package/dist/commands/addTask.js.map +1 -1
- package/dist/commands/index.d.ts +1 -0
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +1 -0
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/interactive.d.ts.map +1 -1
- package/dist/commands/interactive.js +37 -24
- package/dist/commands/interactive.js.map +1 -1
- package/dist/commands/pipelineExecution.d.ts +33 -0
- package/dist/commands/pipelineExecution.d.ts.map +1 -0
- package/dist/commands/pipelineExecution.js +191 -0
- package/dist/commands/pipelineExecution.js.map +1 -0
- package/dist/commands/session.d.ts +1 -1
- package/dist/commands/session.d.ts.map +1 -1
- package/dist/commands/session.js +5 -3
- package/dist/commands/session.js.map +1 -1
- package/dist/commands/workflowExecution.d.ts.map +1 -1
- package/dist/commands/workflowExecution.js +13 -20
- package/dist/commands/workflowExecution.js.map +1 -1
- package/dist/config/globalConfig.d.ts +10 -0
- package/dist/config/globalConfig.d.ts.map +1 -1
- package/dist/config/globalConfig.js +68 -2
- package/dist/config/globalConfig.js.map +1 -1
- package/dist/config/initialization.d.ts +9 -1
- package/dist/config/initialization.d.ts.map +1 -1
- package/dist/config/initialization.js +9 -1
- package/dist/config/initialization.js.map +1 -1
- package/dist/config/sessionStore.d.ts +9 -7
- package/dist/config/sessionStore.d.ts.map +1 -1
- package/dist/config/sessionStore.js +34 -9
- package/dist/config/sessionStore.js.map +1 -1
- package/dist/exitCodes.d.ts +13 -0
- package/dist/exitCodes.d.ts.map +1 -0
- package/dist/exitCodes.js +13 -0
- package/dist/exitCodes.js.map +1 -0
- package/dist/github/issue.d.ts.map +1 -1
- package/dist/github/issue.js +4 -4
- package/dist/github/issue.js.map +1 -1
- package/dist/github/pr.d.ts +39 -0
- package/dist/github/pr.d.ts.map +1 -0
- package/dist/github/pr.js +78 -0
- package/dist/github/pr.js.map +1 -0
- package/dist/models/schemas.d.ts +13 -0
- package/dist/models/schemas.d.ts.map +1 -1
- package/dist/models/schemas.js +12 -0
- package/dist/models/schemas.js.map +1 -1
- package/dist/models/types.d.ts +15 -0
- package/dist/models/types.d.ts.map +1 -1
- package/dist/providers/claude.d.ts.map +1 -1
- package/dist/providers/claude.js +3 -0
- package/dist/providers/claude.js.map +1 -1
- package/dist/providers/codex.d.ts.map +1 -1
- package/dist/providers/codex.js +3 -0
- package/dist/providers/codex.js.map +1 -1
- package/dist/providers/index.d.ts +4 -0
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js.map +1 -1
- package/dist/task/clone.d.ts.map +1 -1
- package/dist/task/clone.js +18 -0
- package/dist/task/clone.js.map +1 -1
- package/dist/utils/session.d.ts +3 -9
- package/dist/utils/session.d.ts.map +1 -1
- package/dist/utils/session.js +1 -1
- package/dist/utils/session.js.map +1 -1
- package/dist/utils/ui.d.ts +1 -1
- package/dist/utils/ui.d.ts.map +1 -1
- package/dist/utils/ui.js +5 -2
- package/dist/utils/ui.js.map +1 -1
- package/dist/workflow/engine.d.ts.map +1 -1
- package/dist/workflow/engine.js +18 -9
- package/dist/workflow/engine.js.map +1 -1
- package/dist/workflow/types.d.ts +1 -1
- package/dist/workflow/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/resources/global/en/config.yaml +16 -0
- package/resources/global/en/workflows/expert-cqrs.yaml +227 -357
- package/resources/global/en/workflows/expert.yaml +231 -359
- package/resources/global/ja/config.yaml +16 -0
- package/resources/global/ja/workflows/expert-cqrs.yaml +226 -356
- package/resources/global/ja/workflows/expert.yaml +230 -358
|
@@ -2,13 +2,12 @@
|
|
|
2
2
|
# CQRS+ES、フロントエンド、セキュリティ、QAの専門家によるレビューワークフロー
|
|
3
3
|
#
|
|
4
4
|
# フロー:
|
|
5
|
-
# plan -> implement -> ai_review ->
|
|
6
|
-
# ↓
|
|
7
|
-
# ai_fix
|
|
8
|
-
#
|
|
9
|
-
#
|
|
10
|
-
#
|
|
11
|
-
# - fix_qa: MINOR→qa_review, SECURITY→security_review, MAJOR→cqrs_es_review
|
|
5
|
+
# plan -> implement -> ai_review -> reviewers (parallel) -> supervise -> COMPLETE
|
|
6
|
+
# ↓ ├─ cqrs-es-review ↓
|
|
7
|
+
# ai_fix ├─ frontend-review fix_supervisor
|
|
8
|
+
# ├─ security-review
|
|
9
|
+
# └─ qa-review
|
|
10
|
+
# any("needs_fix") → fix → reviewers
|
|
12
11
|
#
|
|
13
12
|
# ボイラープレートセクション(Workflow Context, User Request, Previous Response,
|
|
14
13
|
# Additional User Inputs, Instructions heading)はbuildInstruction()が自動挿入。
|
|
@@ -199,7 +198,7 @@ steps:
|
|
|
199
198
|
- スコープクリープの検出
|
|
200
199
|
rules:
|
|
201
200
|
- condition: AI特有の問題が見つからない
|
|
202
|
-
next:
|
|
201
|
+
next: reviewers
|
|
203
202
|
- condition: AI特有の問題が検出された
|
|
204
203
|
next: ai_fix
|
|
205
204
|
|
|
@@ -233,236 +232,220 @@ steps:
|
|
|
233
232
|
next: plan
|
|
234
233
|
|
|
235
234
|
# ===========================================
|
|
236
|
-
# Phase 3:
|
|
235
|
+
# Phase 3: Expert Reviews (Parallel)
|
|
237
236
|
# ===========================================
|
|
238
|
-
- name:
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
237
|
+
- name: reviewers
|
|
238
|
+
parallel:
|
|
239
|
+
- name: cqrs-es-review
|
|
240
|
+
edit: false
|
|
241
|
+
agent: ../agents/expert-cqrs/cqrs-es-reviewer.md
|
|
242
|
+
report:
|
|
243
|
+
name: 04-cqrs-es-review.md
|
|
244
|
+
format: |
|
|
245
|
+
```markdown
|
|
246
|
+
# CQRS+ESレビュー
|
|
247
|
+
|
|
248
|
+
## 結果: APPROVE / REJECT
|
|
249
|
+
|
|
250
|
+
## サマリー
|
|
251
|
+
{1-2文で結果を要約}
|
|
252
|
+
|
|
253
|
+
## 確認した観点
|
|
254
|
+
| 観点 | 結果 | 備考 |
|
|
255
|
+
|------|------|------|
|
|
256
|
+
| Aggregate設計 | ✅ | - |
|
|
257
|
+
| イベント設計 | ✅ | - |
|
|
258
|
+
| Command/Query分離 | ✅ | - |
|
|
259
|
+
| プロジェクション | ✅ | - |
|
|
260
|
+
| 結果整合性 | ✅ | - |
|
|
261
|
+
|
|
262
|
+
## 問題点(REJECTの場合)
|
|
263
|
+
| # | 場所 | 問題 | 修正案 |
|
|
264
|
+
|---|------|------|--------|
|
|
265
|
+
| 1 | `src/file.ts:42` | 問題の説明 | 修正方法 |
|
|
266
|
+
```
|
|
267
|
+
allowed_tools:
|
|
268
|
+
- Read
|
|
269
|
+
- Glob
|
|
270
|
+
- Grep
|
|
271
|
+
- Write
|
|
272
|
+
- WebSearch
|
|
273
|
+
- WebFetch
|
|
274
|
+
rules:
|
|
275
|
+
- condition: approved
|
|
276
|
+
- condition: needs_fix
|
|
277
|
+
instruction_template: |
|
|
278
|
+
CQRS(コマンドクエリ責務分離)とEvent Sourcing(イベントソーシング)の観点から
|
|
279
|
+
変更をレビューしてください。AI特有の問題のレビューは不要です(ai_reviewステップで実施済み)。
|
|
280
|
+
|
|
281
|
+
**レビュー観点:**
|
|
282
|
+
- Aggregate設計の妥当性
|
|
283
|
+
- イベント設計(粒度、命名、スキーマ)
|
|
284
|
+
- Command/Queryの分離
|
|
285
|
+
- プロジェクション設計
|
|
286
|
+
- 結果整合性の考慮
|
|
287
|
+
|
|
288
|
+
**注意**: このプロジェクトがCQRS+ESパターンを使用していない場合は、
|
|
289
|
+
一般的なドメイン設計の観点からレビューしてください。
|
|
290
|
+
|
|
291
|
+
- name: frontend-review
|
|
292
|
+
edit: false
|
|
293
|
+
agent: ../agents/expert/frontend-reviewer.md
|
|
294
|
+
report:
|
|
295
|
+
name: 05-frontend-review.md
|
|
296
|
+
format: |
|
|
297
|
+
```markdown
|
|
298
|
+
# フロントエンドレビュー
|
|
299
|
+
|
|
300
|
+
## 結果: APPROVE / REJECT
|
|
301
|
+
|
|
302
|
+
## サマリー
|
|
303
|
+
{1-2文で結果を要約}
|
|
304
|
+
|
|
305
|
+
## 確認した観点
|
|
306
|
+
| 観点 | 結果 | 備考 |
|
|
307
|
+
|------|------|------|
|
|
308
|
+
| コンポーネント設計 | ✅ | - |
|
|
309
|
+
| 状態管理 | ✅ | - |
|
|
310
|
+
| パフォーマンス | ✅ | - |
|
|
311
|
+
| アクセシビリティ | ✅ | - |
|
|
312
|
+
| 型安全性 | ✅ | - |
|
|
313
|
+
|
|
314
|
+
## 問題点(REJECTの場合)
|
|
315
|
+
| # | 場所 | 問題 | 修正案 |
|
|
316
|
+
|---|------|------|--------|
|
|
317
|
+
| 1 | `src/file.tsx:42` | 問題の説明 | 修正方法 |
|
|
318
|
+
```
|
|
319
|
+
allowed_tools:
|
|
320
|
+
- Read
|
|
321
|
+
- Glob
|
|
322
|
+
- Grep
|
|
323
|
+
- Write
|
|
324
|
+
- WebSearch
|
|
325
|
+
- WebFetch
|
|
326
|
+
rules:
|
|
327
|
+
- condition: approved
|
|
328
|
+
- condition: needs_fix
|
|
329
|
+
instruction_template: |
|
|
330
|
+
フロントエンド開発の観点から変更をレビューしてください。
|
|
331
|
+
|
|
332
|
+
**レビュー観点:**
|
|
333
|
+
- コンポーネント設計(責務分離、粒度)
|
|
334
|
+
- 状態管理(ローカル/グローバルの判断)
|
|
335
|
+
- パフォーマンス(再レンダリング、メモ化)
|
|
336
|
+
- アクセシビリティ(キーボード操作、ARIA)
|
|
337
|
+
- データフェッチパターン
|
|
338
|
+
- TypeScript型安全性
|
|
339
|
+
|
|
340
|
+
**注意**: このプロジェクトがフロントエンドを含まない場合は、
|
|
341
|
+
問題なしとして次に進んでください。
|
|
342
|
+
|
|
343
|
+
- name: security-review
|
|
344
|
+
edit: false
|
|
345
|
+
agent: ../agents/expert/security-reviewer.md
|
|
346
|
+
report:
|
|
347
|
+
name: 06-security-review.md
|
|
348
|
+
format: |
|
|
349
|
+
```markdown
|
|
350
|
+
# セキュリティレビュー
|
|
351
|
+
|
|
352
|
+
## 結果: APPROVE / REJECT
|
|
353
|
+
|
|
354
|
+
## 重大度: None / Low / Medium / High / Critical
|
|
355
|
+
|
|
356
|
+
## チェック結果
|
|
357
|
+
| カテゴリ | 結果 | 備考 |
|
|
358
|
+
|---------|------|------|
|
|
359
|
+
| インジェクション | ✅ | - |
|
|
360
|
+
| 認証・認可 | ✅ | - |
|
|
361
|
+
| データ保護 | ✅ | - |
|
|
362
|
+
| 依存関係 | ✅ | - |
|
|
363
|
+
|
|
364
|
+
## 脆弱性(REJECTの場合)
|
|
365
|
+
| # | 重大度 | 種類 | 場所 | 修正案 |
|
|
366
|
+
|---|--------|------|------|--------|
|
|
367
|
+
| 1 | High | SQLi | `src/db.ts:42` | パラメータ化クエリを使用 |
|
|
368
|
+
|
|
369
|
+
## 警告(ブロッキングではない)
|
|
370
|
+
- {セキュリティに関する推奨事項}
|
|
371
|
+
```
|
|
372
|
+
|
|
373
|
+
**認知負荷軽減ルール:**
|
|
374
|
+
- 問題なし → チェック表のみ(10行以内)
|
|
375
|
+
- 警告 → + 警告1-2行(15行以内)
|
|
376
|
+
- 脆弱性 → + 表形式(30行以内)
|
|
377
|
+
allowed_tools:
|
|
378
|
+
- Read
|
|
379
|
+
- Glob
|
|
380
|
+
- Grep
|
|
381
|
+
- Write
|
|
382
|
+
- WebSearch
|
|
383
|
+
- WebFetch
|
|
384
|
+
rules:
|
|
385
|
+
- condition: approved
|
|
386
|
+
- condition: needs_fix
|
|
387
|
+
instruction_template: |
|
|
388
|
+
セキュリティの観点から変更をレビューしてください。以下の脆弱性をチェック:
|
|
389
|
+
- インジェクション攻撃(SQL, コマンド, XSS)
|
|
390
|
+
- 認証・認可の不備
|
|
391
|
+
- データ露出リスク
|
|
392
|
+
- 暗号化の弱点
|
|
393
|
+
|
|
394
|
+
- name: qa-review
|
|
395
|
+
edit: false
|
|
396
|
+
agent: ../agents/expert/qa-reviewer.md
|
|
397
|
+
report:
|
|
398
|
+
name: 07-qa-review.md
|
|
399
|
+
format: |
|
|
400
|
+
```markdown
|
|
401
|
+
# QAレビュー
|
|
402
|
+
|
|
403
|
+
## 結果: APPROVE / REJECT
|
|
404
|
+
|
|
405
|
+
## サマリー
|
|
406
|
+
{1-2文で結果を要約}
|
|
407
|
+
|
|
408
|
+
## 確認した観点
|
|
409
|
+
| 観点 | 結果 | 備考 |
|
|
410
|
+
|------|------|------|
|
|
411
|
+
| テストカバレッジ | ✅ | - |
|
|
412
|
+
| テスト品質 | ✅ | - |
|
|
413
|
+
| エラーハンドリング | ✅ | - |
|
|
414
|
+
| ドキュメント | ✅ | - |
|
|
415
|
+
| 保守性 | ✅ | - |
|
|
416
|
+
|
|
417
|
+
## 問題点(REJECTの場合)
|
|
418
|
+
| # | カテゴリ | 問題 | 修正案 |
|
|
419
|
+
|---|---------|------|--------|
|
|
420
|
+
| 1 | テスト | 問題の説明 | 修正方法 |
|
|
421
|
+
```
|
|
422
|
+
allowed_tools:
|
|
423
|
+
- Read
|
|
424
|
+
- Glob
|
|
425
|
+
- Grep
|
|
426
|
+
- Write
|
|
427
|
+
- WebSearch
|
|
428
|
+
- WebFetch
|
|
429
|
+
rules:
|
|
430
|
+
- condition: approved
|
|
431
|
+
- condition: needs_fix
|
|
432
|
+
instruction_template: |
|
|
433
|
+
品質保証の観点から変更をレビューしてください。
|
|
434
|
+
|
|
435
|
+
**レビュー観点:**
|
|
436
|
+
- テストカバレッジと品質
|
|
437
|
+
- テスト戦略(単体/統合/E2E)
|
|
438
|
+
- ドキュメント(コード内・外部)
|
|
439
|
+
- エラーハンドリング
|
|
440
|
+
- ログとモニタリング
|
|
441
|
+
- 保守性
|
|
286
442
|
rules:
|
|
287
|
-
- condition:
|
|
288
|
-
next:
|
|
289
|
-
- condition:
|
|
290
|
-
next:
|
|
291
|
-
|
|
292
|
-
- name: fix_cqrs_es
|
|
293
|
-
edit: true
|
|
294
|
-
agent: ../agents/default/coder.md
|
|
295
|
-
allowed_tools:
|
|
296
|
-
- Read
|
|
297
|
-
- Glob
|
|
298
|
-
- Grep
|
|
299
|
-
- Edit
|
|
300
|
-
- Write
|
|
301
|
-
- Bash
|
|
302
|
-
- WebSearch
|
|
303
|
-
- WebFetch
|
|
304
|
-
instruction_template: |
|
|
305
|
-
## CQRS+ES Review Feedback (これが最新の指示です - 優先して対応してください)
|
|
306
|
-
{previous_response}
|
|
307
|
-
|
|
308
|
-
**重要**: CQRS+ES専門家からの指摘を修正してください。
|
|
309
|
-
|
|
310
|
-
指摘されたポイント:
|
|
311
|
-
- Aggregate設計
|
|
312
|
-
- イベント設計
|
|
313
|
-
- Command/Query分離
|
|
314
|
-
- プロジェクション
|
|
315
|
-
- 結果整合性
|
|
316
|
-
pass_previous_response: true
|
|
317
|
-
rules:
|
|
318
|
-
- condition: CQRS+ES専門家の指摘に対する修正が完了した
|
|
319
|
-
next: cqrs_es_review
|
|
320
|
-
- condition: 修正を進行できない
|
|
321
|
-
next: plan
|
|
322
|
-
|
|
323
|
-
# ===========================================
|
|
324
|
-
# Phase 4: Frontend Review
|
|
325
|
-
# ===========================================
|
|
326
|
-
- name: frontend_review
|
|
327
|
-
edit: false
|
|
328
|
-
agent: ../agents/expert/frontend-reviewer.md
|
|
329
|
-
report:
|
|
330
|
-
name: 05-frontend-review.md
|
|
331
|
-
format: |
|
|
332
|
-
```markdown
|
|
333
|
-
# フロントエンドレビュー
|
|
334
|
-
|
|
335
|
-
## 結果: APPROVE / REJECT
|
|
336
|
-
|
|
337
|
-
## サマリー
|
|
338
|
-
{1-2文で結果を要約}
|
|
339
|
-
|
|
340
|
-
## 確認した観点
|
|
341
|
-
| 観点 | 結果 | 備考 |
|
|
342
|
-
|------|------|------|
|
|
343
|
-
| コンポーネント設計 | ✅ | - |
|
|
344
|
-
| 状態管理 | ✅ | - |
|
|
345
|
-
| パフォーマンス | ✅ | - |
|
|
346
|
-
| アクセシビリティ | ✅ | - |
|
|
347
|
-
| 型安全性 | ✅ | - |
|
|
348
|
-
|
|
349
|
-
## 問題点(REJECTの場合)
|
|
350
|
-
| # | 場所 | 問題 | 修正案 |
|
|
351
|
-
|---|------|------|--------|
|
|
352
|
-
| 1 | `src/file.tsx:42` | 問題の説明 | 修正方法 |
|
|
353
|
-
```
|
|
354
|
-
allowed_tools:
|
|
355
|
-
- Read
|
|
356
|
-
- Glob
|
|
357
|
-
- Grep
|
|
358
|
-
- Write
|
|
359
|
-
- WebSearch
|
|
360
|
-
- WebFetch
|
|
361
|
-
instruction_template: |
|
|
362
|
-
フロントエンド開発の観点から上記の変更をレビューしてください。
|
|
363
|
-
|
|
364
|
-
**レビュー観点:**
|
|
365
|
-
- コンポーネント設計(責務分離、粒度)
|
|
366
|
-
- 状態管理(ローカル/グローバルの判断)
|
|
367
|
-
- パフォーマンス(再レンダリング、メモ化)
|
|
368
|
-
- アクセシビリティ(キーボード操作、ARIA)
|
|
369
|
-
- データフェッチパターン
|
|
370
|
-
- TypeScript型安全性
|
|
371
|
-
|
|
372
|
-
**注意**: このプロジェクトがフロントエンドを含まない場合は、
|
|
373
|
-
問題なしとして次に進んでください。
|
|
374
|
-
rules:
|
|
375
|
-
- condition: フロントエンド設計に問題がない
|
|
376
|
-
next: security_review
|
|
377
|
-
- condition: フロントエンド設計に問題がある
|
|
378
|
-
next: fix_frontend
|
|
379
|
-
|
|
380
|
-
- name: fix_frontend
|
|
381
|
-
edit: true
|
|
382
|
-
agent: ../agents/default/coder.md
|
|
383
|
-
allowed_tools:
|
|
384
|
-
- Read
|
|
385
|
-
- Glob
|
|
386
|
-
- Grep
|
|
387
|
-
- Edit
|
|
388
|
-
- Write
|
|
389
|
-
- Bash
|
|
390
|
-
- WebSearch
|
|
391
|
-
- WebFetch
|
|
392
|
-
instruction_template: |
|
|
393
|
-
## Frontend Review Feedback (これが最新の指示です - 優先して対応してください)
|
|
394
|
-
{previous_response}
|
|
395
|
-
|
|
396
|
-
**重要**: フロントエンド専門家からの指摘を修正してください。
|
|
397
|
-
|
|
398
|
-
指摘されたポイント:
|
|
399
|
-
- コンポーネント設計
|
|
400
|
-
- 状態管理
|
|
401
|
-
- パフォーマンス
|
|
402
|
-
- アクセシビリティ
|
|
403
|
-
- 型安全性
|
|
404
|
-
pass_previous_response: true
|
|
405
|
-
rules:
|
|
406
|
-
- condition: フロントエンドの指摘に対する修正が完了した
|
|
407
|
-
next: frontend_review
|
|
408
|
-
- condition: 修正を進行できない
|
|
409
|
-
next: plan
|
|
410
|
-
|
|
411
|
-
# ===========================================
|
|
412
|
-
# Phase 5: Security Review
|
|
413
|
-
# ===========================================
|
|
414
|
-
- name: security_review
|
|
415
|
-
edit: false
|
|
416
|
-
agent: ../agents/expert/security-reviewer.md
|
|
417
|
-
report:
|
|
418
|
-
name: 06-security-review.md
|
|
419
|
-
format: |
|
|
420
|
-
```markdown
|
|
421
|
-
# セキュリティレビュー
|
|
422
|
-
|
|
423
|
-
## 結果: APPROVE / REJECT
|
|
424
|
-
|
|
425
|
-
## 重大度: None / Low / Medium / High / Critical
|
|
426
|
-
|
|
427
|
-
## チェック結果
|
|
428
|
-
| カテゴリ | 結果 | 備考 |
|
|
429
|
-
|---------|------|------|
|
|
430
|
-
| インジェクション | ✅ | - |
|
|
431
|
-
| 認証・認可 | ✅ | - |
|
|
432
|
-
| データ保護 | ✅ | - |
|
|
433
|
-
| 依存関係 | ✅ | - |
|
|
434
|
-
|
|
435
|
-
## 脆弱性(REJECTの場合)
|
|
436
|
-
| # | 重大度 | 種類 | 場所 | 修正案 |
|
|
437
|
-
|---|--------|------|------|--------|
|
|
438
|
-
| 1 | High | SQLi | `src/db.ts:42` | パラメータ化クエリを使用 |
|
|
439
|
-
|
|
440
|
-
## 警告(ブロッキングではない)
|
|
441
|
-
- {セキュリティに関する推奨事項}
|
|
442
|
-
```
|
|
443
|
-
allowed_tools:
|
|
444
|
-
- Read
|
|
445
|
-
- Glob
|
|
446
|
-
- Grep
|
|
447
|
-
- Write
|
|
448
|
-
- WebSearch
|
|
449
|
-
- WebFetch
|
|
450
|
-
instruction_template: |
|
|
451
|
-
セキュリティの観点から上記の変更をレビューしてください。
|
|
452
|
-
|
|
453
|
-
**レビュー観点:**
|
|
454
|
-
- インジェクション攻撃(SQL, コマンド, XSS)
|
|
455
|
-
- 認証・認可の不備
|
|
456
|
-
- 機密情報の取り扱い
|
|
457
|
-
- 暗号化の適切性
|
|
458
|
-
- OWASP Top 10
|
|
459
|
-
rules:
|
|
460
|
-
- condition: セキュリティ上の問題がない
|
|
461
|
-
next: qa_review
|
|
462
|
-
- condition: セキュリティ上の脆弱性が検出された
|
|
463
|
-
next: fix_security
|
|
443
|
+
- condition: all("approved")
|
|
444
|
+
next: supervise
|
|
445
|
+
- condition: any("needs_fix")
|
|
446
|
+
next: fix
|
|
464
447
|
|
|
465
|
-
- name:
|
|
448
|
+
- name: fix
|
|
466
449
|
edit: true
|
|
467
450
|
agent: ../agents/default/coder.md
|
|
468
451
|
allowed_tools:
|
|
@@ -474,136 +457,23 @@ steps:
|
|
|
474
457
|
- Bash
|
|
475
458
|
- WebSearch
|
|
476
459
|
- WebFetch
|
|
477
|
-
|
|
478
|
-
## Security Review Feedback (これが最新の指示です - 優先して対応してください)
|
|
479
|
-
{previous_response}
|
|
480
|
-
|
|
481
|
-
**重要**: セキュリティ専門家からの指摘を修正してください。
|
|
482
|
-
セキュリティ問題は最優先で対応してください。
|
|
483
|
-
|
|
484
|
-
指摘されたポイント:
|
|
485
|
-
- インジェクション脆弱性
|
|
486
|
-
- 認証・認可の不備
|
|
487
|
-
- 機密情報の露出
|
|
488
|
-
- 暗号化の問題
|
|
489
|
-
|
|
490
|
-
## 修正完了時の判断
|
|
491
|
-
修正が完了したら、**変更の影響範囲**を判断してください:
|
|
492
|
-
|
|
493
|
-
- 軽微な修正(セキュリティレビューのみ再実施)
|
|
494
|
-
- 例: バリデーション追加、エスケープ処理追加、設定変更
|
|
495
|
-
- 大きな修正(CQRS+ESレビューからやり直し)
|
|
496
|
-
- 例: データフロー変更、API設計変更、認証方式変更、ドメインモデル変更
|
|
497
|
-
pass_previous_response: true
|
|
460
|
+
permission_mode: acceptEdits
|
|
498
461
|
rules:
|
|
499
|
-
- condition:
|
|
500
|
-
next:
|
|
501
|
-
- condition: 大きな修正を行い、CQRS+ESレビューからやり直す必要がある
|
|
502
|
-
next: cqrs_es_review
|
|
462
|
+
- condition: 修正が完了した
|
|
463
|
+
next: reviewers
|
|
503
464
|
- condition: 修正を進行できない
|
|
504
465
|
next: plan
|
|
505
|
-
|
|
506
|
-
# ===========================================
|
|
507
|
-
# Phase 6: QA Review
|
|
508
|
-
# ===========================================
|
|
509
|
-
- name: qa_review
|
|
510
|
-
edit: false
|
|
511
|
-
agent: ../agents/expert/qa-reviewer.md
|
|
512
|
-
report:
|
|
513
|
-
name: 07-qa-review.md
|
|
514
|
-
format: |
|
|
515
|
-
```markdown
|
|
516
|
-
# QAレビュー
|
|
517
|
-
|
|
518
|
-
## 結果: APPROVE / REJECT
|
|
519
|
-
|
|
520
|
-
## サマリー
|
|
521
|
-
{1-2文で結果を要約}
|
|
522
|
-
|
|
523
|
-
## 確認した観点
|
|
524
|
-
| 観点 | 結果 | 備考 |
|
|
525
|
-
|------|------|------|
|
|
526
|
-
| テストカバレッジ | ✅ | - |
|
|
527
|
-
| テスト品質 | ✅ | - |
|
|
528
|
-
| エラーハンドリング | ✅ | - |
|
|
529
|
-
| ドキュメント | ✅ | - |
|
|
530
|
-
| 保守性 | ✅ | - |
|
|
531
|
-
|
|
532
|
-
## 問題点(REJECTの場合)
|
|
533
|
-
| # | カテゴリ | 問題 | 修正案 |
|
|
534
|
-
|---|---------|------|--------|
|
|
535
|
-
| 1 | テスト | 問題の説明 | 修正方法 |
|
|
536
|
-
```
|
|
537
|
-
allowed_tools:
|
|
538
|
-
- Read
|
|
539
|
-
- Glob
|
|
540
|
-
- Grep
|
|
541
|
-
- Write
|
|
542
|
-
- WebSearch
|
|
543
|
-
- WebFetch
|
|
544
466
|
instruction_template: |
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
**レビュー観点:**
|
|
548
|
-
- テストカバレッジと品質
|
|
549
|
-
- テスト戦略(単体/統合/E2E)
|
|
550
|
-
- ドキュメント(コード内・外部)
|
|
551
|
-
- エラーハンドリング
|
|
552
|
-
- ログとモニタリング
|
|
553
|
-
- 保守性
|
|
554
|
-
rules:
|
|
555
|
-
- condition: 品質基準を満たしている
|
|
556
|
-
next: supervise
|
|
557
|
-
- condition: 品質に問題がある
|
|
558
|
-
next: fix_qa
|
|
559
|
-
|
|
560
|
-
- name: fix_qa
|
|
561
|
-
edit: true
|
|
562
|
-
agent: ../agents/default/coder.md
|
|
563
|
-
allowed_tools:
|
|
564
|
-
- Read
|
|
565
|
-
- Glob
|
|
566
|
-
- Grep
|
|
567
|
-
- Edit
|
|
568
|
-
- Write
|
|
569
|
-
- Bash
|
|
570
|
-
- WebSearch
|
|
571
|
-
- WebFetch
|
|
572
|
-
instruction_template: |
|
|
573
|
-
## QA Review Feedback (これが最新の指示です - 優先して対応してください)
|
|
467
|
+
## Review Feedback (これが最新の指示です - 優先して対応してください)
|
|
574
468
|
{previous_response}
|
|
575
469
|
|
|
576
|
-
**重要**:
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
- テストの追加・改善
|
|
580
|
-
- ドキュメントの追加・修正
|
|
581
|
-
- エラーハンドリング
|
|
582
|
-
- ログ出力
|
|
583
|
-
- コード品質
|
|
584
|
-
|
|
585
|
-
## 修正完了時の判断
|
|
586
|
-
修正が完了したら、**変更の影響範囲**を判断してください:
|
|
587
|
-
|
|
588
|
-
- 軽微な修正(QAレビューのみ再実施)
|
|
589
|
-
- 例: テスト追加、ドキュメント追加、ログ追加、コメント追加
|
|
590
|
-
- セキュリティに影響する修正(セキュリティレビューからやり直し)
|
|
591
|
-
- 例: エラーハンドリング変更(エラーメッセージの内容変更)、入力検証の変更
|
|
592
|
-
- 大きな修正(CQRS+ESレビューからやり直し)
|
|
593
|
-
- 例: ビジネスロジック変更、データモデル変更、API変更
|
|
470
|
+
**重要**: レビュアーからのフィードバックに対応してください。
|
|
471
|
+
「Original User Request」は参考情報であり、最新の指示ではありません。
|
|
472
|
+
セッションの会話履歴を確認し、レビュアーの指摘事項を修正してください。
|
|
594
473
|
pass_previous_response: true
|
|
595
|
-
rules:
|
|
596
|
-
- condition: 軽微なQA修正が完了した
|
|
597
|
-
next: qa_review
|
|
598
|
-
- condition: セキュリティに影響する修正を行った
|
|
599
|
-
next: security_review
|
|
600
|
-
- condition: 大きな修正を行い、CQRS+ESレビューからやり直す必要がある
|
|
601
|
-
next: cqrs_es_review
|
|
602
|
-
- condition: 修正を進行できない
|
|
603
|
-
next: plan
|
|
604
474
|
|
|
605
475
|
# ===========================================
|
|
606
|
-
# Phase
|
|
476
|
+
# Phase 4: Supervision
|
|
607
477
|
# ===========================================
|
|
608
478
|
- name: supervise
|
|
609
479
|
edit: false
|