Skip to content

test: PR머신 동작 검증용 스모크 테스트 - #1

Merged
claude[bot] merged 2 commits into
developfrom
test/pr-machine-smoke
Aug 10, 2026
Merged

claude[bot] merged 2 commits into
developfrom
test/pr-machine-smoke

Conversation

@vapsnamheo-dev

Copy link
Copy Markdown
Owner

PR머신(pr-machine.yml) 정상 동작 확인용 트리비얼 PR입니다. tests/test_pr_machine_smoke.py 1개 파일만 추가(assert True). sensitive/opus 경로 미해당 — sonnet 티어 + develop 자동머지 조건 충족 여부 확인 목적.

@claude claude Bot added the ai:merged-by-machine PR머신이 자동 머지 완료 label Aug 10, 2026
@claude
claude Bot merged commit 297454e into develop Aug 10, 2026
6 of 8 checks passed
@claude

claude Bot commented Aug 10, 2026

Copy link
Copy Markdown

🤖 PR 머신 — 자동 머지 완료 ✅

P1 없음 + 모든 가드 통과로 자동 머지했습니다.

이 PR은 .github/workflows/pr-machine.yml의 버그 3건(id-token: write 권한 추가, model/allowed_tools → claude_args로 마이그레이션, pytest 미설치 문제 해결)을 수정합니다. 또한 워크플로우 동작 검증을 위해 Homework/ML_FactoryAutomation/tests/test_pr_machine_smoke.py에 트리비얼 스모크 테스트(assert True)를 추가했습니다. 민감 경로(db.py/secret/credential/.env/config.py)나 opus 티어 경로에 해당하지 않아 sonnet 티어로 처리되었고, base가 develop이라 자동머지 조건을 충족합니다.

🧪 머지 전 검증 통과: pytest -q


📋 P2 개선 항목

[P2] id-token: write 권한이 실제로 필요한지 확인
파일: .github/workflows/pr-machine.yml:24
워크플로우 permissions에 id-token: write가 추가되었으나, 이를 소비하는 스텝(OIDC 기반 클라우드 로그인, 토큰 교환 등)이 워크플로우 내에 보이지 않습니다. anthropics/claude-code-action@v1이 내부적으로 OIDC를 요구하는지 확인이 필요합니다. 사용하지 않는다면 최소 권한 원칙상 제거를 권장합니다.
❓확인 요청(검증 전 수정 금지): claude-code-action@v1 문서/소스에서 id-token 사용 여부 확인. → 후속 이슈 #2

[P2] claude_args 멀티라인 인자의 인용부호 파싱 방식 확인
파일: .github/workflows/pr-machine.yml:135-137
model/allowed_tools 개별 입력이 claude_args 멀티라인 문자열(--model ... / --allowedTools "Bash(gh *),Bash(git *)")로 통합되었습니다. 액션이 이 문자열을 셸처럼 인용부호를 인식해 토큰화하지 않으면 --allowedTools 값이 공백 기준으로 잘못 분리되어(Bash(gh, *),Bash(git, *)") 툴 제한이 무력화될 수 있습니다. PR머신은 자동 머지 권한까지 가지므로, gh/git 외 임의 Bash 실행이 허용되면 보안 영향이 있습니다. 이번 리뷰 환경은 외부 네트워크가 차단되어 있어 claude-code-action 소스를 직접 확인하지 못했습니다.
❓확인 요청(검증 전 수정 금지): claude-code-action@v1의 claude_args 파싱 로직 및 실제 실행 로그에서 allowedTools 제한이 의도대로 걸리는지 확인. → 후속 이슈 #3

참고 (P3)

  • .github/workflows/pr-machine.yml:110-118 — requirements.txt 설치 루프에서 d="$f"(파일 경로 그대로)로 첫 조건(-f "$d/requirements.txt")을 검사하는데, 파일 경로는 디렉터리가 아니므로 이 첫 검사는 항상 실패하는 불필요한 반복입니다. 동작에는 영향 없음.
  • 같은 상위 디렉터리를 공유하는 변경 파일이 여러 개면 동일 requirements.txt에 대해 pip install이 중복 실행될 수 있습니다(idempotent하여 결과 영향 없음, 약간의 CI 시간 낭비).

겹침 확인

gh pr list --state open 결과 현재 열려 있는 다른 PR이 없어 파일 겹침(시맨틱 충돌) 이슈는 없습니다.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ai:merged-by-machine PR머신이 자동 머지 완료

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant