Initial commit
This commit is contained in:
274
commands/rev-tasks.md
Normal file
274
commands/rev-tasks.md
Normal file
@@ -0,0 +1,274 @@
|
||||
---
|
||||
description: 既存のコードベースを分析し、実装されている機能を特定してタスク一覧として整理します。実装済みの機能から逆算してタスクの構造、依存関係、実装詳細を抽出し、文書化します。
|
||||
---
|
||||
|
||||
# rev-tasks
|
||||
|
||||
## 目的
|
||||
|
||||
既存のコードベースを分析し、実装されている機能を特定してタスク一覧として整理する。実装済みの機能から逆算してタスクの構造、依存関係、実装詳細を抽出し、文書化する。
|
||||
|
||||
## 前提条件
|
||||
|
||||
- 分析対象のコードベースが存在する
|
||||
- `docs/reverse/` ディレクトリが存在する(なければ作成)
|
||||
- TypeScript/JavaScript、Python、その他のコードを分析可能
|
||||
|
||||
## 実行内容
|
||||
|
||||
1. **コードベースの構造分析**
|
||||
- ディレクトリ構造の把握
|
||||
- 設定ファイルの確認(package.json、tsconfig.json、requirements.txt等)
|
||||
- 依存関係の分析
|
||||
|
||||
2. **機能コンポーネントの特定**
|
||||
- フロントエンドコンポーネント
|
||||
- バックエンドサービス/コントローラー
|
||||
- データベース関連(モデル、マイグレーション)
|
||||
- ユーティリティ関数
|
||||
- ミドルウェア
|
||||
|
||||
3. **API エンドポイントの抽出**
|
||||
- REST API エンドポイント
|
||||
- GraphQL リゾルバー
|
||||
- WebSocket ハンドラー
|
||||
- ルーティング定義
|
||||
|
||||
4. **データベース構造の分析**
|
||||
- テーブル定義
|
||||
- リレーションシップ
|
||||
- マイグレーションファイル
|
||||
- インデックス設定
|
||||
|
||||
5. **UI/UX実装の分析**
|
||||
- 画面コンポーネント
|
||||
- 状態管理の実装
|
||||
- ルーティング
|
||||
- スタイリング手法
|
||||
|
||||
6. **テスト実装の確認**
|
||||
- 単体テストの存在
|
||||
- 統合テストの存在
|
||||
- E2Eテストの存在
|
||||
- テストカバレッジ
|
||||
|
||||
7. **タスクの逆算と整理**
|
||||
- 実装された機能をタスクとして分解
|
||||
- タスクIDの自動割り当て
|
||||
- 依存関係の推定
|
||||
- 実装工数の推定
|
||||
|
||||
8. **ファイルの作成**
|
||||
- `docs/reverse/{プロジェクト名}-discovered-tasks.md` として保存
|
||||
- 発見されたタスクを構造化して文書化
|
||||
|
||||
## 出力フォーマット例
|
||||
|
||||
````markdown
|
||||
# {プロジェクト名} 発見タスク一覧
|
||||
|
||||
## 概要
|
||||
|
||||
**分析日時**: {分析実行日時}
|
||||
**対象コードベース**: {パス}
|
||||
**発見タスク数**: {数}
|
||||
**推定総工数**: {時間}
|
||||
|
||||
## コードベース構造
|
||||
|
||||
### プロジェクト情報
|
||||
- **フレームワーク**: {使用フレームワーク}
|
||||
- **言語**: {使用言語}
|
||||
- **データベース**: {使用DB}
|
||||
- **主要ライブラリ**: {主要な依存関係}
|
||||
|
||||
### ディレクトリ構造
|
||||
```
|
||||
{ディレクトリツリー}
|
||||
```
|
||||
|
||||
## 発見されたタスク
|
||||
|
||||
### 基盤・設定タスク
|
||||
|
||||
#### DISCOVERED-001: プロジェクト初期設定
|
||||
|
||||
- [x] **タスク完了** (実装済み)
|
||||
- **タスクタイプ**: DIRECT
|
||||
- **実装ファイル**:
|
||||
- `package.json`
|
||||
- `tsconfig.json`
|
||||
- `.env.example`
|
||||
- **実装詳細**:
|
||||
- {発見された設定内容}
|
||||
- **推定工数**: {時間}
|
||||
|
||||
#### DISCOVERED-002: データベース設定
|
||||
|
||||
- [x] **タスク完了** (実装済み)
|
||||
- **タスクタイプ**: DIRECT
|
||||
- **実装ファイル**:
|
||||
- `src/database/connection.ts`
|
||||
- `migrations/001_initial.sql`
|
||||
- **実装詳細**:
|
||||
- {発見されたDB設定内容}
|
||||
- **推定工数**: {時間}
|
||||
|
||||
### API実装タスク
|
||||
|
||||
#### DISCOVERED-101: ユーザー認証API
|
||||
|
||||
- [x] **タスク完了** (実装済み)
|
||||
- **タスクタイプ**: TDD
|
||||
- **実装ファイル**:
|
||||
- `src/auth/auth.controller.ts`
|
||||
- `src/auth/auth.service.ts`
|
||||
- `src/auth/jwt.strategy.ts`
|
||||
- **実装詳細**:
|
||||
- ログイン/ログアウト機能
|
||||
- JWT トークン発行
|
||||
- 認証ミドルウェア
|
||||
- **APIエンドポイント**:
|
||||
- `POST /auth/login`
|
||||
- `POST /auth/logout`
|
||||
- `POST /auth/refresh`
|
||||
- **テスト実装状況**:
|
||||
- [x] 単体テスト: `auth.service.spec.ts`
|
||||
- [x] 統合テスト: `auth.controller.spec.ts`
|
||||
- [ ] E2Eテスト: 未実装
|
||||
- **推定工数**: {時間}
|
||||
|
||||
### UI実装タスク
|
||||
|
||||
#### DISCOVERED-201: ログイン画面
|
||||
|
||||
- [x] **タスク完了** (実装済み)
|
||||
- **タスクタイプ**: TDD
|
||||
- **実装ファイル**:
|
||||
- `src/components/Login/LoginForm.tsx`
|
||||
- `src/components/Login/LoginForm.module.css`
|
||||
- `src/hooks/useAuth.ts`
|
||||
- **実装詳細**:
|
||||
- ログインフォーム
|
||||
- バリデーション機能
|
||||
- エラーハンドリング
|
||||
- **UI/UX実装状況**:
|
||||
- [x] レスポンシブデザイン
|
||||
- [x] ローディング状態
|
||||
- [x] エラー表示
|
||||
- [ ] アクセシビリティ: 部分的実装
|
||||
- **テスト実装状況**:
|
||||
- [x] コンポーネントテスト: `LoginForm.test.tsx`
|
||||
- [ ] E2Eテスト: 未実装
|
||||
- **推定工数**: {時間}
|
||||
|
||||
## 未実装・改善推奨事項
|
||||
|
||||
### 不足しているテスト
|
||||
|
||||
- [ ] **E2Eテストスイート**: 主要ユーザーフローのテスト
|
||||
- [ ] **パフォーマンステスト**: API応答時間テスト
|
||||
- [ ] **セキュリティテスト**: 認証・認可テスト
|
||||
|
||||
### コード品質改善
|
||||
|
||||
- [ ] **TypeScript型安全性**: 一部でany型の使用
|
||||
- [ ] **エラーハンドリング**: 統一的なエラー処理
|
||||
- [ ] **ログ出力**: 構造化ログの実装
|
||||
|
||||
### ドキュメント不足
|
||||
|
||||
- [ ] **API仕様書**: OpenAPI/Swagger未実装
|
||||
- [ ] **開発者ガイド**: セットアップ手順書
|
||||
- [ ] **デプロイ手順書**: 本番環境構築手順
|
||||
|
||||
## 依存関係マップ
|
||||
|
||||
```mermaid
|
||||
graph TD
|
||||
A[DISCOVERED-001: プロジェクト初期設定] --> B[DISCOVERED-002: データベース設定]
|
||||
B --> C[DISCOVERED-101: ユーザー認証API]
|
||||
C --> D[DISCOVERED-201: ログイン画面]
|
||||
D --> E[未実装: E2Eテスト]
|
||||
|
||||
F[未実装: API仕様書] --> G[未実装: 開発者ガイド]
|
||||
```
|
||||
|
||||
## 実装パターン分析
|
||||
|
||||
### アーキテクチャパターン
|
||||
- **実装パターン**: {発見されたパターン}
|
||||
- **状態管理**: {使用されている状態管理}
|
||||
- **認証方式**: {実装されている認証方式}
|
||||
|
||||
### コーディングスタイル
|
||||
- **命名規則**: {発見された命名規則}
|
||||
- **ファイル構成**: {ファイル構成パターン}
|
||||
- **エラーハンドリング**: {エラー処理パターン}
|
||||
|
||||
## 技術的負債・改善点
|
||||
|
||||
### パフォーマンス
|
||||
- {発見されたパフォーマンス課題}
|
||||
|
||||
### セキュリティ
|
||||
- {発見されたセキュリティ課題}
|
||||
|
||||
### 保守性
|
||||
- {発見された保守性課題}
|
||||
|
||||
## 推奨次ステップ
|
||||
|
||||
1. **不足テストの実装** - 特にE2Eテストスイート
|
||||
2. **ドキュメント整備** - API仕様書とセットアップガイド
|
||||
3. **コード品質改善** - TypeScript型安全性とエラーハンドリング
|
||||
4. **セキュリティ強化** - 認証・認可の詳細レビュー
|
||||
|
||||
````
|
||||
|
||||
## 分析対象ファイルの自動検出
|
||||
|
||||
### フロントエンド
|
||||
- React: `*.tsx`, `*.jsx`, `*.ts`, `*.js`
|
||||
- Vue: `*.vue`, `*.ts`, `*.js`
|
||||
- Angular: `*.component.ts`, `*.service.ts`, `*.module.ts`
|
||||
|
||||
### バックエンド
|
||||
- Node.js: `*.ts`, `*.js` (Express, NestJS等)
|
||||
- Python: `*.py` (Django, FastAPI等)
|
||||
- Java: `*.java` (Spring Boot等)
|
||||
|
||||
### データベース
|
||||
- SQL: `*.sql`, `migrations/*`
|
||||
- ORM: モデルファイル、設定ファイル
|
||||
|
||||
### 設定ファイル
|
||||
- `package.json`, `tsconfig.json`, `webpack.config.js`
|
||||
- `requirements.txt`, `Pipfile`, `pyproject.toml`
|
||||
- `pom.xml`, `build.gradle`
|
||||
|
||||
## 実行コマンド例
|
||||
|
||||
```bash
|
||||
# カレントディレクトリを分析
|
||||
claude code rev-tasks
|
||||
|
||||
# 特定ディレクトリを分析
|
||||
claude code rev-tasks --path ./backend
|
||||
|
||||
# 特定の技術スタックに絞って分析
|
||||
claude code rev-tasks --tech react,nodejs
|
||||
|
||||
# 詳細分析(テストカバレッジ等も含む)
|
||||
claude code rev-tasks --detailed
|
||||
|
||||
# 出力形式指定
|
||||
claude code rev-tasks --format json
|
||||
```
|
||||
|
||||
## 実行後の確認
|
||||
|
||||
- 発見されたタスク数と推定工数を表示
|
||||
- 実装済み/未実装の機能一覧を表示
|
||||
- 技術的負債・改善推奨事項をサマリー表示
|
||||
- 次のリバースエンジニアリングステップ(設計書生成等)を提案
|
||||
Reference in New Issue
Block a user