ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 줄 번호 대보라니까, 스무 개 중에 한 개도 못 대더라고요
    AI Agent 2026. 6. 25. 21:00
    728x90
    반응형

    밤 11시쯤이었어요.
    AI가 화면 하나 고치는 코드를 다섯 묶음 써놨고, 저는 그걸 바로 안 넘기고 다른 검토자한테 딱 한 가지만 시켰어요.
    "이 코드가 가져다 쓰는 칸 이름들, 실제 정의를 어디 몇 번째 줄에서 읽었는지 줄 번호로 대라."

    답이 안 나왔어요.

    한 개도요.
    후보로 올라온 이름이 스무 개 가까이 됐는데, 그중에 정의가 어디 있는지 짝지을 수 있는 게 0개였어요.
    손이 좀 서늘해지더라고요.

    게으른 게 아니라, 댈 게 없는 거였어요

    처음엔 검토자가 일을 대충 한 줄 알았어요.
    다시 시켰어요.
    천천히, 한 줄씩, 이름마다 정의 위치를 짝지어 오라고요.
    그래도 똑같았어요.
    스무 개 중에 0개.
    그제야 검토자가 게으른 게 아니라, 애초에 댈 게 없는 거라는 걸 알았어요.
    그 이름들이 실제로 어디에도 없었으니까요.

    상황은 이랬어요.
    화면 하나를 고치려면 그 화면이 쓰는 데이터에 어떤 칸들이 있는지를 알아야 하거든요.
    AI한테 먼저 "관련 파일 어디 있는지 찾아와" 시켰고, 그건 정확히 찾아왔어요.
    위치는 다 맞았어요.
    문제는 그다음이었어요.
    정작 그 파일을 펼쳐서 칸 이름이 진짜로 뭐라고 적혀 있는지는, 아무도 안 읽었어요.

    AI는 그 빈자리를 "이런 화면이면 칸 이름이 보통 이렇잖아"로 채웠어요.
    안 읽고요.
    자주 보던 모양으로 그냥 메운 거예요.
    예를 들면 userDisplayLabel 같은 이름이었어요.
    딱 봐도 어느 화면에나 있을 법한, 너무 평범해서 의심도 안 드는 철자.
    근데 실제 목록에 있던 건 userLabel이었어요.
    가운데 단어 하나 더 끼워 넣었을 뿐인데, AI가 적은 그 철자 그대로는 어디에도 없는 거예요.
    그게 진짜 그럴듯했어요.
    비슷한 코드는 어디나 비슷하게 생겼으니까, 지어낸 이름도 딱 그 관습에 맞았거든요.
    그래서 더 안 걸렸고요.

    컴파일은 통과했어요 — 이름 모양만 보니까

    그래서 컴파일은 멀쩡히 통과했어요.
    이게 좀 무서운 지점인데, 컴파일러는 이름 모양만 봐요.
    영어 단어로 그럴듯하게 생겼으면, 그게 진짜 있는 칸인지 아닌지는 안 따져요.
    "모양 맞네" 하고 지나가요.
    그러니까 화면엔 빨간 줄 하나 안 떴어요.
    다섯 묶음 다 멀쩡해 보였어요.

    빨강을 본 건 컴파일하는 순간이 아니었어요.
    검토자가 코드 속 이름들을 하나씩, 실제로 존재하는 이름 목록이랑 대조하는 그 단계에서였어요.
    컴파일은 멀쩡히 됐는데, 진짜 목록이랑 대보는 순간 다섯 묶음이 한꺼번에 빨강으로 뒤집혔어요.
    한 박자, 아니 몇 박자 늦게요.

    이게 진짜 골치 아픈 건 그 늦는 박자였어요.
    만약 줄 번호를 안 시키고 그냥 사람한테 넘겼으면, 받은 사람이 한참 뒤에 빨간 에러를 보고 나서야 "이 칸 이름 어디서 났냐"고 거꾸로 캐고 있었을 거예요.
    어디서부터 지어낸 건지 역추적하는 시간에, 다시 짜는 시간까지 덤이고요.
    컴파일이 통과해줬다는 게 오히려 함정이었어요.
    통과해버려서, 누구도 그 자리에서 멈추질 않으니까요.

    한 번 더 시키면, 자기 추측을 또 들려줬어요

    처음엔 그냥 검토를 한 번 더 시키면 될 줄 알았어요.
    근데 "이 코드 괜찮아?"라고 물으면 AI는 또 "괜찮습니다" 해요.
    자기가 지어낸 걸 자기가 검토하니까, 같은 빈자리를 또 같은 추측으로 메워요.
    검토라기보단 자기 확신을 한 번 더 들려주는 쪽에 가까웠어요.

    그래서 칭찬을 아예 금지하고 한 가지만 시켰어요.
    "코드에 나오는 칸 이름마다, 실제 정의가 어디 몇 번째 줄에 있는지 짝지어 와라.
    못 짝지으면 그건 지어낸 거다." 줄 번호라는 게 셌던 건, 그게 추측으로는 못 만들어내는 증거라서예요.
    "괜찮습니다"는 안 읽고도 할 수 있는데, "47번째 줄에 있어요"는 실제로 펼쳐서 읽지 않으면 댈 수가 없거든요.
    짝이 안 맞으면 그 자리에서 들통나고요.
    (솔직히 이거 AI한테만 해당되는 얘기도 아닌 것 같아요.
    저도 제 코드는 제가 본 만큼만 의심하니까요.)

    아직 못 찾은 건, 그 자신감의 출처예요

    근데 아직도 잘 모르겠는 게 하나 있어요.
    AI가 그 순간 망설임이 0이었을까요.
    스무 개 가까운 이름을 지어내면서, "이 중에 몇 개는 직접 못 봤어요" 한 줄을 안 붙였어요.
    모른다고 하면 될 걸, 굳이 멀쩡한 이름을 스무 개 가까이 채워서 아무렇지 않게 내밀었거든요.
    그 자신감이 어디서 오는진 저도 아직 못 찾았어요.

    당장은 그래서, 인터페이스에 맞춰 코드를 쓰라고 시키기 전에 한 줄을 먼저 박아요.
    "그 칸 이름이 실제로 어디 몇 번째 줄에 적혀 있는지부터 가져와." 줄 번호를 못 대면 거기서 멈추고요.
    내일도 그 줄부터 적을 거예요.

    728x90
    반응형
Designed by Tistory.