add framework
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
# PRD: C#/.NET Harness
|
||||
|
||||
## 목표
|
||||
Codex Harness가 C#/.NET SDK 프로젝트에서 phase planning, TDD guard, commit validation, workspace validation을 일관되게 수행하게 한다.
|
||||
|
||||
## 기술 스택
|
||||
- C#/.NET SDK
|
||||
- `dotnet` CLI
|
||||
- Harness scripts in Python 3
|
||||
|
||||
## 사용자
|
||||
- `dotnet` CLI 기반 C#/.NET 개발자
|
||||
- Harness phase를 작성하고 실행하는 Codex agent
|
||||
- Harness 결과를 검토하는 reviewer
|
||||
|
||||
## 핵심 기능
|
||||
1. 기본 진입점은 `python scripts/validate_workspace.py`이며, `HARNESS_VALIDATION_COMMANDS`가 설정되어 있으면 자동 탐색보다 우선한다.
|
||||
2. 자동 탐색은 루트의 단일 `.sln`을 우선하고, solution이 없으면 루트의 단일 SDK-style `.csproj`를 선택한다. 동일 우선순위 대상이 여러 개면 임의 선택하지 않고 오류로 중단한다.
|
||||
3. 선택한 target에 대해 `dotnet restore <target>`, `dotnet build <target> --configuration Debug --no-restore`, `dotnet test <target> --configuration Debug --no-build --no-restore` 순서로 검증한다.
|
||||
4. PATH에 설치된 `dotnet`을 사용하며 Harness는 .NET SDK 버전이나 `global.json`을 생성하거나 고정하지 않는다.
|
||||
5. C# production `.cs` 변경에 관련 C# test file을 요구하는 엄격한 TDD guard를 제공한다.
|
||||
6. 다중 project 저장소는 루트 solution에 모든 build/test 대상을 포함해야 하며, 단일 `.csproj` fallback은 단일-project 저장소에서만 사용한다.
|
||||
7. solution/project가 아직 없으면 안내 후 성공 종료하여 Harness 자체 테스트를 허용한다.
|
||||
8. commit hook은 Python Harness self-test를 먼저 실행한 뒤 workspace validation을 실행한다.
|
||||
|
||||
## 제외 사항
|
||||
- 언어별 profile 또는 registry
|
||||
- 다른 언어 validation fallback
|
||||
- .NET SDK 버전 선택, 설치 또는 `global.json` 생성
|
||||
- C# sample application 또는 project 생성
|
||||
- 이전 FESA solver source tree 복원
|
||||
- Abaqus reference artifact 생성 또는 solver reference 비교 구현
|
||||
Reference in New Issue
Block a user