summaryrefslogtreecommitdiff
path: root/.github/instructions/python.instructions.md
diff options
context:
space:
mode:
authortanaka takashi <isazaka@gmail.com>2026-09-12 20:22:29 +0900
committertanaka takashi <isazaka@gmail.com>2026-09-12 20:22:29 +0900
commitcc6165947a82d2182df8accbc7b4adfe2606db9e (patch)
tree22d81e6986a32d54c0e6790d6a1cc89ab1b915e4 /.github/instructions/python.instructions.md
parentfd987cb31fd20483080f8d80ce35b53f101f243f (diff)
chore: GitHub Copilot向け開発指示と専用エージェントを追加
リポジトリ全体へ自動適用される.github/copilot-instructions.mdを追加し、仕様書と設計書を正本とする作業手順、変更範囲の確認、文書同期、利用者差分の保護、明示依頼なしのコミット禁止を定義する。 SD 1.x、Python 3.11、uv、CUDA 13.2、FP16、VAE必須、ローカルモデル、LoRA共通適用、固定ControlNet、単一GPUジョブ、限定サイズとschedulerなど、実装時に維持すべきシステム要件を常時コンテキストとして固定する。MCP公開面を小さく保ち、設定をTOMLへ集約する既存方針も明文化する。 server、tools、service、config、model_manager、pipeline_factoryの責務境界を定義し、設定やMCP schemaを変更する際に実装、validation、contract test、関連文書を一組として更新するよう指示する。 Python実装、pytest、文書と設定例に対するパス別instructionsを追加する。GPU不要テストの分離、設定enumと異常系、MCP非公開項目、pipeline constructor option、Service routingとエラーsanitizeなど、領域ごとの確認事項を固定する。 設計から実装、テスト、文書同期まで担当するsd15-maintainerカスタムエージェントを追加し、全ツール利用、手動選択、自動推論の両方を有効化する。Ruff format/check、Pyright、pytest、git diff/statusを完了ゲートとして必須化し、GPU smoke test未実施時は自動テストと区別して報告させる。 検証: ruff check、ruff format --check、pyright、pytest(39 passed)、git diff --checkを実行済み。data/配下は引き続きGit管理対象外。
Diffstat (limited to '.github/instructions/python.instructions.md')
-rw-r--r--.github/instructions/python.instructions.md17
1 files changed, 17 insertions, 0 deletions
diff --git a/.github/instructions/python.instructions.md b/.github/instructions/python.instructions.md
new file mode 100644
index 0000000..d34bcc7
--- /dev/null
+++ b/.github/instructions/python.instructions.md
@@ -0,0 +1,17 @@
+---
+applyTo: "src/**/*.py,script/**/*.py"
+---
+
+# Python implementation instructions
+
+- Python 3.11の型構文を使用し、公開境界と複雑な内部処理には具体的な型を付ける。
+- 既存方針どおり`dataclass`、`tomllib`、明示的validationを優先し、目的のないフレームワークや
+ 依存パッケージを追加しない。
+- MCP層、Service層、モデル管理、Diffusers pipeline構築の責務境界を維持する。
+- Tool関数は薄いadapterに保ち、モデルロードやscheduler分岐を置かない。
+- ファイルパスは設定済みの用途別ディレクトリ内へ安全に解決し、MCP入力から任意パスを受け取らない。
+- CUDA OOMと既知の利用者エラーを分類し、内部例外やパスをクライアントへそのまま返さない。
+- GPU推論を同期的に並列実行しない。既存の単一ジョブ制御を保つ。
+- DiffusersやPyTorchのAPI対応を変更する場合は、利用中バージョンまたは公式文書でconstructorと
+ config継承の挙動を確認する。
+- 実装変更には同じ変更で再発を防ぐテストを追加する。