- 4개의 중복된 STT 시퀀스를 2개로 통합
- 녹음 시작 및 화자 인식 플로우 통합 (stt-녹음시작및인식.puml)
- 텍스트 변환 플로우 통합 - 실시간/배치 모드 포함 (stt-텍스트변환통합.puml)
- 중복 파일 4개 삭제 (음성녹음시작, 음성텍스트변환, 음성녹음인식, 텍스트변환)
- Azure Speech Service 설정 및 신뢰도 검증 기준 통일
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
주요 변경사항:
[Critical]
- API 엔드포인트 통일: POST /api/minutes/{minutesId}/finalize
- 이벤트 이름 표준화: MinutesFinalized
[Warning]
- API Gateway 라우팅 규칙 문서화 (외부 시퀀스 7개 파일)
- 대시보드 API 경로 통일: GET /api/dashboard
- AI 제안 병합 프로세스 상세 문서화
- 회의록 확정 검증 로직 5단계 상세화
[Minor]
- Redis 캐시 TTL 명시 (7개 파일, TTL 정책 표준화)
- 대시보드 페이지네이션 파라미터 추가
- 에러 응답 포맷 표준화 (14개 에러 응답)
총 31개 파일 수정, 34건의 개선 사항 적용
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
전체 5개 마이크로서비스의 내부 처리 흐름을 상세히 설계
[추가된 파일]
- Meeting Service: 6개 시나리오 (검증완료, 실시간수정동기화, 최종회의록확정, 충돌해결, 템플릿선택, 회의록목록조회)
- STT Service: 2개 시나리오 (음성녹음인식, 텍스트변환)
- User Service: 2개 시나리오 (사용자인증, 대시보드조회)
- Notification Service: 1개 시나리오 (알림발송)
[주요 설계 내용]
- Clean Architecture 적용 (Controller → Service → Domain → Repository)
- Cache-Aside 패턴 (Redis 기반 성능 최적화)
- Event-Driven Architecture (Azure Event Hub)
- Real-time Collaboration (WebSocket + OT 알고리즘)
- RAG 기능 (맥락 기반 AI)
[검증 결과]
- PlantUML 문법 검증: 모든 파일 통과 ✅
- 유저스토리 매칭: 100% 일치 ✅
- 아키텍처 패턴 준수: 완료 ✅
[병렬 처리]
- 서브 에이전트 3개로 병렬 작업 수행
- Meeting Service, AI Service, STT/User/Notification 동시 설계
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- API 경로 통일: /meetings → /minutes 리소스 기반 설계
- HTTP 메서드 표준화: 부분 수정 시 PUT → PATCH 변경
- 캐시 키 명명 규칙 통일: minutes:detail:, dashboard:, todo: 등
- 이벤트명 용어 통일: Transcript* → Minutes* 도메인 용어 적용
- DB 테이블명 정확성 개선: TranscriptVersion → MinutesVersion
수정 파일:
- 회의종료및최종확정.puml
- 회의록공유.puml
- Todo완료및회의록반영.puml
- 회의록상세조회및수정.puml
일관성 점수: 78/100 → 95/100
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- AI Service 이벤트 구독 제거
- MeetingCreated, MeetingEnded 구독 제거
- TranscriptReady만 구독하도록 단순화
- Notification Service 이벤트 구독 변경
- 기존 모든 이벤트 제거 (MeetingCreated, MeetingEnded, TranscriptCreated, TodoCreated, TodoCompleted, TranscriptShared)
- NotificationRequest 이벤트만 구독하도록 통합
- Meeting Service 이벤트 발행 단순화
- 발행 이벤트: MeetingEnded, NotificationRequest만 유지
- NotificationRequest에 발송수단, 대상자, 메시지 정보 포함
- 이벤트 발행/구독 매트릭스 업데이트
- 8개 이벤트 → 4개 이벤트로 단순화
- 주요 사용자 플로우 업데이트 (회의 예약, 종료, Todo 관리, 회의록 공유)
- Mermaid 다이어그램 이벤트 구독 매핑 수정
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- AI 서비스의 회의록 자동작성 내부 시퀀스 다이어그램 수정
- 프롬프트 생성, AI 요청, 응답 처리 로직 개선
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 총 21개 PlantUML 파일 생성 (Meeting 10개, AI 6개, STT 2개, Notification 3개)
- 서브 에이전트를 활용한 병렬 설계로 효율성 극대화
- 모든 시나리오는 유저스토리 및 외부 시퀀스와 1:1 매칭
- Controller → Service → Repository 계층 구조 명확히 표현
- Redis Cache, Azure Event Hubs 등 인프라 컴포넌트 표시
- 동기(→)/비동기(-->) 구분 명확
- 외부 참여자 <<E>> 표시 적용
- PlantUML 문법 검사 및 오류 수정 완료 (13개 파일 수정)
- par/and 블록 문법 오류 수정
- return 형식 적용으로 참여자 없는 화살표 오류 해결
설계 특징:
- 캐시 전략: Cache-Aside 패턴, TTL 관리, 즉시 무효화
- 비동기 처리: Azure Event Hubs 기반 이벤트 구독
- 실시간 협업: WebSocket 기반 동기화, 변경 델타 전송
- 데이터 일관성: 버전 관리, 양방향 연결, 트랜잭션 처리
추가 파일:
- claude/sequence-inner-design.md: 내부시퀀스설계 가이드
- tools/check-plantuml.ps1: PlantUML 문법 검사 스크립트
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 회의시작및실시간회의록작성.puml 병합 완료
- .gitignore 업데이트
- stt-ai 디렉토리 추가
- requirements.txt, .env.example 추가
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 메시지 텍스트의 JSON 데이터를 note 블록으로 분리
- MeetingStarted 이벤트: JSON을 note로 이동
- TranscriptReady 이벤트: JSON을 note로 이동
- TranscriptSummaryCreated 이벤트: JSON을 note로 이동
- WebSocket 메시지: JSON을 note로 이동
- 201 Created 응답: JSON을 note로 이동
PlantUML 렌더링 오류 해결
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 7개 주요 비즈니스 플로우 설계 완료
1. 회의예약및참석자초대 (2.5KB)
2. 회의시작및실시간회의록작성 (4.9KB)
3. 회의종료및최종확정 (4.6KB)
4. 회의록공유 (2.1KB)
5. Todo완료및회의록반영 (1.9KB)
6. 대시보드조회 (1.6KB)
7. 회의록상세조회및수정 (4.4KB)
- 설계 특징
- 병렬 처리 전략: 서브 에이전트 활용 동시 작성
- 5개 서비스 통합 아키텍처 (User, Meeting, STT, AI, Notification)
- Azure Event Hubs를 통한 Pub/Sub 이벤트 기반 통신
- Redis Cache-Aside 패턴을 통한 성능 최적화
- AI 병렬 처리 (회의록 정리 + 전문용어 설명 + 관련 자료 검색)
- WebSocket 실시간 동기화 (델타 전송)
- 작성원칙 준수
- 유저스토리와 1:1 매칭
- 논리 아키텍처에 정의된 참여자 표시
- UI/UX 사용자 플로우 참조
- 동기/비동기 통신 명확히 구분 (실선/점선)
- 한글 설명 추가
- PlantUML 표준 (!theme mono, 올바른 화살표 문법)
- PlantUML 문법 검증 완료 (수동)
- @startuml, !theme mono 사용
- 금지된 ..> 화살표 미사용
- 동기 (→), 비동기 (->>), 캐시 (-.->) 구분
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 메시지 브로커를 Azure Event Hubs로 변경
- Consumer Group을 통한 Pub/Sub 패턴 적용
- Partition 기반 부하 분산 및 순서 보장
- Event Hub 구성 정의 (meeting-events, transcript-events, todo-events)
- Throughput Units 자동 확장 설정 (2-10)
- Message Retention 1-7일 설정
- AMQP over TLS 암호화 적용
- ADR-002 업데이트 (Azure Event Hubs 선택 이유)
- Mermaid 다이어그램 업데이트
장점:
- 완전 관리형 서비스로 운영 부담 제거
- 초당 수백만 이벤트 고성능 스트리밍
- Azure Speech, Azure AI와 완벽한 생태계 통합
- Kafka 프로토콜 호환성
- 자동 확장 및 고가용성
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 기존 외부 시퀀스 설계 파일 삭제
- 유저스토리 수정
- 샘플 외부 시퀀스 파일 추가
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 가파팀 프로토타입 파일 삭제
- 가파팀 유저스토리 삭제
- 실시간 회의록 작성 플로우 설계서 추가 (Mermaid, Markdown)
- 백업 및 데이터 디렉토리 추가
- AI 데이터 샘플 생성 도구 추가
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
주요 변경사항:
- Meeting, Collaboration, Todo 서비스를 Meeting Service로 통합
- User Service 동기 참조 완전 제거 (프론트엔드에서 사용자 정보 전송)
- 서비스 간 동기 통신 제거로 성능 향상 (~100ms 지연 제거)
- 이벤트 발행/구독 매핑 단순화
통합된 Meeting Service 기능:
- 회의 및 회의록 관리
- Todo 관리 및 진행 상황 추적
- 실시간 협업 (WebSocket)
- 버전 관리 및 충돌 해결
- 회의/Todo 통계
성능 개선:
- User Service 동기 호출 제거: ~100ms 지연 제거
- Todo 처리: 서비스 간 통신 → 내부 메서드 호출 (10배 빠름)
- Collaboration: REST API 제거 → 내부 처리
변경된 파일:
- design/backend/logical/logical-architecture.mmd
- design/backend/logical/logical-architecture.md (ADR-007 추가)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 외부 시퀀스 설계 가이드 다운로드 (claude/sequence-outer-design.md)
- 외부 시퀀스 설계 디렉토리 생성 (design/backend/sequence/)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 8개 마이크로서비스 정의 (User, Meeting, STT, AI, RAG, Collaboration, Todo, Notification)
- 6개 클라우드 디자인 패턴 적용 (API Gateway, Queue-Based Load Leveling, Cache-Aside, Pub-Sub, Async Request-Reply, Health Monitoring)
- 논리 아키텍처 다이어그램 작성 (Mermaid)
- 서비스와 MQ 중심으로 간소화
- 외부 시스템 통합 표현
- Mermaid 문법 검증 완료
- 논리 아키텍처 설계서 작성 (58페이지)
- 서비스별 책임 및 아키텍처 상세 정의
- 서비스 간 통신 전략 (동기/비동기/캐시/Async Request-Reply)
- 주요 사용자 플로우 5가지
- 데이터 흐름 및 캐싱 전략
- 확장성 및 성능 고려사항
- 보안 고려사항
- 유저스토리 매핑 (24/24, 100% 커버리지)
- 다음 단계 및 구현 로드맵
- 아키텍처 결정 기록 (ADR)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- design-last, design-v1 디렉토리 정리
- UI/UX 프로토타입 개선 및 통합
- 스타일 가이드 및 테스트 결과 업데이트
- 유저스토리 목록 추가
- 불필요한 문서 제거
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 유저스토리 추가: UFR-MEET-070 [회의록대시보드]
- 핵심내용, 결정사항, Todo 진행상황, 참고자료 4개 섹션 정의
- AI, RAG, Todo 서비스 연동 명시
- 복잡도: M/21
- UI/UX 설계서 작성 (design/uiux/uiux.md)
- 회의록별 대시보드 화면 구조 상세 설계
- 5개 주요 영역: Header, 핵심내용, 결정사항, Todo 진행상황, 참고자료
- 스타일 시스템 정의 (색상, 타이포그래피, 간격, 반응형)
- WCAG 2.1 Level AA 접근성 가이드라인
- 인터랙션 및 데이터 요구사항 명세
- 에러 처리 및 성능 최적화 방안
- API 설계서 작성 (design/backend/api/meeting-dashboard-api.md)
- 5개 주요 엔드포인트 정의
- 대시보드 전체 조회
- 핵심내용 조회
- 결정사항 조회 (페이지네이션)
- Todo 진행상황 조회 (필터링)
- 참고자료 조회 (타입별 필터, 페이지네이션)
- 데이터 모델 정의 (TypeScript Interface)
- Redis 캐싱 전략 (섹션별 TTL 설정)
- 성능 최적화 (병렬 처리, 선택적 로딩, 인덱싱)
- 보안 (JWT 인증, Rate Limiting)
- 에러 코드 및 테스트 시나리오
차별화 포인트:
- 회의 결과를 한눈에 파악할 수 있는 통합 뷰
- Todo 진행상황 실시간 업데이트 (WebSocket)
- 관련 회의록 및 업무 이력 자동 연결 (RAG)
- Mobile First 반응형 설계
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>