주요 변경사항:
1. 최근 회의 그리드 레이아웃 3열로 제한 (가로 폭 완전히 채우도록 개선)
2. 최근 회의에 작성중/확정완료 상태 회의 표시 추가
3. 버튼 표시 규칙 개선:
- 진행중: 참여하기 버튼
- 예정: 버튼 없음 (카드 클릭으로 수정 화면 이동)
- 작성중/확정완료: 버튼 없음 (카드 클릭으로 상세조회 이동)
4. 샘플 데이터에 작성중 회의 추가
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
MVP 스코프 축소(v1.5.2)에 따라 Todo 관리 기능 제거
- 데스크톱 사이드바에서 'Todo 관리' 메뉴 항목 삭제
- 모바일 하단 네비게이션에서 'Todo' 메뉴 항목 삭제
- 회의록 관련 기능만 유지
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 폰트 크기 통일: 다른 화면들(회의종료, 회의록수정, 회의록 상세조회)과 동일한 폰트 크기로 조정
- 회의 기본정보 영역 개선:
* 라벨 너비 고정 (모바일 70px, 데스크톱 100px)
* 라벨과 값 사이 구분선 추가 (border-right)
* 모든 행의 구분선 위치 정렬
- 가독성 향상: align-items를 flex-start로 변경하여 여러 줄 콘텐츠에 대응
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Todo 진행상황 → Todo 리스트 명칭 통일
- Todo 리스트 카드 스타일 개선 (플랫 디자인)
- 관련회의록 카드 클릭 피드백 추가 (hover/active)
- 대시보드 섹션 폰트 사이즈 일관성 확보 (제목 16px, 메타 14px)
- 관련회의록 카드 테두리 및 그림자 스타일 강화
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
회의록 수정 화면 UI/UX 개선 (유저스토리 v2.4.0 반영)
- AI 재생성 버튼 스타일 통일 (btn-secondary → btn-primary)
- 안건별 검증완료 UI 단순화
- 참석자: 체크박스만 표시
- 생성자: 검증완료 시 잠금해제 버튼 표시
- .creator-only CSS 클래스 추가 (역할 기반 UI 제어)
관련 파일:
- design/uiux/prototype/11-회의록수정.html
- design/uiux/uiux.md (v1.5.2 변경 이력 업데이트)
- design/userstory.md (v2.4.0 문서 이력 업데이트)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 02-대시보드: 회의 목록 표시 개선
- 05-회의진행: 실시간 협업 기능 반영
- 10-회의록상세조회: 최종 확정 후 조회 화면 업데이트
- 11-회의록수정: 안건 기반 충돌 방지 메커니즘 추가
- design/uiux/uiux.md: 유저스토리 v2.3.0 기준 UI/UX 설계서 업데이트
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
UFR-MEET-030 회의 진행 화면 개선
- AI 제안 탭 내 개인 메모 작성 기능 명확화 (수동 저장만 지원)
- 하단 고정 버튼 역할별 차별화
- 회의 생성자: 일시정지/녹음재개 + 회의 종료
- 회의 참석자: 회의 나가기
- 예외처리 추가: 회의 종료/나가기 확인 모달
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- ai-python/app/config.py 파일에 민감한 정보 포함
- API 키와 연결 문자열 보호를 위해 버전 관리에서 제외
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
주요 구현사항:
- 5초마다 Redis 오디오 버퍼를 배치 처리하여 텍스트 변환
- WebSocket 실시간 오디오 수신 및 Redis Stream 저장
- Azure Speech Service 연동 (시뮬레이션 모드 포함)
- Event Hub 이벤트 발행 (AI 서비스 연동)
아키텍처:
Frontend (오디오 캡처)
→ WebSocket → STT Service
→ Redis Stream (버퍼)
→ @Scheduled(5초) 배치 처리
→ Azure Speech API
→ DB 저장 + Event Hub 발행
→ AI Service (텍스트 분석)
핵심 컴포넌트:
1. AudioWebSocketHandler
- WebSocket 연결 관리
- JSON/Binary 메시지 처리
- Redis Stream에 오디오 저장
2. AudioBufferService
- Redis Stream 오디오 버퍼링
- 청크 조회 및 병합
- 활성 회의 관리
3. AzureSpeechService
- Azure Speech SDK 연동
- 배치 단위 음성 인식
- 시뮬레이션 모드 지원
4. AudioBatchProcessor
- @Scheduled(5초) 배치 작업
- 오디오 → 텍스트 변환
- TranscriptSegment DB 저장
- Event Hub 이벤트 발행
배치 방식의 장점:
✅ 비용 최적화: Azure API 호출 1/5 감소
✅ 문맥 이해: 5초 분량 한 번에 처리로 정확도 향상
✅ AI 효율: 일정량 텍스트 주기적 생성
✅ 안정성: 재시도 로직 구현 용이
설정:
- Azure Speech: eastus, ko-KR
- Redis: 포트 6379, DB 3
- WebSocket: /ws/audio
- 배치 주기: 5초 (고정)
다음 단계:
- 프론트엔드 WebSocket 클라이언트 구현
- 실제 Azure Speech API 키 설정
- E2E 통합 테스트 (STT → AI → Frontend)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
회의 종료 화면 정책 명확화 및 실시간 협업 충돌 방지 개선
- UFR-MEET-040: 회의 종료 화면 확인 전용 정책 추가 및 바로 최종 확정 옵션 추가
- UFR-COLLAB-020: 안건 기반 충돌 방지 메커니즘 강화
- UFR-MEET-050: 회의 종료 화면 바로 확정 시나리오 추가
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 유저스토리 v2.3.0 업데이트 반영
- UI/UX 프로토타입 개선사항 반영
- Meeting 서비스 기능 추가 및 개선
- Notification 서비스 개선
- User 서비스 LDAP 인증 추가
- 공통 모듈 에러 코드 추가
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- AI 서비스 CORS 설정 업데이트
- 회의 진행 프로토타입 수정
- 빌드 리포트 및 로그 파일 업데이트
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
주요 변경사항:
- AI 서비스 Java → Python (FastAPI) 완전 마이그레이션
- 포트 변경: 8083 → 8086
- SSE 스트리밍 기능 구현 및 테스트 완료
- Claude API 연동 (claude-3-5-sonnet-20241022)
- Redis 슬라이딩 윈도우 방식 텍스트 축적
- Azure Event Hub 연동 준비 (STT 텍스트 수신)
프론트엔드 연동 지원:
- API 연동 가이드 업데이트 (Python 버전 반영)
- Mock 데이터 개발 가이드 신규 작성
- STT 개발 완료 전까지 Mock 데이터로 UI 개발 가능
기술 스택:
- Python 3.13
- FastAPI 0.104.1
- Anthropic Claude API 0.42.0
- Redis (asyncio) 5.0.1
- Azure Event Hub 5.11.4
- Pydantic 2.10.5
테스트 결과:
- ✅ 서비스 시작 정상
- ✅ 헬스 체크 성공
- ✅ SSE 스트리밍 동작 확인
- ✅ Redis 연결 정상
다음 단계:
- STT (Azure Speech) 서비스 연동 개발
- Event Hub를 통한 실시간 텍스트 수신
- E2E 통합 테스트 (STT → AI → Frontend)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
회의 종료 화면 정책 명확화 및 실시간 협업 충돌 방지 개선
- UFR-MEET-040: 회의 종료 화면 확인 전용 정책 추가 및 바로 최종 확정 옵션 추가
- UFR-COLLAB-020: 안건 기반 충돌 방지 메커니즘 강화
- UFR-MEET-050: 회의 종료 화면 바로 확정 시나리오 추가
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>