본문으로 건너뛰기

HeyMoa 기술 문서

회의를 녹음하면 실시간으로 전사되고, 끝나면 개요·액션아이템·결정으로 정리된다. 정리된 회의록 위에서 챗봇에게 물어보고, 답을 Linear 이슈나 GitHub 이슈로 바로 내보낸다.

이 사이트는 지금 무엇이 어떻게 서 있는가를 적은 것이다. 기능이 구현돼 있다는 사실이 제품 방향의 근거가 되지는 않는다 — MVP 1은 완성된 제품이 아니라 PoC·베타테스트였다.

시스템

heymoa-web

Next.js 16 · React 19

브라우저 능력(마이크·AudioWorklet)이 필요하고 화면 수명주기가 서버와 다르다. 영속 저장소를 갖지 않는다.

heymoa-server

Kotlin · Spring Boot 3.5 · 도메인 12

인증·권한·도메인 상태가 한 곳에 모여야 감사와 잠금이 성립한다. public edge 전부를 혼자 진다.

heymoa-ai

Python · FastAPI · LangGraph

LLM 호출은 초 단위로 느리고 실패율이 다르다. 202로 끊고 callback으로 되돌려준다.

어디부터 읽나

궁금한 것문서
사용자가 무엇을 보나, URL은 어떻게 생겼나/architecture/information-architecture
코드를 어디에 넣나, 이 import가 허용되나/architecture/application-architecture
무엇이 무엇과 붙어 있나, 왜 여기서 끊겼나/architecture/system-architecture
어디에 떠 있나, 배포는 어떻게 되나/architecture/cloud-architecture
API·이벤트 스키마/contracts/
계약을 어떻게 쓰나 (식별자·오류·멱등성·SSE 종료)/interfaces/
도메인 용어와 권한/domain/domain-model
왜 그렇게 정했나/adr/
누가 무엇을 맡나/team/

지금 열려 있는 큰 것 넷

#무엇어디에
AI 산출물의 원문 근거 연결이 아직 없다설계(APP-391)는 끝났고 구현 전문서
server → ai 경계에 애플리케이션 인증이 없다지금은 보안그룹 하나가 막고 있다문서
앱 인스턴스 1개가 기능 정확성의 조건이다JVM 내부 STOMP 브로커 — 스케일아웃하면 팬아웃이 반쪽 난다문서
IaC가 없다`heymoa-infra`는 legacy이고 실제 형상과 다르다문서

추정을 사실로 승격하지 않는다. 각 문서는 확인한 사실 / 설계 전제(뒤집힐 조건과 함께) / 미확인을 구분해서 적는다.