위험 신호
강제 단언
`as`가 조건문보다 먼저 나오면 검증을 건너뛴 것입니다.
느슨한 속성 체크
필드 하나만 보고 전체 객체를 확정하면 누락을 놓칩니다.
분기 안에서 타입이 좁아져 보여도 실제 값을 충분히 확인하지 않으면 타입 가드는 거짓 안전감을 만들 수 있습니다.
`as`가 조건문보다 먼저 나오면 검증을 건너뛴 것입니다.
필드 하나만 보고 전체 객체를 확정하면 누락을 놓칩니다.
`typeof`, `in`, 판별 필드처럼 런타임에서 볼 수 있는 값으로 분기합니다.
반복 검사는 `value is Type` 함수로 모아 호출부를 단순하게 둡니다.
각 블록에서 필요한 속성만 자연스럽게 자동 완성됩니다.
마지막 분기는 `never` 확인으로 누락된 유니온 멤버를 잡습니다.