# 管理者用環境構築手順 (Admin Setup)

プロジェクト立ち上げ時に **一度だけ** 実施する作業をまとめる．既に完了した項目もチェック付きで記録しておく．

## 1. GitHub リポジトリ作成（完了済み）

- [x] `rintoHasegawa/SmTIAS-LightSim` を Private で作成
- [x] `main` ブランチを作成・初期コミット
- [x] programming-template から初回同期（`/sync-template`）
- [x] `MiniTIAS/` と `MiniTias-Evaluation/` を `.gitignore` に追加（参照用ローカルコピーのため）

## 2. uv の動作確認（完了済み）

ローカル環境で uv をインストール済みであれば次へ．未導入であれば `ENV_02_環境構築手順.md` の手順 1 を実施．

## 3. プロジェクト初期化（実装フェーズで実行）

以下はフェーズ 7（実装開始）の最初に行う．

### 3.1 pyproject.toml の生成

```powershell
uv init --package --no-readme --no-workspace
```

その後，`pyproject.toml` の依存関係を `ENV_01_技術スタック.md` の主要依存ライブラリ表に従って追記する．

例：

```powershell
uv add mitsuba numpy trimesh pillow matplotlib pandas
uv add --dev pytest ruff
```

### 3.2 Python バージョン固定

```powershell
uv python pin 3.12
```

`.python-version` ファイルが生成される．これをコミットする．

### 3.3 ロックファイルの初期生成とコミット

```powershell
uv lock
git add pyproject.toml uv.lock .python-version
git commit -m "[add] uv によるプロジェクト初期化と Mitsuba 3 依存の追加"
```

## 4. リポジトリ運用設定

### 4.1 デフォルトブランチの確認

- [x] GitHub の Settings → Branches → Default branch が `main` になっていること

### 4.2 ブランチ保護（任意）

1 人運用のため必須ではないが，誤プッシュ防止に以下を推奨：

- Settings → Branches → Add rule
- Branch name pattern: `main`
- Require a pull request before merging（チェック）
- Require approvals は無効でよい（1 人運用のため）

未設定でも開発に支障はない．

## 5. 外部サービス（任意・将来）

現時点では外部サービス連携は不要．以下は将来検討事項として残しておく：

- **CI / CD（GitHub Actions）**: pytest と ruff の自動実行．運用が安定してから導入する
- **GitHub Pages**: シミュレーション結果のレポート公開用．現状は不要

これらは管理者がコンソール操作で設定する作業のため，AI からは実施しない．

## 6. メンバー追加時の手続き

1. 新規参加者を GitHub リポジトリの Collaborator に追加（管理者の手動操作）
2. 参加者は `ENV_02_環境構築手順.md` に従って自分の環境を構築
