validation

3 posts

검증 스펙트럼: AI 코딩이 백엔드에서 가장 잘 작동하는 이유

AI 코딩은 검증 그레이디언트를 따른다. 백엔드는 밀리초 단위로 검증된다. 웹은 분 단위, 모바일은 시간 단위가 걸린다. 피드백 루프가 AI 코딩의 효과를 결정한다.

AI 모델이 스스로 코딩하는 것 자체는 흥미로운 부분이 아니다. 흥미로운 것은 코드를 생성한 다음에 일어나는 일이다. 모델이 코드가 올바른지 얼마나 빨리 알 수 있는가? 생성과 검증 사이의 피드백 루프가 얼마나 타이트한가? 그 루프가 모든 것을 결정한다. 모델이 자신의 출력을 스스로…

검증 계층이 비즈니스 로직보다 더 커지는 경우

수동 검증은 codebase를 부풀리고 여전히 엣지 케이스를 놓친다. 선언적 스키마로 runtime contracts를 간섭 없이 강제하는 방법을 알아본다.

API가 요청을 받을 때마다 검증한다. 함수가 외부 시스템으로부터 인자를 받을 때마다 확인한다. 이를 수동으로 하면, 단일 엔드포인트에 비즈니스 로직보다 더 많은 검증 코드가 쌓일 수 있다. 이것이 runtime contracts의 숨겨진 비용이다. 타입 시스템이 거짓말을 하기 때문에…

왜 Deep Link가 Vibe-Coded React Native 앱을 크래시시키는가 (그리고 Zod로 검증하는 법)

deep link, push payload, 공유 URL은 모두 untrusted input입니다. 잘못된 param이 screen까지 들어오기 전에 Expo Router boundary에서 검증하는 방법을 설명합니다.

Vibe-coded 앱에서 deep link bug는 대체로 지루한 input 문제에서 시작합니다. malformed user ID, 오래된 campaign URL, push payload에서 빠진 enum 값 같은 것들입니다. 그다음 앱은 그 input을 신뢰해 버리고,…