Files
portfolio-hub/.github/prompts/draft-design.prompt.md
T
genichin 3a1afaac46 Squashed '.vendor/stage-pilot/' changes from c24b25d..3a72413
3a72413 Merge pull request #5 from genichin/copilot/add-verification-steps-sdlc-prompt
d362b6b feat: add verification stage to run-sdlc pipeline
9b52ae1 Initial plan
893d465 Merge pull request #3 from genichin/copilot/add-sdlc-prompt-feature
57b3941 feat: add /run-sdlc prompt for automated SDLC pipeline execution
27396ab Initial plan
6979011 Clarify draft creation for new SDLC prompts
1c5557b fix(bootstrap): sdlc 디렉토리 구조 단순화 및 summary 템플릿 추가
af343e5 docs(prompt): SDLC 프롬프트 저장소 현황 탐색 및 대조 절차 강화
cc55e06 chore: Release/Operations 프로세스 템플릿 및 프롬프트 추가 및 README 최신화
386695b commit
4533017 draft
82b7690 draft-design
0503411 draft
9984db0 confirm-discovery, draft-planning, review-planning 명령 추가
cba64f0 add confirm-discovery prompt
9391537 draft
58f2de8 feat: execute implementation during run-sdlc flow
693e3f6 feat: auto-create downstream drafts in run-sdlc
404bc63 docs: translate SDLC orchestration prompts to English
9018e8f feat: add SDLC scaffold and sequential run commands
d60e21c docs: clarify when to create a new discovery
0629eee feat: add operation issue triage prompt
cdc8d87 feat: make update.sh auto-overwrite by default with --no-overwrite option
ead06c2 chore: add execute tool to all prompt files

git-subtree-dir: .vendor/stage-pilot
git-subtree-split: 3a72413acd2edd95053631f900d3c99c1caef359
2026-04-23 04:31:42 +00:00

4.8 KiB

name, description, argument-hint, agent
name description argument-hint agent
draft-design Create a 3_design.md draft from a confirmed Planning document 예: sdlc-001 또는 docs/sdlc/sdlc-001_20260417_stage-pilot/2_planning.md agent

확정된 Planning 문서를 기반으로 Design 초안(3_design.md)을 생성한다.

목표:

  • docs/sdlc/<CYCLE_ID>/3_design.md를 생성한다.
  • 2_planning.md의 확정 내용(태스크, 요구사항, 검증 계획, 리스크)을 Design 초안의 입력으로 사용한다.
  • 추론 가능한 항목은 초안 문장으로 채우고, 사용자 결정이 필요한 항목만 플레이스홀더로 남긴다.

실행 절차

1. 입력 해석

  • 사용자가 CYCLE_ID(예: sdlc-001)를 제공했으면 docs/sdlc/ 아래에서 해당 패턴으로 시작하는 폴더를 찾아 2_planning.md 경로를 확정한다.
  • 사용자가 파일 경로를 직접 제공했으면 해당 경로의 상위 폴더에서 2_planning.md를 찾는다.
  • 파일이 없으면 사용자에게 피드백하고 중단한다.

2. Planning 인계 조건 확인

2_planning.md에서 아래 조건을 확인한다. 미충족 시 중단하고 이유를 보고한다.

항목 기준
문서 상태 confirmed여야 한다
Ready for Design true여야 한다
3_design.md 존재 여부 이미 존재하면 덮어쓰기 의사를 확인하고, 의사 표현이 없으면 중단한다

3. Planning 내용 추출

2_planning.md와 1_discovery.md에서 아래 항목을 읽어 Design 초안 작성에 사용한다.

  • 이슈명 (# 0의 이슈명:)
  • 문서 ID / CYCLE_ID
  • 태스크 전체 목록 및 담당자 (# 2)
  • 태스크별 DoD (# 2)
  • FR/NFR 목록 (# 1)
  • 검증 계획 개요 (# 6)
  • 리스크 및 완화 방안 (# 7)
  • Deferred 처리된 오픈 질문 (# 7)
  • 외부 의존성 및 기술/환경 제약 (# 5)

4. Design 초안 작성 원칙

  • Planning 태스크 구조와 FR/NFR을 바탕으로 각 태스크의 설계 방향, 변경 대상, 입출력을 초안으로 채운다.
  • 저장소 구조, 파일 경로, 기존 코드 패턴을 실제로 확인해 변경 대상(DESIGN_TARGET_N)을 구체적으로 명시한다.
  • 아래 항목은 추론 불가 또는 사용자 확인 필요이므로 플레이스홀더로 남긴다.
    • 외부 시스템 계약이 미확정인 인터페이스
    • Freeze 확정 담당자 ({{CONFIRMED_BY:TBD}})
  • 보안 고려사항(# 5)은 변경 내용을 기준으로 OWASP Top 10 항목을 점검해 해당/비해당과 근거를 채운다.

5. 자동으로 채워야 하는 항목

항목 채움 방법
# 0 메타데이터 현재 시각, CYCLE_ID, 이슈명, Planning 경로를 자동 입력
# 1 Planning 인계 요약 Planning # 2 태스크 목록 이식, # 7의 Deferred 항목 이식
# 2 아키텍처/구조 개요 FR/NFR과 저장소 구조를 기반으로 변경 영향 범위 초안 작성
# 2 주요 컴포넌트 실제 파일/모듈/디렉터리 구조를 확인해 영향 컴포넌트 나열
# 3 상세 설계 각 T-N 태스크별 설계 방향, 변경 대상, 입출력 초안 작성
# 4 인터페이스 정의 FR/NFR 기반으로 필요한 API, 함수 시그니처, 스키마 초안 작성
# 5 보안 고려사항 변경 내용 기준 OWASP 항목 점검, 해당/비해당 및 대응 방안 채움
# 6 리스크 Planning 이월 리스크 중 Design 관련 항목 포함 및 신규 Design 리스크 추가
# 8 파일 처리 결과 생성 결과와 참조 문서 경로 채움
# 9 사용자 결정 필요 미확정 인터페이스, 외부 시스템 계약 등 사용자 결정 필요 항목 정리
# 10 Freeze 플래그 Handoff Decision: 보류, Ready for Implementation: false 초기값 입력

6. 파일 생성

  • 경로: docs/sdlc/<CYCLE_ID>/3_design.md
  • 기반: .github/templates/sdlc/3_design.md를 구조 기준으로 사용하되, 위 작성 원칙에 따라 채운 초안을 생성한다.

7. 결과 보고

응답에 아래 내용을 포함한다.

  • 생성 결과: 파일 경로
  • 채워진 항목 요약: 자동 추론으로 채운 주요 내용 목록
  • 사용자 결정 필요 항목: # 9에 정리된 항목 요약
  • 다음 단계 안내: Design 검토 후 /confirm-design <CYCLE_ID> 실행 안내

중요 규칙

  • Planning이 confirmed 상태가 아니면 초안을 생성하지 않는다.
  • 이미 3_design.md가 존재하는 경우 사용자 명시 없이 덮어쓰지 않는다.
  • 변경 대상 경로/파일명은 저장소를 직접 확인해 실제 존재하는 경로를 사용한다. 추측으로 채우지 않는다.
  • 보안 고려사항은 "비해당"이라도 근거를 한 줄 이상 남긴다.
  • 현재 시각은 시스템 또는 컨텍스트에서 제공된 날짜/시간을 사용한다.