콘텐츠로 이동

11. 마무리

터미널 창
git log -1 --oneline && git status --short

10단계의 수정 커밋(fix: 글자 수 계산 회귀 수정)이 보이고, 둘째 명령은 아무것도 찍지 않아야 합니다. 아니면 10. 버그픽스로 돌아갑니다.

커밋 분리, 핸드오프, 기록표 회고, 선택으로 아티팩트 순서로 마무리합니다. 커밋을 관심사별로 나누는 절차는 Refactoring, 세션을 넘길지 남길지의 판단은 /clear와 /compact, 회수 가능한 기록을 남기는 원칙은 Memory가 다룹니다.

  1. HEAD가 10단계 수정 커밋이고 함수 수정과 테스트 복원이 함께 섞여 있으면 둘로 나눕니다. 이미 기록 전용 커밋이 HEAD에 있다면 이 연습은 생략하고 현재 커밋 구성을 검토하는 것으로 대신합니다. 실제 버그 경로를 택해 분리할 변경이 없다면 이 절차 전체를 생략합니다. 원격에 아직 공개되지 않았는지와 작업 트리가 깨끗한지 먼저 확인합니다. 그다음 분리 전 SHA를 남깁니다.
터미널 창
git status --short # 비어 있어야 합니다
git branch -r --contains HEAD # 아무것도 안 나와야 합니다
tutorial_before_split=$(git rev-parse HEAD)
git reset --mixed HEAD~1
git add src/countChars.ts && git commit -m "fix: 이모지를 한 글자로 세도록 복원"
git add -A && git commit -m "test: 주입 커밋에서 바뀐 기대값 복원"
git diff --exit-code "$tutorial_before_split" HEAD # 분리 전후 내용이 같으면 출력 없이 exit 0

한 파일 안에 관심사가 섞여 있으면 hunk 단위 분리를 Refactoring에서 그대로 따릅니다.

  1. 핸드오프 문서를 씁니다. 프롬프트는 활용 팁의 것을 그대로 씁니다. “시도했다가 접은 접근” 절에는 5단계에서 적용하지 않은 지적과 8단계에서 기각한 지적이 있으면 채웁니다. 기각한 지적이 없었다면 없다고 적고 사례를 지어내지 않습니다.

  2. 기록표 회고입니다. docs/tutorial-log.md의 모든 행을 나란히 놓고 다음 세 가지를 비교하십시오.

    • 탐색 세션인 2단계와 구현 세션인 4단계의 사용률을 비교합니다.
    • 서브에이전트를 쓴 8단계와 쓰지 않은 단계의 본 세션 사용률을 비교합니다.
    • 세션을 넘긴 횟수와, 세션별 차액을 합산한 단계 비용을 비교합니다.

    세션 경계가 서로 다른 단계의 컨텍스트 사용률을 곧바로 효율 차이로 읽지 않습니다. 무엇이 보였는지 메모 열에 한 줄씩 남깁니다.

  3. 선택입니다. 기록표를 라이브 아티팩트로 만듭니다. 게시하기 전에 /security-review로 변경분을 한 번 점검하고, 보안의 원칙대로 사람이 내용을 확인합니다.

docs/tutorial-log.md 를 표로 보여 주는 아티팩트를 만들어 주세요.
  1. 최종 게이트를 돌립니다.
터미널 창
npm run lint && npm test && npm run build && npm run e2e; echo "exit=$?"
  1. 끝 비용과 컨텍스트 사용률을 읽어 docs/tutorial-log.md의 “11. 마무리” 행에 적습니다. 표와 핸드오프를 함께 커밋합니다. git add -A가 기록표를 함께 담습니다.
터미널 창
git add -A && git commit -m "docs: 튜토리얼 기록표와 핸드오프"
터미널 창
git log --oneline -4
ls docs/handoff/
git status --short

커밋이 fix, test, docs로 관심사별로 읽히고, docs/handoff/ 아래 파일이 하나 있고, 마지막 명령이 아무것도 찍지 않으면 완주입니다. 기록표의 모든 행이 채워져 있어야 합니다.

값은 6번에서 이미 적었습니다. 시작 상태를 확인한 직후 시작 비용을, 커밋 직전에 끝 비용과 컨텍스트 사용률을 각각 적고 차액으로 읽습니다. 세션 수는 이 단계에서 연 세션 개수입니다.

  • reset --mixed 후에도 hunk가 섞여 있으면 Refactoring의 awk 분리 절차를 따릅니다.
  • 핸드오프에 파일 목록을 쓰고 있으면 지웁니다. 파일 목록은 git이 이미 갖고 있습니다. /clear와 /compact의 템플릿을 확인합니다.