AI에게 맡기되, 믿을 수 있게 — 1.8.0 릴리스와 회고
여섯 기능을 1.8.0으로 묶고 인스톨러를 구웠다. 믿었다가 데인 버그들이 남긴 교훈과, 다음 이야기.
v1.7과 v1.8을 이어 붙여 1.8.0으로 정식 태깅하고, 윈도우 인스톨러까지 구웠다. 콘텐츠 제어 네 가지와 편집 두 가지, 여섯 개 기능이 한 버전에 들어갔다. 이 글은 그 마무리와, 이 프로젝트가 내게 남긴 것에 대한 기록이다.
릴리스
인스톨러는 PyInstaller로 앱을 얼리고, 엔진용 파이썬 런타임(PyMuPDF·Pillow)을 함께 동봉한 뒤, Inno Setup으로 묶었다. 동결된 앱은 스스로 자가검증(SELFTEST OK)을 통과했고, 실제로 창을 띄워 시작 경로에서 죽지 않는지도 확인했다. 결과물은 약 85MB짜리 설치 파일이다.
다만 공개는 아직 눌러 두지 않았다. 자동 업데이트가 걸린 파일을 바꾸는 순간 모든 사용자에게 새 버전이 뜨기 때문에, 글×이미지 AI 네 조합을 손으로 돌려 보는 릴리스 게이트를 통과한 뒤에 공개하기로 했다. 급하게 내보내는 것보다, 한 번 더 확인하는 쪽을 택했다.
이 프로젝트가 가르쳐 준 것
기억에 남는 버그들은 하나같이 "AI를 믿었다가" 생긴 것들이었다.
- 집필 담당 AI가 자기 단계 도중에 최종 검증 게이트를 스스로 돌려 버렸다. 뒤 단계에서 채워질 것들이 아직 없으니 실패로 나왔고, 그걸 통과시키려 산출물을 무한히 뜯어고쳤다. 같은 패턴을 두 번 겪고 나서야, 프롬프트로 부탁하는 대신 코드로 막았다. 스테이지 에이전트가 게이트를 실행하면 스크립트가 거부하도록.
- 표지가 렌더러마다 달라지던 문제는, 결국 "누가 그리느냐"를 하나로 못 박아서야 끝났다.
- "커밋했다"고 스스로 주장했지만 실제 diff엔 반영이 안 돼 있던 적도 있다. 그 뒤로는 실행 결과를 보기 전엔 완료라고 하지 않는다를 원칙으로 삼았다.
그래서 이 앱의 테스트는 138개까지 늘었다. 화려한 기능보다, "AI가 사고 쳐도 앱이 막아 낸다"는 확신에 대부분의 공을 들였다. AI에게 맡기되, 믿을 수 있게. 그 균형을 잡는 게 이 프로젝트의 전부였다.
다음
다음은 v1.9다. 챕터를 한 단계씩 위임하는 정밀 집필 모드와 디자인 스튜디오, 그리고 이번에 미뤄 둔 코파일럿 단계 모드가 여기서 합쳐진다. 목표는 여전히 2.0 — 누구든 주제 하나로 한 권을 끝까지 낼 수 있는, 믿을 수 있는 도구.
기록은 계속 남긴다.