# 2026-04-07 이슈 #2 — 병렬 스캐폴드 + Sprint Contracts 일괄 - **이슈**: kimminsung/recordingtest#2 - **소요 시간**: ~20분 - **Context 사용량**: ~130k tokens ## 작업 내용 "병렬화 가능한 부분 병렬 구현" 요청에 따라, 독립 파일들을 한 세션에서 병렬 Write로 일괄 생성. ### 부트스트랩 문서 - `PROGRESS.md` — 공유 상태 파일 확장 (Done/In progress/Blocked/Scaffolding review) - `PLAN.md` — P0~P3 우선순위 큐 + 작업 규칙 ### Sprint Contracts (5건) `docs/contracts/` 하위: - `sut-prober.md` — 187개 플러그인 카탈로그 + json-configs + assemblies 덤프 - `normalizer.md` — 기본 프로파일 5규칙, idempotent - `recorder.md` — element-aware 입력 캡처, IME·마스킹 포함 - `player.md` — 10회 중 9회 성공, 고정 sleep 금지 - `diff-reporter.md` — JSON/텍스트 의미 diff, triager 연동 각 contract는 planner 에이전트 규격(Goal / DoD / Interfaces / Out of scope / Evaluation plan / Risks)을 준수하며, DoD 항목은 모두 객관적으로 검증 가능. ### SUT 카탈로그 v0 - `docs/sut-catalog/catalog.md` — 어셈블리·UI스택·Json 설정·저장 포맷·영향 요약 - `docs/sut-catalog/plugins.md` — 187개 플러그인 전체 목록 (사전순) ### 솔루션 스캐폴드 (sut-prober PoC) - `recordingtest.sln` - `Directory.Build.props` (net8.0, nullable, warnings-as-errors) - `src/Recordingtest.SutProber/` 4개 파일: - `Recordingtest.SutProber.csproj` - `Program.cs` — CLI 진입, `--sut`/`--out` 인자 - `PluginScanner.cs` — 정렬된 플러그인 엔트리 스캔 - `JsonConfigScanner.cs` — Json/*.json top-level 키 + 의심 필드 휴리스틱 - `AssemblyScanner.cs` — HmEG*/Editor*/HmGeometry* 어셈블리 + PDB 존재 **주의**: sut-prober 구현은 contract를 **선제적으로 맞추지는 않음** — 빌드·실행·evaluator 검증은 별도 Generator 세션의 몫. 현재는 컴파일 가능한 뼈대 수준. ## 병렬화 전략 - 파일 간 의존성 0인 것들만 병렬 Write - Edit는 기존 파일 의존 → 순차 처리 - 에이전트 스폰 대신 단일 세션 다중 도구 호출로 context 오버헤드 최소화 ## 다음 단계 1. **Generator 세션**에서 sut-prober 빌드/실행 → 카탈로그 산출물 생성 2. **Evaluator 세션**에서 `/evaluate sut-prober` → contract DoD 채점 3. pass 시 PROGRESS.md → PLAN.md 제거 → P1 항목 착수