Cursor 팀이 Bugbot Rules를 사용하여 코드 검토를 자동화하는 방법 특히 고위험 데이터베이스 마이그레이션 시나리오에서 Bugbot은 수동 검토 전에 대부분의 위험한 작업을 차단할 수 있도록 하는 일련의 "철저한 규칙"을 개발했습니다. 핵심은 "Bugbot 규칙"이며, 표준화, 자동화, 그리고 레프트 시프트라는 몇 가지 키워드가 포함되어 있습니다. 🤖 Bugbot 규칙은 무엇인가요? Bugbot은 24시간 온라인 "코드 검사기"라고 생각하면 됩니다. 작동 원리는 간단합니다. 코드베이스에 규칙 파일(일반적으로 .cursor/BUGBOT.md)을 저장하고 검토 기준을 자연어로 작성하면 됩니다. 새 코드가 커밋되면 Bugbot은 이 "검사 매뉴얼"과 비교하여 자동으로 코드를 검사합니다. 위반 사항이 발견되면 즉시 해당 코드 줄에 주석을 달거나 경고를 표시합니다. 🛡️ 핵심 실무 응용 프로그램: 데이터베이스 마이그레이션을 위한 "재해 예방 가이드" Cursor 팀은 데이터베이스 사고 방지를 위한 구체적인 내부 규칙을 공유했습니다. 해당 규칙에 따라 Bugbot은 다음 기준을 엄격히 준수해야 합니다. 1. 허용된 작업(조건 있음) 새 테이블 또는 열 추가: 허용됩니다. 단, 새로 추가된 열은 이전 코드에서 데이터를 쓸 때 발생하는 오류를 방지하기 위해 "null 허용"으로 설정하거나 "기본값"을 가져야 합니다. 2. 인덱스 생성에는 극도의 주의가 필요합니다. 이는 고위험 작업입니다. 규칙은 인덱스 생성 중 전체 테이블이 잠기는 것을 방지하기 위해 `CONCURRENTLY` 키워드를 사용하도록 규정하고 있으며, 이로 인해 비즈니스 중단이 발생할 수 있습니다. 또한, 인덱스 생성은 별도의 마이그레이션 파일에서 수행해야 합니다. 3. 엄격히 금지된 작업: 열 삭제, 테이블 삭제, 열 이름 변경 또는 열의 데이터 유형 변경은 엄격히 금지됩니다. 이러한 작업을 수행하면 이전 버전의 코드가 즉시 충돌합니다. 외래 키 제약 조건: 새 테이블에서는 외래 키를 사용할 수 없습니다. Cursor 팀은 잠재적인 성능 병목 현상을 방지하기 위해 데이터베이스 외래 키 제약 조건에 의존하기보다는 애플리케이션 코드 수준에서 데이터 관계를 처리할 것을 권장합니다. • 복잡한 쿼리: 주 데이터베이스에서는 전체 테이블 스캔, JOIN 또는 GROUP BY 연산이 금지됩니다. 이러한 연산은 데이터베이스 리소스를 쉽게 고갈시킬 수 있으므로 애플리케이션 계층에서 데이터 어셈블리를 수행하는 것이 좋습니다. 4. 필드 유형 선택을 위한 권장 모범 사례: INTEGER 대신 BIGINT를 사용하고, VARCHAR 대신 TEXT를 사용하는 것이 좋습니다. 🚀 확장된 애플리케이션: 데이터베이스를 넘어 Bugbot의 규칙은 데이터베이스 보안 외에도 다양한 일상적인 개발 시나리오에 적용할 수 있어 팀이 깔끔하고 표준화된 코드를 유지하는 데 도움이 됩니다. • 코드 정리 관리: Bugbot에 "TODO 또는 FIXME 주석이 표시되면 특정 이슈 번호와 관련이 있는지 확인해야 합니다."라고 지시할 수 있습니다. 그렇지 않은 경우, Bugbot은 개발자에게 추적 번호를 추가하거나 주석을 삭제하도록 알리는 메시지를 자동으로 남겨 코드베이스에 "좀비 작업"이 대량으로 쌓이는 것을 방지합니다. • 보안 및 명명 규칙: 잠재적으로 유출된 키를 차단하는 규칙을 설정하거나 특정 기능과 이벤트 추적이 팀의 명명 규칙을 준수하도록 적용할 수 있습니다. 원본 텍스트를 읽어보세요
스레드를 불러오는 중
깔끔한 읽기 화면을 위해 X에서 원본 트윗을 가져오고 있어요.
보통 몇 초면 완료되니 잠시만 기다려 주세요.
