# Phase: 제품 기반 정리 ## 상태 [검토중] ## 목표 nexo를 Mattermost 기반 서버/front/push-proxy 런타임과 nexo-owned Flutter SDK가 함께 움직이는 메시징/알림 서비스로 정의한다. 모노레포 구조, upstream-followable runtime, client 검증 흐름, agent-ops 진입 규칙을 정리해 이후 기능 작업이 같은 기준선 위에서 진행되도록 만든다. ## Milestone 흐름 완료된 Milestone은 archive 경로를 가리키고, 검토중, 진행중, 계획, 스케치 또는 보류 Milestone은 이 Phase 하위 `milestones/` 경로를 가리킨다. 완료, 검토중, 진행중, 계획, 스케치 순서로 두어 아래로 갈수록 미래 작업에 가까워지게 정렬한다. 스케치 Milestone은 아직 구현 가능한 계획이 아니므로 계획 Milestone보다 아래에 둔다. - [완료] 정체성 기준선 - 경로: `agent-roadmap/archive/phase/product-foundation/milestones/identity-baseline.md` - 요약: 제품 이름, 메시징/알림 서비스 범위, project-owned naming의 nexo 전환 기준을 문서화했다. - [완료] 운영 기준선 - 경로: `agent-roadmap/archive/phase/product-foundation/milestones/runtime-baseline.md` - 요약: Mattermost 앱, 서버, push-proxy 원본 clone 경계와 compose/secret/smoke/remote parity 문서 기준선을 고정했다. Mac ARM64 원격 image 실행 검증은 다음 Milestone으로 이관했다. - [완료] 이미지 기반 런타임 검증 - 경로: `agent-roadmap/archive/phase/product-foundation/milestones/runtime-image-validation.md` - 요약: nexo-owned Mattermost/push-proxy image build, 배포/수신 방식, 원격 Mac runtime 전환, 현 repo와 소비 프로젝트 smoke/e2e 검증 기준선을 만들고 잔여 Detox app-readiness 실패를 후속으로 분리했다. - [완료] 클라이언트 검증 기준선 - 경로: `agent-roadmap/archive/phase/product-foundation/milestones/client-validation.md` - 요약: `apps/flutter-test` 기반 통합/Native/FCM ACK/inline reply smoke 검증 기준선을 닫고 사용자 승인에 따라 archive했다. ## Phase 경계 - 모노레포의 기본 골격은 `apps/flutter-test`, `packages/messaging_flutter`, `services/core`로 유지한다. - `contract`, `infra`, `sandbox` 같은 별도 최상위 모듈은 중복 필요가 명확해지기 전까지 만들지 않는다. - Docker compose와 runtime 설정은 `services/core/compose/` 안에 둔다. - `services/core/server`, `services/core/webapp`, push-proxy 연동은 upstream-followable 상태를 우선한다. - upstream-owned 코드의 대량 rename이나 deep fork는 이 Phase의 기본 범위가 아니다. - nexo-owned naming은 SDK, compose, 운영 문서, 얇은 compatibility layer에 우선 적용한다.