project.crowny.org 대화형 이슈 엔진 v4.1
날짜: 2026-05-02
개요
project.crowny.org에 LLM 대화방식 이슈 관리 시스템 추가. 사용자가 자연어로 이슈를 등록/조회/검색/해결할 수 있는 규칙 기반 챗봇.
작업 내역
1. 백엔드 — 대화형 이슈 엔진 (server.js)
규칙 기반 의도 파싱 + 상태 머신
- 6가지 의도 감지: help, create, list, search, resolve, status
- 키워드 매칭 + 우선순위 점수 시스템
- 대화 상태 머신: idle → creating (confirm_desc / select_kind / edit_desc) → idle
- 자동 심각도/종류 감지 (한글 키워드 매핑)
- 이슈 생성 시 issueToCost() 비용 자동 연결
API 2종 추가:
POST /api/projects/:id/issue-chat — 대화 메시지 (message + state)
GET /api/projects/:id/issue-chat/history — 대화 이력
셀DB 테이블:
issue_chats — projectId, userId, role(user/assistant), text, meta, at
2. 프론트엔드 — 플로팅 채팅 위젯
- 우하단 원형 버튼 (accent 색상, 그림자)
- 380px 채팅 패널 (말풍선, 타이핑 애니메이션)
- 추천 버튼 (클릭하면 자동 전송)
- 대화 초기화, 닫기
- 프로젝트 뷰에서만 표시
- 모바일 반응형 (480px 이하)
3. 한선씨 동반
이슈대화엔진.한선 — 의도추출/심각도추출/종류추출 3함수
- hanseonc_high 컴파일 성공, crownyc run 실행 확인
- 크라우니코드 에이전트 학습 완료
테스트 결과
E2E 8단계 대화 플로우 모두 성공:
- 초기 인사 → 사용법 안내
- "결제 시스템에서 카드 결제가 안돼요" → 이슈 생성 시작 (자동 감지: 고객문의, 보통)
- "긴급으로 해줘" → 심각도 높음 변경
- "종류 변경해줘" → 7가지 선택지 제시
- "2" → 추가 요청으로 변경
- "설명 수정할게" → 편집 모드
- 새 설명 입력 → 확인
- "네" → 이슈 등록 완료 (비용 자동 연결)
추가 검증: 목록 조회, 키워드 검색, 이슈 해결, 현황 조회 모두 정상.
관련 파일
/Users/ef/crowny-project/server.js — 백엔드 엔진 (processIssueChat 함수 + 의도/심각도/종류 규칙)
/Users/ef/crowny-project/public/js/app.js — 프론트엔드 채팅 위젯
/Users/ef/crowny-project/public/css/style.css — 채팅 UI 스타일
/Users/ef/crowny-project/이슈대화엔진.한선 — 한선씨 동반
/Users/ef/crowny-project/CLAUDE.md — API 문서 업데이트
잔여 이슈
- 브라우저 UI 직접 테스트 필요 (API는 모두 검증 완료)
- 이슈 수정 기능 (제목/설명/심각도 변경) 대화로 추가 가능
- 이슈 통계 차트 (대화 내 인라인 시각화) 향후 고려