요구사항 확인
↓
개발
↓
테스트
↓
배포
↓
모니터링
↓
장애 대응
↓
기록
↓
개선
배포 전 확인을 기억에 의존
작업 기록 누락
장애 원인 추적 어려움
커밋 메시지 대충 작성
QA 항목 매번 새로 생각
서버/DB 상태 확인 늦음
검증 명령어 표준화
배포 체크리스트 고정
로그/모니터링 기준 존재
작업 요약 자동 생성
릴리즈 노트 자동 생성
Runbook 기반 장애 대응
1. 배포 실수 줄이기
2. 장애 발견 속도 높이기
3. 복구 절차 표준화하기
4. 작업 기록 자동화하기
5. 성과 자료 쌓기
6. AI/Codex 작업 품질 높이기
고객 상담 신청이 항상 정상인지 확인
관리자 상담 처리가 안정적인지 확인
배포 후 문제가 바로 드러나는 구조 만들기
장애 시 어디를 봐야 하는지 문서화
작업 내용을 자동으로 성과 기록화
| 우선순위 | 대상 | 이유 |
|---|---|---|
| 1순위 | 배포 전 검증 | 실수 방지 효과 큼 |
| 2순위 | Smoke Test | 핵심 기능 장애 조기 발견 |
| 3순위 | 작업 기록 | 성과/장애 추적에 필요 |
| 4순위 | 로그/모니터링 | 운영 상태 파악 |
| 5순위 | 배포 자동화 | 반복 작업 감소 |
| 6순위 | 장애 대응 Runbook | 복구 속도 향상 |
lint/test/build 실행
git diff 리뷰
커밋 메시지 생성
QA 체크리스트 생성
배포 기록 생성
릴리즈 노트 생성
CloudFront invalidation
health check
로그 요약
운영 DB 자동 수정
운영 DB reset
무검토 production 배포
Secret 자동 출력
알림톡/SMS 실제 대량 발송
권한/인증 로직 무검토 반영
장애 시 무조건 서버 재시작
{
"scripts": {
"lint": "eslint .",
"test:run": "vitest run",
"typecheck": "tsc --noEmit",
"build": "vite build",
"verify": "pnpm lint && pnpm test:run && pnpm typecheck && pnpm build"
}
}
{
"scripts": {
"lint": "eslint .",
"test": "jest",
"build": "nest build",
"prisma:generate": "prisma generate",
"verify": "pnpm prisma:generate && pnpm lint && pnpm test && pnpm build"
}
}
pnpm verify
배포 전 실행할 명령어가 하나로 통일됨
로컬과 CI에서 같은 검증 명령어를 사용함
AI/Codex에게 수정 후 verify 실행을 요구할 수 있음
name: CI
on:
push:
branches:
- main
pull_request:
jobs:
verify:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: 10
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: 24
cache: 'pnpm'
- name: Install
run: pnpm install --frozen-lockfile
- name: Verify
run: pnpm verify
push/PR 시 자동 검증 실행
실패한 step을 GitHub에서 확인 가능
main branch가 최소 build 가능한 상태로 유지됨
운영 Secret을 CI 로그에 출력하지 않기
운영 DB를 테스트에 연결하지 않기
패키지 매니저와 lock 파일 맞추기
Node 버전 로컬과 맞추기
git diff 리뷰입니다.상담 신청 흐름 영향
관리자 상담 처리 영향
API request/response 변경
queryKey/invalidate 변경
권한/인증 변경
DB migration 변경
환경변수 추가/변경
개인정보 로그 노출
배포/캐시 영향
아래 git diff를 운영 배포 전 관점으로 리뷰해줘.
중점:
1. 고객 상담 신청 흐름 영향
2. 관리자 상담 목록/상태 변경 영향
3. API request/response 변경
4. queryKey/invalidate 누락 가능성
5. 인증/권한 영향
6. DB migration 위험
7. 환경변수 추가/변경
8. 개인정보/Secret 로그 노출 위험
9. 배포 후 Smoke Test 항목
10. 롤백 시 주의사항
출력:
- 위험도 요약
- 배포 전 확인할 것
- 수동 QA 체크리스트
- 커밋 분리 제안
- 롤백 주의사항
배포 전 diff 리뷰 프롬프트가 준비됨
AI가 제안한 QA 항목을 체크리스트에 반영함
최종 판단은 사람이 직접 함
실제 diff와 일치
무엇을 바꿨는지 명확
과장 금지
기능/수정/리팩토링 구분
너무 큰 커밋은 분리
feat: 상담 신청 중복 제출 방지 처리 추가
fix: 관리자 상담 목록 필터 초기화 오류 수정
refactor: 상담 API queryKey 관리 구조 분리
docs: 프론트 배포 체크리스트 추가
chore: GitHub Actions verify workflow 추가
아래 staged diff를 보고 커밋 메시지를 추천해줘.
조건:
1. Conventional Commits 형식
2. 한국어
3. 실제 변경 내용만 반영
4. 과장 금지
5. 기능 변경과 리팩토링이 섞였으면 커밋 분리 제안
6. 제목은 50자 안팎
7. 필요한 경우 본문 bullet 작성
출력:
- 추천 커밋 메시지
- 커밋 분리 필요 여부
- 배포 전 확인할 QA
push/PR:
CI만 실행
운영 배포:
workflow_dispatch 수동 실행
배포 후:
Smoke Test 직접 확인
pnpm verify
운영 env로 build
dist 안 localhost 검사
S3 upload
CloudFront invalidation
배포 기록 초안 생성
운영 API URL 확인
상담 신청 모달 확인
관리자 로그인 확인
CloudFront 캐시 반영 확인
모바일 핵심 CTA 확인
GitHub Actions에서 수동 배포 가능
S3/CloudFront 배포 명령이 표준화됨
배포 후 Smoke Test 체크리스트가 존재함
prisma generate
lint
unit test
e2e test
build
테스트용 DB service
health endpoint 준비
env validation 준비
migration 실행 기준 정리
PM2/Docker 재시작 명령 표준화
Nginx proxy 확인
로그 확인 위치 문서화
롤백 기준 정리
1단계:
CI만 자동화
2단계:
staging 배포 자동화
3단계:
production 수동 승인 배포
4단계:
health check + rollback 기준 보강
.env 파일에만 흩어져 있으면 새 장비, CI/CD, 서버 배포에서 관리가 어려워집니다./togethermall/development/back/DATABASE_URL
/togethermall/development/front/VITE_API_BASE_URL
/togethermall/production/back/DATABASE_URL
/togethermall/production/front/VITE_API_BASE_URL
AWS SSO 로그인
↓
SSM 값 읽기
↓
.env.local 생성
↓
앱 실행
SSM 경로 규칙이 정해짐
개발/운영 경로가 분리됨
SecureString과 String 기준이 정리됨
.env.example이 최신 상태임
Secret이 Git에 없음
운영 Secret 로컬 저장 최소화
SSM 읽기 권한 최소화
GitHub Actions 로그에 Secret 출력 금지
AI에게 실제 Secret 제공 금지
/health endpoint와 배포 후 health check는 있어야 합니다.{
"status": "ok",
"version": "abc1234",
"checks": {
"database": "ok",
"redis": "ok"
}
}
curl -f https://api.example.com/health
API health check 실패
배포 실패
API 5xx 급증
상담 신청 실패율 증가
디스크 사용량 위험
DB 연결 실패
health endpoint가 있음
배포 후 health check를 실행함
실패 시 배포 실패로 판단 가능
중요 장애 알림 기준이 정리됨
consult.create.success
consult.create.failed
admin.login.success
admin.login.failed
consult.status.update.success
consult.status.update.failed
alimtalk.send.success
alimtalk.send.failed
export.job.created
export.job.failed
timestamp
level
event
requestId
adminId
path
statusCode
durationMs
errorCode
message
전화번호 원본
토큰
쿠키
Authorization header
DATABASE_URL
JWT Secret
상담 메모 전체
process.env 전체
핵심 이벤트 성공/실패 로그가 있음
에러 code가 로그에 남음
개인정보가 마스킹됨
장애 시 requestId로 추적 가능
docs/
checklists/
pre-deploy.md
smoke-test.md
post-deploy-monitoring.md
runbooks/
deploy-frontend.md
deploy-backend.md
rollback-frontend.md
rollback-backend.md
incident-nginx-502.md
incident-consult-submit-failed.md
incident-admin-login-failed.md
incident-cloudfront-cache.md
releases/
2026-08-11.md
배포 전 체크리스트 존재
Smoke Test 체크리스트 존재
프론트/백엔드 롤백 Runbook 존재
상담 신청 실패 Runbook 존재
관리자 로그인 실패 Runbook 존재
CloudFront 캐시 Runbook 존재
오늘 작업한 기능
변경한 화면/API
수정한 파일
검증한 명령어
수동 QA 결과
배포 여부
장애/이슈
남은 TODO
성과 표현 후보
# 2026-08-11 작업 기록
## 오늘 작업
-
## 변경 범위
- 고객 화면:
- 관리자 화면:
- 백엔드:
- 인프라:
## 검증
- [ ] pnpm verify
- [ ] CI 통과
- [ ] Smoke Test
## 배포
- 배포 여부:
- commit:
- 특이사항:
## 운영 영향
-
## 남은 TODO
-
## 성과 표현
-
하루 작업 요약이 Markdown으로 남음
Notion 또는 docs에 저장 가능
커밋/배포 기록과 연결됨
성과 문장으로 변환 가능
local-llm-work-report와 직접 연결됩니다.# Release Note - 2026-08-11
## 배포 정보
- 환경:
- 대상:
- commit:
- 배포자:
## 주요 변경
-
## 영향 범위
- 고객 화면:
- 관리자 화면:
- API:
- DB:
- 인프라:
## 검증
- [ ] lint
- [ ] test
- [ ] build
- [ ] CI
- [ ] Smoke Test
## 배포 후 확인
-
## 롤백 기준
-
## 특이사항
-
git log
git diff
commit message
PR description
배포 체크리스트
Smoke Test 결과
배포마다 릴리즈 노트가 남음
변경 범위와 검증 결과가 기록됨
장애 발생 시 최근 릴리즈와 비교 가능
# 장애 기록
## 요약
-
## 발생 시간
- 시작:
- 감지:
- 복구:
## 영향 범위
- 고객:
- 관리자:
- API:
- DB:
## 원인
-
## 대응
-
## 재발 방지
- [ ] 테스트 추가
- [ ] 모니터링 추가
- [ ] Runbook 수정
- [ ] 배포 체크리스트 수정
## 관련 로그/커밋
-
최근 배포 시간
최근 commit
에러 로그 요약
5xx 발생 API
장애 시간대 로그
관련 Runbook 추천
장애 발생 시 기록 템플릿을 바로 쓸 수 있음
장애 후 재발 방지 TODO가 남음
Runbook이 업데이트됨
작업 범위를 feature 단위로 제한
공통 컴포넌트 임의 수정 금지
API 경로는 domain api에 추가
queryKey는 기존 규칙 사용
권한 util은 기존 함수 사용
Secret/개인정보 제공 금지
수정 후 git diff 요약 요청
QA 체크리스트 함께 요청
features/admin-consults 내부에서만 상담 목록 필터 초기화 UX를 개선해줘.
조건:
1. components/ui는 수정하지 마
2. 기존 useAdminConsults hook을 사용해
3. queryKeys.adminConsults 규칙을 따라
4. 권한 체크는 hasPermission을 사용해
5. API 응답 타입은 기존 AdminConsultListResponse를 유지해
6. 수정 후 변경 파일, 위험 요소, QA 체크리스트를 정리해줘
AI 작업 전 공통 컨텍스트 문서가 있음
AI 작업 후 diff 리뷰 루틴이 있음
AI가 만든 코드도 verify/CI를 통과해야 함
오늘 상담 신청 수
상담 신청 실패 수
유입별 상담 신청 수
관리자 상태 변경 수
알림톡 발송 실패 수
API 5xx 수
최근 배포 시간
최근 배포 commit
일자별 상담 신청
상품별 상담 신청
유입경로별 신청
실패 이벤트 목록
최근 배포 기록
알림톡 실패 목록
ExportJob 실패 목록
상담 신청 성공/실패를 볼 수 있음
배포 이후 실패 증가 여부를 확인할 수 있음
운영자가 봐야 할 실패 목록이 있음
PostgreSQL/RDS
S3 업로드 이미지
환경변수/SSM 목록
배포 artifact
Git repository
운영 문서
RDS automated backup
DB snapshot
S3 versioning
중요 env 목록 export
배포 artifact 저장
릴리즈별 commit tag
DB 백업 정책이 있음
S3 파일 복구 방법이 있음
이전 배포 artifact 또는 commit 기준 롤백 가능
복구 Runbook이 있음
EC2
RDS
S3
CloudFront
CloudWatch Logs
NAT Gateway
ECR
Data Transfer
AWS Budgets 알림
월별 비용 리포트
CloudWatch Logs 보관 기간 설정
미사용 리소스 점검
S3 lifecycle rule
월 비용 알림이 있음
예상 밖 비용 증가를 알 수 있음
로그 보관 기간이 정해져 있음
사용하지 않는 리소스를 주기적으로 점검함
.env Git 커밋 여부
Secret scanning
AWS IAM 과도한 권한
S3 public access
DB/Redis 외부 공개 여부
관리자 권한 정책
로그 개인정보 노출
의존성 취약점
gitleaks detect
npm audit 또는 pnpm audit
GitHub secret scanning
S3 public access block 확인
IAM Access Analyzer
보안 체크리스트
공개 전 Secret scan 수행
.env가 Git에 없음
S3 bucket public 여부 확인
AWS key 최소 권한
DB/Redis 포트 외부 비공개
로컬 verify
GitHub Actions CI
.env.example 정리
배포 체크리스트
Smoke Test 체크리스트
프론트 수동 배포 workflow
CloudFront invalidation 자동화
백엔드 배포 스크립트
health check
릴리즈 노트 템플릿
핵심 이벤트 로그
API 5xx 모니터링
상담 신청 실패 로그
배포 후 모니터링
장애 Runbook
git diff 리뷰
커밋 메시지 추천
작업 요약 생성
릴리즈 노트 생성
장애 기록 초안
Notion 업로드
staging 자동 배포
production 수동 승인 배포
대시보드
비용 알림
보안 스캔
백업/복구 점검
pnpm verify 정리
GitHub Actions CI
프론트 배포 체크리스트
고객 상담 신청 Smoke Test
관리자 상담 목록 Smoke Test
S3 + CloudFront 배포 workflow_dispatch
배포 기록 템플릿
릴리즈 노트 템플릿
CloudFront 캐시 Runbook
프론트 롤백 Runbook
백엔드 health endpoint
백엔드 로그 표준화
상담 신청 실패 로그
관리자 로그인 실패 로그
Nginx 502 Runbook
상담 신청 실패 Runbook
SSM 기반 env 관리
GitHub Actions에서 SSM 읽기
Secret scan
작업 요약 자동화
Notion 업로드
목표:
배포 전 실수 방지
작업:
- pnpm verify 정리
- GitHub Actions CI 추가
- pre-deploy checklist 작성
- Smoke Test checklist 작성
- AI diff review prompt 작성
완료 기준:
push 시 CI 실행
배포 전 확인할 체크리스트 존재
상담 신청/관리자 Smoke Test 기준 존재
목표:
S3 + CloudFront 배포 표준화
작업:
- workflow_dispatch 배포 구성
- S3 upload 스크립트 정리
- CloudFront invalidation 자동화
- dist localhost 검사 추가
- 프론트 롤백 Runbook 작성
완료 기준:
GitHub Actions에서 수동 프론트 배포 가능
배포 후 Smoke Test 절차 존재
캐시 문제 대응 Runbook 존재
목표:
장애 원인 추적 가능하게 만들기
작업:
- /health endpoint 정리
- API request log 기준 정리
- 상담 신청 성공/실패 로그 추가
- 관리자 로그인 성공/실패 로그 추가
- 개인정보 로그 마스킹 확인
- Nginx/PM2/Docker 로그 확인 문서화
완료 기준:
상담 신청 실패 원인을 로그로 추적 가능
관리자 로그인 실패 원인을 로그로 추적 가능
health check로 서버/DB 상태 확인 가능
목표:
작업/배포/장애 기록 자동화
작업:
- 작업 요약 템플릿 정리
- 릴리즈 노트 템플릿 정리
- git diff 기반 작업 요약 프롬프트 정리
- local-llm-work-report와 연결
- Notion 업로드 흐름 점검
- 장애 기록 템플릿 작성
완료 기준:
하루 작업 요약이 Markdown으로 생성됨
배포 기록이 남음
릴리즈 노트 초안 생성 가능
장애 기록 템플릿 사용 가능
GitHub Actions 설정함
배포 스크립트 만듦
로그 추가함
문서 작성함
프론트엔드 배포 전 lint/test/build 검증과 GitHub Actions CI를 도입해 운영 반영 전 코드 안정성 확인 절차를 표준화했습니다.
S3 + CloudFront 배포 절차와 캐시 무효화 Runbook을 정리해 프론트 배포 후 구버전 파일 노출 및 Chunk Load Error 대응 기준을 마련했습니다.
상담 신청/관리자 로그인/상태 변경 실패 로그를 표준화해 운영 장애 발생 시 원인 추적 속도를 높일 수 있는 관측 기반을 구축했습니다.
git diff 기반 AI 리뷰, 커밋 메시지 추천, 작업 요약 자동화 흐름을 도입해 1인 개발 환경의 작업 기록과 배포 전 검증 효율을 개선했습니다.
온라인 휴대폰 판매몰을 1인 개발자로 운영하고 있어.
상황:
1. 프론트는 React + Vite이고 S3 + CloudFront로 배포함
2. 백엔드는 NestJS + Prisma이고 PostgreSQL/RDS를 사용함
3. 로컬은 Mac + OrbStack PostgreSQL을 사용함
4. GitHub Actions로 CI/CD를 도입하려고 함
5. 환경변수와 Secret은 AWS SSM/GitHub Secrets로 관리하려고 함
6. 고객 핵심 흐름은 상품 상세 → 상담 신청임
7. 관리자 핵심 흐름은 로그인 → 상담 목록 → 상태 변경임
8. AI/Codex를 활용해 코드 수정, diff 리뷰, 작업 요약을 자동화하고 싶음
9. local-llm-work-report로 하루 작업 요약을 Markdown/Notion에 남기고 싶음
요청:
- 1인 개발자 기준 자동화 우선순위
- 4주 적용 로드맵
- GitHub Actions CI 구성
- 프론트 S3/CloudFront 배포 자동화 순서
- 백엔드 health/logging/배포 준비 순서
- SSM Secret 관리 도입 순서
- Smoke Test와 Runbook 구성
- 작업 기록/릴리즈 노트 자동화 구조
- 연봉협상/경력기술서에 쓸 수 있는 성과 표현
을 실무 기준으로 정리해줘.
처음부터 과한 Kubernetes/ECS 구조를 강요하지 않는가?
상담 신청과 관리자 상담 처리를 핵심으로 보는가?
프론트 자동화와 백엔드 자동화 위험도를 구분하는가?
운영 DB/Secret 위험을 과소평가하지 않는가?
자동화와 사람 검수를 구분하는가?
1인 개발자가 실제로 적용 가능한 순서인가?
작업 기록과 성과 자료화를 연결하는가?
pnpm verify 또는 npm run verify가 있는가?/health endpoint가 있는가?.env가 Git에 올라가지 않는가?.env.example이 최신인가?pnpm verify 같은 로컬 검증 명령어를 만들고, GitHub Actions CI로 push/PR 시 자동 검증되게 하는 것이 좋습니다.workflow_dispatch 수동 실행부터 시작하면 좋고, 배포 후 Smoke Test는 반드시 사람이 확인해야 합니다./health, 핵심 이벤트 로그, 상담 신청 실패 로그, 관리자 로그인 실패 로그, Nginx/PM2/Docker 로그 확인법이 필요합니다.검증 자동화 → 프론트 배포 자동화 → 백엔드 관측성 → SSM 정리 → 작업 기록 자동화 순서가 가장 현실적입니다.