docs(map): cross-device sync rewrite, fixed defects and what is still local
Some checks failed
ci / 정본·보안·린트·타입·테스트 (push) Successful in 50s
ci / 모바일 린트·타입·Jest (push) Successful in 38s
ci / Supabase Edge Functions + Cloudflare Worker (push) Successful in 21s
ci / .NET API 서버 테스트 (push) Successful in 11s
deploy-site / deploy (push) Successful in 33s
ci / 워크스페이스 빌드 검증 (push) Has been cancelled
Some checks failed
ci / 정본·보안·린트·타입·테스트 (push) Successful in 50s
ci / 모바일 린트·타입·Jest (push) Successful in 38s
ci / Supabase Edge Functions + Cloudflare Worker (push) Successful in 21s
ci / .NET API 서버 테스트 (push) Successful in 11s
deploy-site / deploy (push) Successful in 33s
ci / 워크스페이스 빌드 검증 (push) Has been cancelled
This commit is contained in:
parent
53fcdf6305
commit
6b06442412
7 changed files with 45 additions and 18 deletions
|
|
@ -1,5 +1,14 @@
|
|||
# D3RO-VOICE 프로젝트 현황
|
||||
|
||||
## 데스크톱↔모바일 동기화 재작성 (2026-09-27, 미커밋·운영 미배포)
|
||||
|
||||
- 점검 결과 "100% 연동" 아님: 로그인 직후 pull이 아무것도 안 가져옴(push가 커서를 now로 먼저 옮김), 첫 회의의 메모·문서만 업로드, 삭제 전파 없음(양방향), 팀 회의 오염 + team_id 삭제, 데스크톱 쓰기가 history.revision을 안 올려 모바일 충돌 감지 무력화, 메모 태그·명령·템플릿·즐겨찾기 미동기화, 익명 로컬 데이터 미업로드. **데스크톱 Realtime은 한 번도 연결된 적 없음**(Electron 33 = Node 20, 전역 WebSocket 없음 → 2026-09-16 설치본 로그 TIMED_OUT/CLOSED).
|
||||
- 추가로 발견·수정: 모바일 데이터 내보내기가 회의 있는 계정에서 v1 키 불일치로 실패(서버 export 함수), 모바일 기기 목록이 android/ios 외 플랫폼 한 행에 화면 전체 로드 실패.
|
||||
- 구현: `apps/desktop/src/main/services/sync/`(SyncEngine·outbox·adapters·memo-tag-sync·supabase remote·device-registration·realtime-transport), `CloudSyncService` 재작성(ws 전송, 5분 heartbeat, 기기 체크인, 로컬 모드 가져오기 `importLocalModeData`), 즐겨찾기(`history:setFavorite`), 설정 동기화 섹션 i18n+대기/실패 건수, `app:dataChanged {type:'cloud-sync'}`로 화면 새로고침. 서버 마이그레이션 `20260927000034_cross_device_sync_parity.sql`(sync_tombstones, revision 트리거, meeting_memos.updated_at, 커서 인덱스, 템플릿 sync RPC, realtime, export v1 키). 모바일 `device-service.ts` 플랫폼 확장.
|
||||
- 검증: SyncEngine 20 + 로컬 Supabase 통합 5(실시간 포함) GREEN, 데스크톱 전체 1499/1500(캡션 환경 1건), 모바일 372/372, core 131, 웹 tsc 0, 메인/렌더러 strict 오류 수 변화 0(13/35 선재), 서버 SQL 테스트 기준선 대비 신규 실패 0.
|
||||
- **다음(사용자 승인 필요)**: 운영 Supabase에 마이그레이션 먼저 배포 → 데스크톱 릴리스 → 실기기 확인(GAP-SYNC-05). 남은 미동기화: 지식베이스·오디오·user_settings(GAP-SYNC-06), tombstone 정리 cron(GAP-SYNC-07).
|
||||
- 통합 테스트 실행: `server/`에서 `supabase start` 후 `D3RO_SYNC_IT_SUPABASE_URL=http://127.0.0.1:55321 D3RO_SYNC_IT_ANON_KEY=<publishable> D3RO_SYNC_IT_SERVICE_KEY=<secret>`로 `tests/integration/cross-device-sync.supabase.test.ts`. DB reset 직후엔 Realtime 워밍업 때문에 실시간 케이스가 한 번 실패할 수 있다.
|
||||
|
||||
## v1.6.0 릴리스 완료 (2026-09-24)
|
||||
|
||||
- 버전 SSOT `1.6.0`(android/iOS `1060000`). 커밋 `2fe20fa`, annotated `v1.6.0`, `chanpaca`·`origin` main+tag push.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue