fix: validate Strix PR metadata before scanning - #203
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
💤 Files with no reviewable changes (2)
📝 WalkthroughWalkthroughAdds SHA-format validation and safer git rev-parse checks for PR base/head handling and PR-head blob copying; extends Strix report parsing to extract file paths inside XML ChangesPR SHA validation & PR-head gating
Strix XML file-path extraction
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
|
검증 증거:
|
1 similar comment
Greptile SummaryPR #203은 Strix quick-gate의 두 가지 독립적인 보완 작업을 묶은 변경입니다: XML
Confidence Score: 5/5CI 판정 로직과 테스트만 수정하며 런타임 앱·DB·API에 영향 없음 — 병합 안전 SHA 검증은 ^[0-9a-fA-F]{40,64}$ 앵커 정규식으로 완결되어 주입 벡터를 닫고, XML 경로 정규식은 [^\s<`│]+ 제외 클래스로 태그 경계를 안전하게 처리합니다. pull_request_target 이벤트에서 악의적인 SHA가 들어올 경우 Strix 호출 없이 종료 코드 2로 실패 폐쇄됨을 신규 테스트가 직접 검증합니다. 변경 범위가 CI 스크립트 두 파일에 한정되어 있으며 기존 동작을 훼손하는 부분이 없습니다. 특별히 주의가 필요한 파일 없음 Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[load_changed_files_from_pull_request] --> B{base_sha / head_sha 비어있음?}
B -- "예 + pull_request_target" --> ERR1[ERROR: metadata unavailable\nreturn 2]
B -- "예 + 일반 PR" --> R1[return 1]
B -- 아니오 --> C{is_valid_git_commit_sha base_sha?}
C -- "실패 + pull_request_target" --> ERR2[invalid_pull_request_sha base\nreturn 2]
C -- "실패 + 일반 PR" --> R2[return 1]
C -- 성공 --> D{is_valid_git_commit_sha head_sha?}
D -- "실패 + pull_request_target" --> ERR3[invalid_pull_request_sha head\nreturn 2]
D -- "실패 + 일반 PR" --> R3[return 1]
D -- 성공 --> E{git rev-parse base^commit}
E -- 실패 --> ERR4[ERROR: base commit not found\nreturn 2 / return 1]
E -- 성공 --> F{git rev-parse head^commit}
F -- 실패 --> ERR5[ERROR: head commit not found\nreturn 2 / return 1]
F -- 성공 --> G[git diff --name-only base...head --]
G --> H[CHANGED_FILES 구축 완료\nreturn 0]
Reviews (3): Last reviewed commit: "test: clarify Strix XML fixture" | Re-trigger Greptile |
|
추가 Strix 후속 조치:
|
1 similar comment
|
PR governance metadata gate is not ready for
|
1 similar comment
|
PR governance metadata gate is not ready for
|
|
PR governance metadata gate is not ready for
|
|
Current-head merge gate evidence for
Next action: provide a quota-enabled GPT-5.4+ OpenAI credential or make an OpenAI GPT-5.4+ model available through GitHub Models, then rerun |
|
Temporary merge-gate adjustment requested by repository owner on 2026-05-27 UTC:
This is a temporary rollback-bound gate adjustment, not a scanner suppression in workflow code. |
Summary
master.<file>mapping behavior frommasterinstead of reintroducing stale parser code.Verification
git diff --checktimeout 600 bash scripts/ci/test_strix_quick_gate.shGate note
Current Strix runs may still fail before findings because the repository Strix OpenAI credential is returning quota errors. That is tracked separately on current PR comments and is not a code finding from this branch.
Summary by CodeRabbit
Tests
Chores
Bug Fixes