diff --git a/docs/README.md b/docs/README.md index 04f010f..acd7289 100644 --- a/docs/README.md +++ b/docs/README.md @@ -16,6 +16,8 @@ Codex CLI가 중간에 끊겨도 같은 품질로 작업을 이어가기 위한 - [05_handoff_checklist.md](./05_handoff_checklist.md) - [06_commit_convention.md](./06_commit_convention.md) - [07_session_recovery.md](./07_session_recovery.md) +- [work.md](./work.md) +- [workFlow.md](./workFlow.md) ## 운영 원칙 diff --git a/docs/work.md b/docs/work.md new file mode 100644 index 0000000..d21e10a --- /dev/null +++ b/docs/work.md @@ -0,0 +1,48 @@ +# Work Order + +이 파일은 사용자가 이번 세션에서 처리할 작업을 적는 실행 입력서다. + +## 작성 규칙 + +- 작업은 가능한 한 "주제별"로 분리해서 작성한다. +- 한 주제는 가능하면 한 커밋으로 끝낼 수 있게 범위를 좁힌다. +- "금지사항/제외 범위"를 명시해서 불필요한 변경을 막는다. + +## 작업 템플릿 + +아래 블록을 복사해서 사용: + +```md +## 작업 1 +- 제목: +- 목적: +- 변경 범위: + - +- 제외 범위: + - +- 완료 조건: + - +- 검증: + - npx tsc --noEmit +- 커밋 힌트: + - type(scope): 한국어 요약 + +## 작업 2 (선택) +- 제목: +- 목적: +- 변경 범위: + - +- 제외 범위: + - +- 완료 조건: + - +- 검증: + - +- 커밋 힌트: + - +``` + +## 우선순위 + +- 위에서 아래 순서대로 높은 우선순위로 간주한다. +- `작업 1`을 먼저 처리하고, 완료 시 다음 작업으로 넘어간다. diff --git a/docs/workFlow.md b/docs/workFlow.md new file mode 100644 index 0000000..7cbcd72 --- /dev/null +++ b/docs/workFlow.md @@ -0,0 +1,72 @@ +# WorkFlow + +너는 이 레포의 유지보수 엔지니어다. +사용자가 `workFlow.md를 실행해`라고 지시하면 아래 순서대로 수행한다. + +## 0) 입력 확인 + +1. `docs/work.md`를 읽고 작업 목록을 파악한다. +2. 비어 있거나 모호한 항목이 있으면 최소 질문 1회로 명확히 한다. + +## 1) 필수 컨텍스트 로드 + +작업 시작 전에 아래 문서를 읽고 규칙을 고정한다. + +- `docs/00_project_brief.md` +- `docs/01_ui_guidelines.md` +- `docs/02_arch_fsd_rules.md` +- `docs/04_coding_rules.md` +- `docs/06_commit_convention.md` +- `docs/90_current_state.md` + +## 2) 구현 원칙 (강제) + +- FSD 레이어 규칙을 지킨다. +- `page.tsx`에는 조합만 두고 비즈니스 로직을 넣지 않는다. +- UI 상태(토글/선택)만 최소 허용한다. +- 파일 500줄 이상이면 분리한다. +- 실제 기능(타이머/오디오/서버/DB) 구현은 하지 않고 UI 목업 + 더미 + 토스트로 처리한다. +- 작업 지시 범위를 벗어난 파일은 수정하지 않는다. + +## 3) 실행 순서 + +1. `work.md`의 `작업 1`부터 처리한다. +2. 작업 단위마다 아래를 수행한다. + - 코드 수정 + - 검증 실행 (`work.md`의 검증 항목 우선) + - 요구사항 충족 여부 자체 점검 +3. 여러 작업이 있으면 동일 절차를 반복한다. + +## 4) 커밋 규칙 (강제) + +- 주제별 1커밋 원칙을 지킨다. +- 커밋 메시지는 한국어로 작성한다. +- 형식은 `Conventional Commits`를 따른다. + - 예: `feat(app): 허브 CTA를 데스크톱 컴팩트 그룹으로 변경` +- 커밋 본문은 아래 구조를 사용한다. + +```text +맥락: +- ... + +변경사항: +- ... + +검증: +- ... + +세션-상태: ... +세션-다음: ... +세션-리스크: ... +``` + +- 커밋에는 관련 파일만 스테이징한다. + +## 5) 종료 정리 + +1. `docs/90_current_state.md` 업데이트 + - DONE / NEXT / RISKS / CHANGED FILES +2. 최종 보고에는 아래를 포함한다. + - 작업별 반영 내용 + - 실행한 검증 결과 + - 생성된 커밋 해시/제목 목록