발견한 문제: POST /conversations/:id/messages가 sender_mode=twin을 검증 없이 그대로 저장·브로드캐스트하고 있었음 -- 에스컬레이션 게이트는 초안 생성(/draft) 경로에만 있었고 실제 발송 경로엔 없어서, 클라이언트가 /draft를 거치지 않고 바로 twin 메시지를 보내면 안전선을 완전히 우회할 수 있었다. - ai-service: /draft와 별개인 POST /escalate/check 하드게이트 엔드포인트 추가 - core-backend: AIServiceClient.checkEscalation 추가, 메시지 저장 직전에 twin 발송이면 무조건 호출하도록 해서 발송이 실제로 일어나는 단 하나의 지점에서 막음. AI 서비스 응답 불가 시 fail-safe로 발송 차단. 에스컬레이션되면 저장/브로드캐스트 없이 escalation_logs에만 기록. 사람이 직접 보내는 메시지는 게이트 대상 아님 - core-backend: DELETE /users/:id 추가 -- 유저가 걸린 모든 행(트윈 설정· 화이트리스트·연락처·대화참여·메시지·에스컬레이션로그·유저 본인)을 트랜잭션으로 삭제 (tech-design.md §5 "사용자가 언제든 초기화 가능") - 온디바이스 암호화·데이터 흐름 대시보드는 Flutter 클라이언트 책임이라 이 환경에서는 보류, roadmap.md에 근거 남김 |
||
|---|---|---|
| ai-service | ||
| backend | ||
| core-backend | ||
| docs | ||
| poc/tone-corpus | ||
| .env.example | ||
| .gitignore | ||
| AGENTS.md | ||
| CLAUDE.md | ||
| README.md | ||
README.md
hikikomori
카카오톡 대안 메신저 아이디어 — "나를 대신해 남과 대화하는 AI 분신"이 있는 메신저 프로젝트.
문서
- 원본 회의 자료:
docs/idea-meeting-2026-06-29.html - 기획 진행 방법:
docs/PLANNING.md - 결정 로그 (Q1~Q7):
docs/decision-log.md - Vision Doc:
docs/vision.md - PRD (v1 클로즈드 베타):
docs/PRD.md - 기술 설계서:
docs/tech-design.md - 리스크 로그:
docs/risk-log.md - 로드맵:
docs/roadmap.md - PoC #1·#3 실행 계획:
docs/poc-plan.md/ 실행 준비물:docs/poc-materials.md - Q3 자율성 수용성 인터뷰 가이드:
docs/user-interview-guide.md - 회의 리뷰 1페이지 요약:
docs/meeting-review-summary.md
AI 에이전트 규칙
현재 단계
아이디어 발산 → 컨셉 심화 → 기획 문서 세트 작성 → PoC 실행 계획·준비물·클릭 프로토타입 완료.
docs/decision-log.md의 결정은 아직 잠정안이므로, 실제 회의에서 확정/수정이 필요합니다.
다음 단계는 PoC #1·#3과 Q3 인터뷰를 실제로 진행하는 것입니다 — 계획과 자극재는 이미 준비돼
있으니 참가자 모집부터 시작하면 됩니다 (docs/meeting-review-summary.md 참고).