From a190ce34224c4bfc86eb3ab8ed30f178ab70664a Mon Sep 17 00:00:00 2001 From: kyeongmin Date: Thu, 5 Mar 2026 11:55:05 +0900 Subject: [PATCH] =?UTF-8?q?=F0=9F=93=96=20Comprehensive=20Wiki=20Migration?= =?UTF-8?q?=20from=20Prompts=20to=20=5FGeulbeot?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- %EC%8B%A4%ED%96%89%EC%9B%90%EC%B9%99.md | 92 +++++++ Judge-Standard.-.md | 342 ++++++++++++++++++++++++ Organize-standard.-.md | 217 +++++++++++++++ Step-10.-.md | 2 +- 4 files changed, 652 insertions(+), 1 deletion(-) create mode 100644 %EC%8B%A4%ED%96%89%EC%9B%90%EC%B9%99.md create mode 100644 Judge-Standard.-.md create mode 100644 Organize-standard.-.md diff --git a/%EC%8B%A4%ED%96%89%EC%9B%90%EC%B9%99.md b/%EC%8B%A4%ED%96%89%EC%9B%90%EC%B9%99.md new file mode 100644 index 0000000..566d92a --- /dev/null +++ b/%EC%8B%A4%ED%96%89%EC%9B%90%EC%B9%99.md @@ -0,0 +1,92 @@ +# 실행 원칙 (Execution Rules) + +## 기본 원칙 + +> 위키를 읽고 실행한다. 판단이 모호하면 Judge-Standard를 다시 읽는다. +> 기준서(Judge-Standard, Organize-Standard)는 절대 수정하지 않는다. +> Step 위키만 이슈 피드백을 받아 개선된다. + +--- + +## 1. 실행 순서 + +1. Judge-Standard 위키 숙지 +2. Organize-Standard 위키 숙지 +3. Step-00부터 Step-12까지 순서대로 실행 +4. 현재 Step 통과 기준 충족 후에만 다음 Step으로 이동 + +--- + +## 2. 진행현황 이슈 관리 + +- "진행현황" 이슈가 없으면 먼저 생성한다 +- 각 Step 완료 후 해당 Step의 코멘트 템플릿을 채워 "진행현황" 이슈에 코멘트로 등록한다 +- 코멘트는 누적한다. 기존 코멘트를 수정하거나 삭제하지 않는다 + +### 코멘트 형식 +``` +### [Step-XX] 단계명 - YYYY-MM-DD + +(Step 위키의 코멘트 템플릿 내용 채워서 작성) + +→ 결과: 통과 / 재실행 / 이슈 #번호 등록 후 계속 진행 +``` + +--- + +## 3. 문제 발생 시 처리 절차 + +**① 별도 이슈 생성** +- 제목: [Step-XX] 문제 내용 요약 +- 본문: 문제 상황 구체적으로 기술 + +**② 이슈에 코멘트 1 — 원인 분석** +``` +## 원인 분석 +- Step이 적용되지 않은 이유: +- Step 위키의 어느 부분이 부족했는가: +- Judge-Standard 또는 Organize-Standard와의 충돌 여부: +``` + +**③ 이슈에 코멘트 2 — 변경 대상 및 이유** +``` +## 변경이 필요한 부분 +- 변경 대상: Step-XX 위키의 어느 섹션 +- 현재 내용: +- 변경 제안: +- 변경 이유: +- 다른 Step 영향 여부: +``` + +**④ 이슈에 코멘트 3 — 해결 방향 및 임시 조치** +``` +## 해결 방향 및 임시 조치 +- 문제 항목 임시 처리: +- Step 위키 반영 필요 여부: 예 / 아니오 +- 반영 후 재실행 필요 여부: 예 / 아니오 +- 사용자 판단이 필요한 사항: +``` + +**⑤ 해결 전까지 해당 항목은 _검토필요로 격리하고 다음 Step을 계속 진행한다** + +--- + +## 4. 승인이 필요한 Step + +아래 Step은 결과를 사용자에게 보고하고 승인 후 다음 Step으로 이동한다 + +| Step | 승인 내용 | +|------|-----------| +| Step-01 | 수집된 파일 목록 | +| Step-03 | 캡처된 파일 목록 | +| Step-04 | 블록 분류 결과 | + +나머지 Step은 자율 실행 후 진행현황 이슈에 코멘트만 등록한다 + +--- + +## 5. 판단 단위 원칙 + +- 파일 전체를 하나의 단위로 보지 않는다 +- 반드시 블록 단위(함수/변수/섹션/태그)로 해체 후 각 블록을 개별 판단한다 +- 하나의 파일에서 프롬프트, 도메인, 코드도메인, 제외가 동시에 나올 수 있다 \ No newline at end of file diff --git a/Judge-Standard.-.md b/Judge-Standard.-.md new file mode 100644 index 0000000..cb29d6d --- /dev/null +++ b/Judge-Standard.-.md @@ -0,0 +1,342 @@ +# ⚖️ 프롬프트/도메인 판단 기준 (Judge Standard v2) + +> **핵심 원칙 1:** 판단 단위는 "파일"이 아닌 **"블록"**이다. +> 하나의 파일 안에 프롬프트, 도메인, 코드도메인, 제외 대상이 동시에 존재할 수 있다. +> +> **핵심 원칙 2:** 분류 먼저, 목적 판단은 나중이다. +> 블록의 성격(무엇인가?)을 확정한 뒤, 목적(어디로 가는가?)을 판단한다. +> +> **핵심 원칙 3:** 사고는 영어로, 폴더명은 한글로. +> 내부 판단 로직과 기준은 영어 용어를 사용하되, 최종 생성되는 모든 폴더명은 한글로 표기한다. + +--- + +## 1. 3대 분류 정의 + +| 구분 | 정의 | 핵심 질문 | +|------|------|-----------| +| **프롬프트 (Prompt)** | AI의 사고 논리와 행동 양식을 정의하는 자연어 지시문 | "이 텍스트를 AI에게 주면 AI가 특정 행동을 시작하는가?" | +| **도메인 (Domain)** | AI가 작업 수행 시 참조해야 할 모든 재료. 전문 지식·규정·수치 텍스트 및 CSS/HTML/JS 코드 포함 | "이 내용은 AI가 작업할 때 참고해야 할 재료인가?" | +| **코드도메인 (CodeDomain)** | 목적별로 재사용 가능한 Python 함수·클래스 단위 코드 | "이 Python 코드는 프로젝트가 바뀌어도 그대로 가져다 쓸 수 있는가?" | +| **제외** | 일회성 실행 로직, 환경설정, 라이브러리, 단순 데이터 | "위 세 가지 중 어느 것도 해당하지 않는가?" | + +--- + +## 2. 판단 순서 (Decision Flow) + +> **반드시 이 순서대로 진행한다. 순서를 바꾸지 않는다.** + +``` +① 파일 수집 + └─ 라이브러리(node_modules, site-packages, venv) 경로는 이 단계에서 물리적 제외 + +② 전체 텍스트 캡처 + └─ 인코딩 보정 (CP949 ↔ UTF-8) 수행 + └─ 바이너리 파일(.png, .exe, .zip 등)은 이 단계에서 제외 + +③ 블록 단위 해체 + └─ 파일을 통째로 보지 않는다 + └─ 함수/변수/클래스/섹션/태그 단위로 분리 + +④ 블록별 분류 판단 (아래 3번 섹션 기준 적용) + └─ 프롬프트인가? → 프롬프트/ + └─ 도메인인가? → 도메인/ + └─ 코드도메인인가? → 코드도메인/ + └─ 해당없음? → 제외 + 로그 기록 + +⑤ 목적 판단 (아래 4번 섹션 기준 적용) + └─ 이 블록은 어느 목적 폴더로 들어가는가? + └─ 목적은 미리 고정하지 않는다 — 블록 내용을 읽고 귀납적으로 결정 + +⑥ 정제 및 저장 + └─ 프롬프트: 코드 불순물 제거, 자연어만 남김 + └─ 도메인: 원본 내용 그대로 보존 + └─ 코드도메인: 함수·클래스 단위로 독립 완결되도록 정리 +``` + +--- + +## 3. 분류별 판단 기준 상세 + +### 3-1. 프롬프트 (Prompt) 판단 기준 + +다음 **3가지를 모두** 충족해야 프롬프트로 인정한다. +하나라도 없으면 프롬프트 자격 없음 → 도메인 판단으로 이동. + +| 요소 | 설명 | 예시 | +|------|------|------| +| **AI 수신자** | AI를 명시적으로 지칭 | "당신은 ~입니다", "너는 ~역할이야", `{"role": "system", ...}` | +| **행동 지시** | 구체적인 작업 또는 I/O 구조 지시 | "다음 데이터를 분석하여 표로 출력하라" | +| **가변 블록** | 데이터를 교체하며 반복 사용 가능 | `{content}`, `[여기에 입력]`, `{{변수명}}` | + +--- + +### 3-2. 도메인 (Domain) 판단 기준 + +다음 **두 그룹 중 하나** 에 해당하면 도메인이다. + +**그룹 A — 텍스트 지식** + +| 유형 | 설명 | 예시 | +|------|------|------| +| 법규·규정 | 조항 번호가 포함된 법령·기준 텍스트 | "측량법 시행령 제12조: ..." | +| 전문 수치 | 도량형, 설계 기준값, 허용 오차 등 | "수평각 오차 허용범위 ±10″" | +| 업무 절차 | 특정 분야의 표준 작업 절차 | "GNSS 측량 성과 검사 절차: 1. ..." | +| 기술 용어 | 분야별 용어 정의 및 해설 | "삼각측량: 세 점의 각도를 측정하여..." | + +**그룹 B — 코드 재료 (CSS / HTML / JS)** + +| 유형 | 설명 | 예시 | +|------|------|------| +| 인쇄·레이아웃 CSS | A4 규격, 인쇄용 스타일 | `@page`, `@media print`, `210mm` 포함 블록 | +| 보고서 HTML 구조 | 반복 사용 가능한 레이아웃 뼈대 | 섹션 구조, 헤더·푸터 템플릿 | +| UI 컴포넌트 CSS/HTML | 버튼, 표, 배지 등 재사용 UI 요소 | 독립 동작하는 컴포넌트 단위 | +| JS 로직 | 페이지네이션, 인쇄 트리거 등 | `function` 또는 `const fn =` 단위 독립 함수 | + +> **판단 기준:** "이 CSS/HTML/JS를 다른 문서나 프로젝트에 그대로 가져다 쓸 수 있는가?" +> YES → 도메인 / NO → 제외 + +--- + +### 3-3. 코드도메인 (CodeDomain) 판단 기준 + +**Python 코드만** 해당한다. CSS/HTML/JS는 도메인으로 분류. + +다음 **2가지를 모두** 충족해야 코드도메인으로 인정한다. + +| 요소 | 설명 | +|------|------| +| **재사용 가능성** | 프로젝트·문서가 바뀌어도 그대로 또는 최소 수정으로 사용 가능 | +| **독립 완결성** | `def` 또는 `class` 단위로 떼어내도 의미와 기능이 완결됨 | + +**해당 예시:** +- HWPX 텍스트 추출 함수 +- PDF 파싱 유틸 함수 +- 인코딩 감지·변환 함수 +- HTML 생성 헬퍼 클래스 + +**비해당 예시:** +- `if __name__ == "__main__":` 블록 → 제외 +- API 키 설정, 경로 설정 → 제외 +- 외부 라이브러리 호출만 하는 래퍼 → 제외 + +--- + +### 3-4. 제외 판단 기준 + +다음 중 하나라도 해당하면 즉시 제외 + 로그 기록. + +| 유형 | 로그 코드 | 예시 | +|------|-----------|------| +| 환경변수·API 키·경로 설정 | `[SKIP: Config]` | `API_KEY = "sk-..."`, `BASE_DIR = ...` | +| 일회성 실행 블록 | `[INFO: No Reuse Value]` | `if __name__ == "__main__":` | +| 외부 라이브러리 코드 | `[SKIP: Library]` | `node_modules`, `site-packages` 하위 전체 | +| 단순 데이터·로그 출력 | `[INFO: Data Only]` | CSV 데이터, print 로그, 결과 출력물 | +| 50자 미만 단편 | `[MANUAL: Too Short]` | 맥락 없는 짧은 문장·변수명 | + +--- + +## 4. 목적 판단 기준 + +> **목적은 미리 고정하지 않는다.** +> 블록 내용을 읽고, 핵심 동사+명사를 추출하여 귀납적으로 목적 폴더명을 결정한다. + +### 4-1. 목적 판단 절차 + +``` +① 블록의 핵심 과업을 한 문장으로 요약 + 예: "A4 HTML 보고서를 생성한다" + +② 핵심 동사+명사 추출 + 예: 생성 + 보고서 → "문서생성" + +③ 기존 목적 폴더 중 일치하는 것이 있는가? + YES → 기존 폴더에 수납 + NO → 새 목적 폴더 생성 (한글로) +``` + +### 4-2. 목적 폴더명 규칙 + +| 원칙 | 설명 | +|------|------| +| 한글 행위동사+명사 | "무엇을 하는가"가 폴더명에 드러나야 함 | +| `기타`, `일반`, `General` 금지 | 목적 불명확 → `[MANUAL: Review Required]`로 격리 | +| 10개 이상 누적 시 하위 폴더 검토 | 세분화 필요 여부 판단 | + +**목적 폴더명 예시:** + +| 핵심 과업 | 폴더명 | +|-----------|--------| +| HTML 보고서 생성 | `문서생성` | +| 데이터 분석·요약 | `분석` | +| 반복 작업 자동화 | `자동화` | +| RAG용 지식 정제 | `RAG화` | +| 웹 데이터 수집 | `크롤링` | +| 문서·텍스트 개선 | `정제` | +| 시스템 화면 구성 | `시스템UI` | +| HWPX 문서 처리 | `한글문서처리` | + +> 위 예시는 참고용이며, 실제 파일 내용에 따라 추가·변경된다. + +--- + +## 5. 최종 폴더 구조 + +``` +Prompts/ +├── 문서생성/ +│ ├── 프롬프트/ +│ │ └── Claude_A4보고서생성_v01.md +│ ├── 도메인/ +│ │ ├── A4보고서/ +│ │ │ ├── CSS_인쇄레이아웃_v01.md +│ │ │ ├── HTML_보고서구조_v01.md +│ │ │ └── JS_페이지네이션_v01.md +│ │ └── 측량규정/ +│ │ └── 측량법시행령_2025_v01.md +│ └── 코드도메인/ +│ └── HWPX_텍스트추출_v01.py +│ +├── 분석/ +│ ├── 프롬프트/ +│ ├── 도메인/ +│ └── 코드도메인/ +│ +├── 자동화/ +│ ├── 프롬프트/ +│ ├── 도메인/ +│ └── 코드도메인/ +│ +└── _검토필요/ ← MANUAL 대상 격리 폴더 + └── [MANUAL: ...] +``` + +--- + +## 6. 파일 유형별 추출 방식 + +| 확장자 | 추출 방법 | 추출 단위 | +|--------|-----------|-----------| +| `.py` | 멀티라인 문자열(`"""..."""`), `messages` 리스트, `PROMPT_` 접두사 변수, `def`·`class` 블록 | 변수값 / 함수 / 클래스 단위 | +| `.js` / `.ts` | 템플릿 리터럴(`` `...` ``), `prompt:` 키값, `system:` 키값, `function` 단위 | 함수 / 변수 블록 단위 | +| `.html` | `