-
-
Notifications
You must be signed in to change notification settings - Fork 0
Closed
Description
背景 / 目的
Copilot や自動エージェントが参照する仕様が散在しており、実装・レビュー品質にばらつきがある。
本 Issue では、.github/copilot/ 以下に「行動規範・仕様・設計・品質ゲート」を一元管理し、
二層構造 + 2段階ループ + 品質ゲート による高再現性の開発フローを確立する。
スコープ定義
In Scope
.github/copilot/以下の全 Markdown ファイル構成と内容定義.github/copilot-instructions.mdの設計・内容確定80-templates/配下テンプレート群の標準化- CI品質ゲート (
60-ci-quality-gates.md) の定義
Out of Scope
- CI/CD 実装(ジョブスクリプト実装は別Issue)
- 既存リポジトリコードのリファクタリング
- Copilot 設定ファイル (
.copilot/config.yml) の微調整
仕様概要
二層構造
- 層1: 規範層(copilot-instructions.md)
行動・出力・禁止事項・Done定義を短く固定。 - 層2: 仕様層(copilot/*.md)
プロダクト要件・設計・品質・テスト・セキュリティ等を分離記述。
開発ループ
- Phase A(設計固定):
implementation-plan.md で仕様とテスト方針を明文化。 - Phase B(実装→ゲート通過):
CI により静的解析・型チェック・テスト・セキュリティを自動検証。
ディレクトリ構成
.github/
├── copilot-instructions.md
└── copilot/
├── 00-index.md
├── 10-requirements.md
├── 20-architecture.md
├── 30-coding-standards.md
├── 40-testing-strategy.md
├── 50-security.md
├── 60-ci-quality-gates.md
├── 70-adr/
│ └── ADR-0001-template.md
└── 80-templates/
├── implementation-plan.md
├── pr-checklist.md
└── code-review-checklist.md
フロー図(Mermaid)
flowchart TD
A["Copilot Agent"] --> B["設計出力 (implementation-plan.md)"]
B --> C["人間レビュー(設計)"]
C --> D["実装"]
D --> E["CI品質ゲート (lint/test/security)"]
E -->|Pass| F["PRマージ"]
E -->|Fail| G["修正・再実行"]
非機能要件
- 再現性: 同一仕様から同一成果物を出力できること
- 自動化: CI により全品質ゲートを通過しない限りマージ不可
- セキュリティ: Secrets や個人情報をログ出力禁止
- 拡張性: 各仕様ファイルを個別に改訂可能(互換性維持)
受け入れ条件
-
.github/copilot-instructions.mdが完成し、Copilot に認識される -
10-60各仕様ファイルに最小構成が定義されている -
80-templates/implementation-plan.mdが設計出力に利用されている - CI が lint/test/security を実行し、失敗時はマージ不可となる
タスク分解
-
.github/copilot-instructions.md作成 -
00-index.mdに全リンク作成 -
10-60各仕様ファイルの初期版作成 -
80-templatesテンプレート整備 - CIジョブ定義との紐付け(mode: draft)
リスク・影響範囲
| リスク | 影響 | 対策 |
|---|---|---|
| 各mdの重複・不整合 | 仕様の信頼性低下 | index.md に参照順序を明記 |
| CI未整備 | 品質ゲートが機能しない | makefile統一・GitHub Actions定義 |
| 曖昧なルール | Copilot出力の再現性低下 | copilot-instructions.md に強制記述 |
未確定事項
| 項目 | 状態 | 決定方針 |
|---|---|---|
| CI 実行基盤(GitHub Actions / CircleCI) | Undetermined | チーム運用基盤に合わせて選定 |
| 既存仕様との統合方針 | Undetermined | .github 下統一方針を別Issueで定義 |
| ADR命名ルール | Undetermined | ADR-YYYYMMDD-タイトル.md形式を検討 |
参考情報
- GitHub Copilot Docs
- ADR template best practices
- 内部設計資料(Undetermined)
完成度ゲート
- 実装可能な粒度で仕様記述あり
- テスト可能な受入条件あり
- 例外/失敗時フローを明示
- 秘密情報の扱い方針あり
- Mermaidによるフロー可視化
- Undetermined項目に決定方針記載
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels