diff --git a/CLAUDE.md b/CLAUDE.md index 0ed9f39..ceb2af4 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -181,3 +181,13 @@ - `events.ts` に型本体を置かない(再公開専用を維持する) 詳細: `docs/01_GUIDE/GUIDE_05_プロトコル追加手順.txt` + +--- + +## 6. ディレクトリ構造ドキュメントの更新 (ENV_02) + +ファイル・ディレクトリの**追加・削除・移動**を行った場合は,`docs/02_ENV/ENV_02_ディレクトリ構造.txt` を合わせて更新すること. + +- 対象: `apps/client/src`,`apps/server/src`,`packages/shared/src` 配下の変更 +- 既存の記載粒度(代表的なファイル・フォルダのみ)に合わせて追記・修正する +- ファイル単体の追加でも,同階層に未記載のディレクトリが生じた場合は追記する diff --git "a/docs/02_ENV/ENV_02_\343\203\207\343\202\243\343\203\254\343\202\257\343\203\210\343\203\252\346\247\213\351\200\240.txt" "b/docs/02_ENV/ENV_02_\343\203\207\343\202\243\343\203\254\343\202\257\343\203\210\343\203\252\346\247\213\351\200\240.txt" index 39991ec..972528f 100644 --- "a/docs/02_ENV/ENV_02_\343\203\207\343\202\243\343\203\254\343\202\257\343\203\210\343\203\252\346\247\213\351\200\240.txt" +++ "b/docs/02_ENV/ENV_02_\343\203\207\343\202\243\343\203\254\343\202\257\343\203\210\343\203\252\346\247\213\351\200\240.txt" @@ -61,6 +61,7 @@ │ ├── input/ │ │ ├── GameInputOverlay.tsx # 入力オーバーレイ │ │ ├── bomb/ # 爆弾ボタンUI + │ │ ├── hooks/ # 入力共通フック │ │ ├── minimap/ # ミニマップUI │ │ ├── joystick/ │ │ │ ├── common/ # スティック定数・型 @@ -113,11 +114,13 @@ │ │ │ ├── ports/ │ │ │ │ └── gameUseCasePorts.ts # ユースケース入出力境界 │ │ │ ├── services/ - │ │ │ │ ├── GameSessionLifecycleService.ts # セッション管理 - │ │ │ │ ├── GamePlayerOperationService.ts # プレイヤー操作 - │ │ │ │ ├── TeamAssignmentService.ts # チーム割当 - │ │ │ │ ├── gameResultCalculator.ts # 結果算出 - │ │ │ │ └── bot/ # Bot AIシステム + │ │ │ │ ├── GameSessionLifecycleService.ts # セッション管理 + │ │ │ │ ├── GamePlayerOperationService.ts # プレイヤー操作 + │ │ │ │ ├── GameRoomSession.ts # ルームセッション + │ │ │ │ ├── TeamAssignmentService.ts # チーム割当 + │ │ │ │ ├── currentPlayersBootstrapBuilder.ts # 初期プレイヤー構築 + │ │ │ │ ├── gameResultCalculator.ts # 結果算出 + │ │ │ │ └── bot/ # Bot AIシステム │ │ │ └── useCases/ # ゲームユースケース │ │ ├── entities/ │ │ │ ├── bomb/ # 爆弾エンティティ @@ -139,13 +142,30 @@ └── network/ ├── SocketManager.ts # WS接続管理 ├── adapters/ - │ └── socketEmitters.ts # 送信アダプタ + │ ├── socketEmitters.ts # 送信アダプタ + │ ├── gamePayloadSanitizers.ts # ゲームペイロード検証・整形 + │ └── realtimeRoomSyncState.ts # リアルタイムルーム同期状態 ├── handlers/ │ ├── CommonHandler.ts # 共通WSハンドラ + │ ├── connectionEventLogger.ts # 接続イベントログ + │ ├── createOutputAdapters.ts # 出力アダプタ生成 + │ ├── eventDefinitionRegistrar.ts # イベント定義登録 + │ ├── orchestratorEventLogger.ts # オーケストレータログ + │ ├── payloadGuard.ts # ペイロードガード + │ ├── registerConnectionHandlers.ts # 接続ハンドラ登録 + │ ├── socketEventBridge.ts # イベントブリッジ + │ ├── registration/ # 接続登録コンテキスト │ ├── game/ - │ │ └── registerGameHandlers.ts # ゲーム受信イベント配線 + │ │ ├── registerGameHandlers.ts # ゲーム受信イベント配線 + │ │ ├── createGameOutputAdapter.ts # ゲーム出力アダプタ生成 + │ │ ├── gameEventOrchestrators.ts # ゲームイベントオーケストレータ + │ │ ├── aoi/ # 視認範囲フィルタ処理 + │ │ ├── runtime/ # ゲームランタイム解決 + │ │ └── services/ # ゲーム同期サービス群 │ └── room/ - │ └── registerRoomHandlers.ts # ルーム受信イベント配線 + │ ├── registerRoomHandlers.ts # ルーム受信イベント配線 + │ ├── createRoomOutputAdapter.ts # ルーム出力アダプタ生成 + │ └── roomEventOrchestrators.ts # ルームイベントオーケストレータ ├── bootstrap/ │ ├── boot.ts # 起動配線 │ ├── createHttpServer.ts # HTTP生成 @@ -178,12 +198,14 @@ │ │ └── app.type.ts # アプリ型 │ ├── game/ │ │ ├── aoi/ # 視認範囲 (Area of Interest) - │ │ ├── bombHit/ # 爆弾判定ロジック + │ │ ├── bombHit/ # 爆弾判定ロジック・型 │ │ ├── gridMap/ │ │ │ ├── gridMap.logic.ts # マップ計算 - │ │ │ └── gridMap.type.ts # マップ型定義 + │ │ │ ├── gridMap.type.ts # マップ型定義 + │ │ │ └── groupedCellUpdates.ts # セル更新グループ化 │ │ ├── player/ - │ │ │ └── player.type.ts # プレイヤー型 + │ │ │ ├── player.type.ts # プレイヤー型 + │ │ │ └── moveSync.ts # 移動同期ロジック │ │ └── tick/ # ティックシステム │ └── room/ │ ├── room.const.ts # ルーム定数