# GTSIT 프로젝트 작업 규칙 ## 기본 원칙 - 사용자에게 보여주는 설명과 진행 상황은 한국어로 작성한다. - 작업 시작 시 `docs/README.md`, `docs/architecture.md`, `docs/implementation-todo.md`, `docs/qa-list.md`에서 현재 상태와 다음 단계를 확인한다. - 코드, 배포, 호스팅, 도메인, DB 설정을 진행하면서 관련 문서를 백그라운드에서 함께 갱신한다. - 문서 갱신을 별도 후속 작업으로 미루지 않고 해당 변경의 완료 조건에 포함한다. ## 문서별 갱신 기준 - `docs/README.md`: 문서 구성, 현재 목표, 운영 원칙이 바뀔 때 갱신 - `docs/architecture.md`: 페이지 구조, 기술 구성, 데이터 모델, 호스팅 사양, 보안 또는 배포 전략이 바뀔 때 갱신 - `docs/implementation-todo.md`: 작업 시작·완료·차단 상태와 사용자/Codex 담당이 바뀔 때 즉시 갱신 - `docs/qa-list.md`: 기능 추가나 결함 발견 시 검증 항목을 추가하고, 실제 검증을 통과한 항목만 완료 처리 ## 상태 기록 규칙 - 실제로 구현하거나 검증한 항목만 `[x]`로 표시한다. - 진행하지 않은 항목, 사용자 확인이 필요한 항목, 재검증이 필요한 항목은 `[ ]`로 유지한다. - 외부 설정이 실패하거나 차단되면 원인, 현재 영향, 다음 행동을 관련 문서에 기록한다. - 중요한 설계 결정과 운영 환경 변경에는 확인 날짜를 기록한다. - 배포 URL, 환경, 기기 등 QA 재현에 필요한 정보는 `docs/qa-list.md` 실행 기록에 남긴다. - 작업 종료 전 코드 변경과 문서 상태가 서로 일치하는지 확인한다. ## 보안 - 비밀번호, DB 접속 비밀번호, SSH 개인키, 인증번호, 세션 정보는 문서와 Git에 기록하지 않는다. - 인증키와 로컬 비밀정보는 `.secrets/`에 보관하고 파일 권한을 제한한다. - 문서에는 민감정보 자체가 아닌 설정 상태, 확인 결과, 재현 가능한 안전한 절차만 기록한다.