Skip to content

Verification

  • Published on
    AWS와 Rust Foundation이 주도한 verify-rust-std 캠페인의 결과 논문이 2026년 NASA Formal Methods Symposium에 실렸습니다. 저자들이 "소프트웨어 라이브러리를 대상으로 보고된 것 중 가장 큰 검증 캠페인"이라 부르는 이 작업은 자동 생성 하네스 16,748개를 만들어 11,970개를 통과시켰지만, 표준 라이브러리에서 알려지지 않은 메모리 안전성 취약점은 하나도 찾지 못했습니다. 논문은 이 널 결과를 숨기지 않고 4.4절 제목으로 내걸고, 그 이유를 러스트의 기존 테스트와 Miri 동적 분석이 이미 잘 작동하고 있기 때문이라고 설명합니다. 이 글은 그 캠페인의 실제 숫자, 검증이 아니라 랜덤 테스트가 잡아낸 유일한 코드 버그, 같은 도구(Kani)가 s2n-quic·Firecracker·Cedar·Hifitime에서는 테스트와 퍼징이 놓친 버그 11개를 찾아낸 대조군, 그리고 이 증명들이 보장하지 않는 것들(앨리어싱, 데이터 레이스, 제네릭, 종료성)을 정리합니다. 결론은 형식 검증이 만능이라는 것도, 쓸모없다는 것도 아닙니다 — 값이 어디서 나오는지가 코드베이스의 기존 테스트 성숙도에 달려 있다는 것입니다.
  • Published on
    데이터베이스 마이그레이션에서 롤백이 왜 어려운지, 그리고 되돌릴 수 있는 변경과 되돌릴 수 없는 변경을 어떻게 구분하는지 다룹니다. 백업과 복구 지점, 다단계 검증, 카나리 배포, 피처 플래그, 자동화된 데이터 검증, 인시던트 런북까지 안전망을 설계하는 실무 전략을 정리합니다.
  • Published on
    AI가 코드를 쓰는 시대에 병목은 리뷰로 옮겨갔습니다. 사람 PR을 리뷰하는 것과 에이전트 출력물을 리뷰하는 것은 다른 기술입니다. AI 코드가 특유하게 틀리는 방식, 환각 API와 의미 없는 테스트를 걸러내는 검증 루프, 타입보다 테스트보다 사람의 순서, 'AI 슬롭'의 정체와 필터링까지 — 복사해 쓸 수 있는 체크리스트와 함께 정리합니다.