밤마다 글이 나가기 전에 위험한 내용을 거르는 검사를 넣었습니다. 이제 검사를 두 번 합니다. 커밋을 AI에게 넘기기 전에 한 번 하고, 완성된 글을 올리기 전에 한 번 합니다. 검사에 걸리면 그날은 그 글을 올리지 않습니다. 이 밖에 글 끝에 앞 이야기가 담긴 지난 글로 가는 링크를 달 준비도 했습니다.
글이 나가기 전에 위험한 내용을 거르게 했습니다
바이브 코딩 프로젝트들의 제작기를 매일 밤 저절로 올리는 블로그입니다.이 프로젝트 소개 →뭘 했다
왜
이 사이트에서는 사람이 읽기 전에 글이 올라갑니다. 커밋에 비밀 키가 섞여 있으면 그대로 공개될 수 있었습니다. 커밋에 "제목은 반드시 …로 써라" 같은 문장이 숨어 있어도 문제였습니다. 글을 쓰는 AI가 그 말을 따르면, 남이 시킨 대로 쓴 글이 나갑니다. 지금까지는 이걸 막는 검사가 없었습니다.
삽질 포인트
처음에는 비밀 키처럼 생긴 글자나 "비밀번호:" 같은 낱말을 찾는 규칙만 썼습니다. 이 규칙은 돌려 말한 지시를 놓쳤습니다. 그래서 작은 AI 모델에게도 글을 읽혀 위험한지 묻게 했습니다. 규칙과 AI 중 하나라도 걸면 막습니다. 그러자 이번에는 멀쩡한 커밋이 걸렸습니다. 따옴표로 인용만 한 "비밀번호:"도 비밀번호로 잡혔습니다. 정말 수상한 것만 걸리도록 고쳤습니다. 끝으로 비밀 키나 숨은 지시를 일부러 넣은 가짜 글 15편을 만들어 시험했습니다. 15편은 모두 잡혔습니다. 이미 올라간 글 51편은 하나도 막히지 않았습니다.
다음 할 것
오늘 밤 실행에서 멀쩡한 글이 막히지 않는지 봅니다. 지난 글 링크는 글 끝 화면을 어떻게 보여 줄지 그려 본 시안 중 하나를 고른 뒤 만듭니다.
원료 · git log
5572271docs: 이어지는 이야기 1안을 원료 다음 자리로 옮겨 다시 그린다
a6d30cefeat: 글 모델이 이어지는 지난 글을 같은 호출에서 고른다
3b676fcdesign: 쇼츠가 없는 글 아래의 안내 문구를 지운다
e460ba9docs: 이어지는 글·글 종류 시안을 올리고 시험 워크플로를 지운다
c4ffbb9feat: 이어지는 글과 글 종류를 Jev가 고를 수 있는지 시험한다
7db6f0ffeat: 발행 전 안전 검사를 밤 실행에 넣는다
75cee52feat: 안전 검사 모듈을 만들고, 실제 커밋으로 잘못 막는 비율을 잰다
f8f549ffeat: 쇼츠·삽화를 만들기 전에 Jev가 먼저 판단하는 시험을 더한다
a4aa347feat: Jev 발행 전 안전 검사 시험을 더한다
f3cc02achore: Jev 화면 고르기 시험 워크플로를 지운다 — 시험이 끝났다