작은 AI 요청과 diff 검토
한 번에 검증 가능한 변경을 요청하고 범위 밖 수정을 찾아냅니다.
진도 0%
레슨
- 작업을 검증 단위로 나누기
생성·조회·완료 API를 의존성 순서와 완료 검사로 나눠 요청서를 작성합니다.
- 작은 변경을 AI에게 요청하기
허용 파일과 명세 사례를 지정해 생성 API 한 개를 구현하고 AI 사용 기록을 남깁니다.
- 많은 파일의 diff 읽기
제공된 변경에서 무관한 설정 수정과 검증 누락을 찾아 허용된 패치만 적용합니다.
- 요청에서 응답까지 설명하기
Spring MVC의 DTO·서비스·오류 응답 흐름을 테스트로 확인합니다.
작은 AI 요청과 diff 검토 미션
m03-java-bridge 미션 solution의 명세·사례·Python 참조 모델·Java 27개 검사를 이어받았습니다. 웹 의존성과 새 검사 및 고정 경계 초안이 준비되어 있으며 생성 상태 200과 고정 빈 조회의 결함을 서로 다른 요청으로 고칩니다. 실제 AI 대신 fixture 검토로도 수행할 수 있습니다.
요구사항
- 기존 TaskService·TitlePolicy·TaskRepository·Task와 Python 참조 모델 계약을 보존합니다.
- POST /tasks는 title 원형을 기존 서비스로 넘기고 201과 id·title·done JSON을 반환합니다. GET /tasks는 200과 번호 오름차순 배열을 반환합니다.
- 빈 제목·숫자·null·누락·길이 초과는 400과 기존 오류 코드, 깨진 JSON은 400·INVALID_JSON으로 연결합니다. 실패가 상태와 다음 번호를 바꾸지 않습니다.
- 생성·조회 요청을 따로 작성하고 각 단계의 테스트를 실행한 뒤 다음 단계로 넘어갑니다. 완료 API·DB·인증·포트 수정·배포는 제외합니다.
- 허용 수정은 TaskController.java, TaskApplication.java, review.md입니다. pom.xml의 spring-boot-starter-web 전환은 준비물에서 승인된 변경이며 임의 의존성 추가는 제외합니다.
- review.md에 요청, 실제 AI 응답 또는 fixture 출처, 채택·거절 diff와 근거, 본인 판단, 실행 증거·미확인을 작성합니다. 다섯 입력 경로의 흐름표도 제출합니다.
완료 기준
- 학습자 명령 ./mvnw test, 캐시 준비 환경 ./mvnw -o -q test에서 종료 코드 0을 확인합니다.
- JUnit 검사 38개(기존 27개, HTTP 9개, 보호 범위 1개, 응답 관찰 1개)가 실패·오류·건너뜀 없이 통과합니다. 관찰 기록만으로 계약 통과를 판정하지 않습니다.
- HTTP 정상 생성·초기 빈 조회·두 생성 후 순서 및 전체 JSON·빈 제목 뒤 상태와 번호 보존·숫자·누락·40 이모지·41자 초과·깨진 JSON을 검사합니다.
- python3 check_scope.py는 보호 파일 SHA-256과 허용 목록을 확인하여 SCOPE OK를 출력합니다. 승인 기준 자체와 review.md의 의미는 사람이 검토합니다.
- bash check_reference.sh로 앞 모듈 Python 참조 모델과 문서 검사를 별도 재실행할 수 있습니다. Java·HTTP 결과는 Maven 보고서로 기록합니다.
- standalone MockMvc 범위만 확인하며 실제 서버·소켓·자동 빈 구성·동시성·영속 저장·운영 배포는 미확인으로 기록합니다.
./mvnw test미션 시작 코드
모범 답안
모범 답안 내려받기검토 기준
- 요구사항과 실제 검증 근거를 연결해 설명합니다.
- 본인이 판단한 사항과 AI에 맡긴 사항을 구분합니다.
- 통과·실패·미확인 상태를 사실대로 기록합니다.