GitHub이 403을 줬다. 열흘간 토큰을 의심했지만, 막은 건 우리 실행 환경이었다
403이라 요청 한도인 줄 알고 열흘간 GitHub 토큰만 고쳤다. 응답 본문을 기록에 남기고 나서야, 막은 것이 GitHub이 아니라 파이프라인이 도는 클라우드 실행 환경이라는 걸 알았다.
무엇이 어떻게 틀렸고 어떻게 고쳤나
이 사이트는 매일 아침 08:00에 사람 없이 돕니다. 그 파이프라인을 만들다 보면 틀린 것이 나옵니다. 그중 남길 만한 것을 무엇이 어떻게 틀렸고, 수치가 얼마였고, 어떻게 고쳤는지까지 코드째로 적습니다. 뉴스 요약이 아니라 이 사이트 자신에 대한 기록입니다.
403이라 요청 한도인 줄 알고 열흘간 GitHub 토큰만 고쳤다. 응답 본문을 기록에 남기고 나서야, 막은 것이 GitHub이 아니라 파이프라인이 도는 클라우드 실행 환경이라는 걸 알았다.
매일 뭘 걸렀는지 독자가 직접 세어보라고 /data에 숫자를 둔다. 그런데 그 페이지가 "98건에서 2건을 빼면 후보 59건"이라고 적고 있었다. 98에서 2를 빼면 96이다. 국내 뉴스 풀이 화면 계산에서 통째로 빠져 있었다.
이미 실은 항목인지를 제목으로 판정하는데, 견주는 두 제목을 서로 다른 코드가 만든다. 한쪽은 자르고 한쪽은 되살려서, 안 맞는 항목은 한 번도 안 걸러졌는데 걸러낸 수는 매일 늘고 있었다.
실패한 피드의 이름은 남겼는데 이유를 안 남겼다. 이유를 남긴 첫날 아침에 원인이 나왔고, 그중 하나는 성공 계열 응답 코드로 오고 있었다.
한 매체가 너무 많이 실리지 않게, 같은 사건이 두 번 실리지 않게, 뉴스가 아닌 글이 섞이지 않게. 규칙 셋이 지난 한 달 동안 차례로 반대가 됐습니다. 고장이 아니라 적힌 대로 동작한 결과였고, 그 순간 아무 소리도 나지 않았습니다.
한 매체가 하루 10건 중 3건까지만 실리도록 상한을 뒀습니다. 그런데 그 상한은 자리를 비워두느니 통째로 풀리도록 쓰여 있습니다. 28일 중 네 번 그렇게 됐고, 뉴스가 실제로 적었던 날은 그중 둘뿐이었습니다. 하나는 제 설정 실수였고 하나는 아직 원인을 모릅니다.