진창수
MeetNote v0.3.0 — 실사용에서 발견한 개선점들
실제 회의에서 사용하면서 발견한 문제들과, E2E 테스트 자동화로 배포 안정성을 확보한 과정.
직접 써봐야 보이는 것들
v0.2까지는 테스트 환경에서 잘 동작했습니다. 하지만 실제 회의에서 사용하기 시작하자 예상하지 못한 문제들이 나타났습니다.
녹음 일시정지/재개
회의 중간에 휴식이 있으면 녹음을 멈추고 다시 시작해야 합니다. 기존에는 멈추면 새 파일이 생겼습니다. 1개의 마크다운 = 1개의 회의 원칙을 지키려면 일시정지/재개가 필요했습니다.
이어서 녹음
같은 맥락의 회의가 여러 세션으로 나뉘는 경우가 있습니다. 기존 회의록에 이어서 녹음하는 기능을 추가하여 하나의 문서로 관리할 수 있게 했습니다.
실사용에서만 발견되는 버그
화자 라벨의 한국어 조사 처리, UI에 10개 이상 항목이 표시되지 않는 문제 등은 테스트 환경에서는 나타나지 않았습니다. 직접 먹어봐야(dogfooding) 알 수 있는 것들입니다.
E2E 테스트 자동화
수동 테스트를 0으로 만들었습니다.
Playwright로 Obsidian CDP(Chrome DevTools Protocol)에 연결하여, 실제 Obsidian 환경에서 E2E 테스트를 실행합니다. 42개의 E2E 테스트와 8개의 실제 오디오 기반 happy-path 시나리오, 총 124개의 테스트가 배포 전 자동 실행됩니다.
이 테스트 인프라 덕분에 “이거 고치면 저거 깨지지 않을까?”라는 불안 없이 기능을 추가할 수 있게 되었습니다.
ADR 도입
1인 개발에서도 ADR(Architecture Decision Record)이 유용했습니다. “왜 이렇게 만들었지?”를 3개월 뒤의 자신에게 설명하는 문서입니다. 설계 근거가 기록되어 있으면 변경 결정이 빨라집니다.