
자동 처리 증거를 JSONL에 기록하는 최소 구현 - 구현 절차
요약
자동 처리 시스템의 안정성을 높이기 위해, 결과물을 덮어쓰지 않고 JSONL 파일에 실행 증거를 추기하는 최소 구현 절차를 제시합니다. 이 방법을 통해 프로세스 중단 시에도 외부 작업의 중복을 방지하고 정확한 재개 지점을 확보할 수 있습니다.
핵심 포인트
- 결과물은 덮어쓰지 않고, JSONL 파일에 실행 증거를 추기해야 합니다.
- 입력, 처리, 결과물, 공개 결과를 분리하여 상태를 명확히 기록하는 것이 중요합니다.
- 파일 기반의 상태 관리를 통해 시스템 중단 시에도 정확한 재개 및 진행이 가능합니다.
자동 처리의 증거를 JSONL에 추기하는 최소 구현 - 구현 절차
자동 처리는 스케줄 등록만으로는 안정적이지 않습니다. 결과를 덮어쓰거나 장치 출력에만 남기면, 병렬 자동 처리의 증거가 사라집니다.
이 글에서는 '구현 절차' 관점에서 입력, 처리, 결과물, 공개 결과를 분리하는 방법을 정리합니다. 시스템 전체의 이유까지 다룹니다.
기본 방침
1회 실행당 검증된 JSON을 1줄 추기하고, 이전 줄은 수정하지 않습니다.
프로세스가 종료된 것과 목적을 달성한 것은 별개입니다. 초안 생성, 품질 검사, 외부 공개, 공개 URL 확인을 개별적으로 기록합니다. 상태를 분리함으로써 다음 날의 처리는 추측이 아닌 증거로부터 재개할 수 있습니다.
구현 절차
필수 키를 검증한 후 파일을 엽니다
UTF-8의 append 모드로 추기합니다
시간과 결과물 경로를 매 줄 남깁니다
각 공정은 다음 공정이 기계적으로 판단할 수 있는 JSON을 출력합니다. 자유문 로그에만 의존하면, 재실행 시 어디까지 완료했는지 인간이 추측해야 합니다.
with path.open(
재시작 후에는 메모리상의 상태가 아닌 파일 결과물로부터 재개합니다. 후보 감사(candidate audit)가 완료되었다면 생성 과정을 생략하고, 초안 저장 결과가 있다면 새로운 초안을 만들지 않습니다. 공개 결과에 실제 URL이 있다면 당일 처리를 종료합니다. 이러한 순서 덕분에 PC 재부팅이나 러너 중단이 발생하더라도 외부 작업을 중복시키지 않고 계속 진행할 수 있습니다.
테스트에는 후보 0건, 깨진 JSON, 잔류 잠금(residual lock), 공개 결과 없음 등의 경우도 포함됩니다. 일일 운영에서 자주 발생하는 것은 예외 상황보다는 '처리는 끝났지만 목적물이 없는' 상태입니다.
## 운영 체크리스트
- 입력 출처와 SHA-256이 기록되어 있는가
- 제목과 본문의 중복 검사를 통과했는가
- provider와 action이 고정되어 있는가
- 일일 공개 상한을 초과하지 않았는가
- 결과 JSON에 실제 URL 또는 정확한 중단 사유가 포함되어 있는가
이러한 형태로 후보 생성과 공개를 독립시키면서 재고 수량을 계약으로 연결할 수 있습니다. 게시 시점에 후보가 없다면, 공급 공정을 실행한 후 재평가합니다.
관련 실습 예시는 AI Compass Journal 목록에서 확인할 수 있습니다.
### 토론

AI 자동 생성 콘텐츠
본 콘텐츠는 Zenn AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기