둘째, 코드가 깔고 있는 전제를 확인합니다.
• 이 코드가 정상적으로 동작하려면 어떤 조건이 필요할까?
• 그 조건은 항상 보장되는 것일까, 아니면 깨질 수 있을까?
대부분의 논리 오류는 코드가 아니라 전제에서 시작됩니다. 용이의 분배 로직은 상태를 확인한 뒤, 실제 할당되기 전까지 파드의 상태가 변하지 않는다는 전제와 동시에 여러 요청이 들어와도 같은 파드가 중복 선택되지 않는다는 전제를 암묵적으로 깔고 있었습니다. 이 전제는 로직 전체를 지탱하고 있었지만, 비동기 환경에서는 깨질 수 있었습니다. 코드 인스펙션은 바로 이런 당연하다고 믿고 넘긴 조건을 하나씩 꺼내 보는 작업입니다.