- CLAUDE.md with collaboration rules and Planner/Generator/Evaluator cycle - .claude/ agents, commands, skills, hooks per Claude Code conventions - Sprint Contracts for sut-prober, normalizer, recorder, player, diff-reporter - SUT catalog (EG-BIM Modeler, 187 plugins) and .gitignore excluding SUT tree - PROGRESS.md / PLAN.md as shared agent handoff state - Solution scaffold targeting sut-prober PoC Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2.4 KiB
2.4 KiB
Sprint Contract — sut-prober
Owner: Generator (일반 세션) Depends on: 없음 Issue: #2
Goal
EG-BIM Modeler SUT의 정적 구조(플러그인·설정·어셈블리)를 덤프해 docs/sut-catalog/에 베이스라인 가능한 카탈로그를 생성한다. SUT는 실행하지 않는다.
Definition of Done
dotnet run --project src/Recordingtest.SutProber실행으로 카탈로그 3종이 생성된다:plugins.json,json-configs.json,assemblies.jsonplugins.json은EG-BIM Modeler/Plugins/Eg*Plugin/187개(±) 전부를 담고, 각 항목은{ name, path, dlls[], size_bytes }형식json-configs.json은EG-BIM Modeler/Json/*.json각 파일별{ name, top_level_keys[], suspected_nondeterministic_fields[] }assemblies.json은HmEG*.dll,Editor*.dll,HmGeometry*.dll의{ name, size, has_pdb }- 출력은 정렬되어 있어 두 번 실행해도 동일 (decimal/텍스트 diff 없음)
EG-BIM Modeler/폴더에 대한 쓰기 접근이 없다 (코드 리뷰로 확인)- 경로는 repo root 상대 경로로 기록(절대 경로 금지)
Interfaces / contracts
- Inputs:
EG-BIM Modeler/(read-only), CLI 인자--sut <path>(기본EG-BIM Modeler) - Outputs:
docs/sut-catalog/plugins.json,docs/sut-catalog/json-configs.json,docs/sut-catalog/assemblies.json - Side effects: 없음 (로그 제외)
Out of scope
- SUT 실행 / 리플렉션 / 동적 분석
- PDB 파싱 (engine-bridge의 몫)
- UIA 트리 덤프 (recorder 또는 별도 PoC의 몫)
Evaluation plan
evaluator는 다음을 수행:
dotnet build성공dotnet run --project src/Recordingtest.SutProber -- --sut "EG-BIM Modeler"실행, exit code 0 확인- 세 카탈로그 파일 존재 확인 + JSON 파싱 유효성
plugins.json엔트리 수 ≥ 180- 두 번째 실행 후 세 파일
git diff결과가 비어있음을 확인 (결정성) grep -r "EG-BIM Modeler" src/Recordingtest.SutProber/결과에File.Write|File.Delete|File.Create호출 없음 확인
Risks / open questions
- .NET 버전 합의 필요 (
net8.0제안). SUT와 다를 수 있으나 prober는 독립 프로세스이므로 무관. - 플러그인 폴더 구조가 일정한지 샘플 확인 필요.
- 경로 구분자(Windows
\) 정규화 정책 — 출력에서/로 통일 권장.