개인정보처리방침은 복사해서 붙이면 끝일까

코딩은 AI에게 맡겼습니다 · 시즌 1 / 6

README를 만든 날, Chrome Web Store를 위한 첫 개인정보처리방침도 추가했습니다. 첫 문서는 26줄이었습니다. 서버가 없고 메모가 브라우저 안에만 남으니 설명할 내용도 적어 보였습니다.

먼저 보는 핵심
정책 문서는 그럴듯한 법률 문장을 만드는 일이 아니라 제품의 데이터 흐름을 사실대로 설명하는 일입니다. AI에게 초안을 맡길 수는 있지만, Manifest와 저장 코드, 외부 라이브러리, 삭제 방식을 직접 대조해야 합니다.


“수집하지 않습니다”만으로 충분하지 않았다

Simple Side Note는 계정을 만들지 않고 별도 서버도 사용하지 않습니다. 하지만 데이터가 전혀 존재하지 않는 것은 아닙니다. 사용자가 작성한 메모와 설정은 브라우저 저장소에 기록됩니다.

정책에는 최소한 다음 질문의 답이 있어야 했습니다.

  • 어떤 데이터를 저장하는가
  • 데이터는 어느 장치와 저장 영역에 남는가
  • 외부 서버로 전송하는가
  • 제3자와 공유하거나 판매하는가
  • 사용자가 데이터를 내보내거나 삭제할 수 있는가
  • 확장 프로그램을 제거하면 무엇이 일어나는가
  • 문의는 어디로 해야 하는가

“개인정보를 수집하지 않는다”는 문장만 쓰면 로컬 메모와 설정이 어디에 저장되는지 설명하지 못합니다. 사용자에게 중요한 것은 법률 용어보다 자신의 데이터가 어디로 가는지입니다.


AI에게 문장을 쓰기 전에 흐름을 찾게 했다

정책 초안을 바로 요청하는 대신 코드에서 데이터 흐름을 먼저 정리하는 편이 안전합니다.

데이터 발생 위치 저장 위치 외부 전송
메모 본문 Side Panel 편집기 Chrome 로컬 저장소 없음
테마·설정 설정 화면 Chrome 저장소 구현 방식에 따라 확인
웹페이지에서 가져온 문구 사용자의 명시적 동작 현재 메모 없음
오류 정보 브라우저 개발자 도구 별도 수집 없음 없음

이 표를 만든 다음 AI에게 사용자에게 이해되는 문장으로 바꾸게 하면, 일반적인 정책 문구를 복사하는 것보다 실제 제품에 가까운 결과가 나옵니다.


반드시 사람이 대조할 네 곳

정책을 검토할 때는 다음 파일과 동작을 함께 봐야 합니다.

  1. Manifest의 permissionshost_permissions
  2. 저장소를 읽고 쓰는 코드
  3. 외부 CDN, 분석, 오류 수집 라이브러리
  4. 백업, 복원, 삭제와 휴지통 동작

AI가 “외부 전송이 없다”고 써도 외부 스크립트나 API 호출이 있으면 사실과 다릅니다. 반대로 넓은 권한이 선언되어 있어도 실제로 데이터를 전송하지 않을 수 있습니다. 권한과 데이터 사용은 각각 설명해야 합니다.


짧은 첫 문서의 역할

26줄의 첫 정책은 완성본이 아니었습니다. 그래도 데이터에 대해 질문하기 시작했다는 점에서 의미가 있었습니다. 기능 개발 중에는 정상 화면만 보지만 정책을 쓰면 저장, 전송, 보관, 삭제를 모두 살펴보게 됩니다.

AI로 정책 초안을 만드는 속도는 빨랐습니다. 그러나 사실관계에 책임지는 주체는 여전히 개발자였습니다. 정책 문서는 AI가 대신 보증해 주는 문서가 아니라 제품을 만든 사람이 공개적으로 설명하는 약속입니다.


다음 편

첫 정책에는 문의 방법도 필요했습니다. 다음 편에서는 개인 이메일 대신 공개 저장소의 이슈 페이지를 지원 채널로 선택한 이유를 다룹니다.

댓글

이 블로그의 인기 게시물

pyautogui 예제 모니터 특정 위치 색상 구하고 비교해서 클릭 이벤트 하기

vscode 에서 WSL 개발환경 동작하지 않는 경우

React에서 Socket.IO Client 연결하기: CORS와 useEffect 정리