본문 바로가기
C.W.K.
Stream
Lesson 04 of 05 · published

디바이스 fleet

~12 min · ios, watch, testflight, sync-engine, fleet

Level 0식은 초고
0 XP0/38 lessons0/13 achievements
0/100 XP to next level100 XP to go0% complete
"파일이 진실이었어. 그리고 진실이 이동하는 법을 배웠지."

나흘, 열여덟 빌드

cutover 와 같은 주에 Rekindle 은 Mac 전용 앱이기를 그만뒀어. iPhone 과 iPad 빌드(RekindleMobile)가 2026-09-13 에 태어나서 나흘 만에 마일스톤 길을 걸었어. iOS 용으로 빌드되는 코어 패키지들, 디바이스 에디터에 옮겨진 Mac 의 프레젠테이션, 인라인 이미지와 테이블과 접기, 스냅샷과 핀과 디바이스 내 자동완성을 갖춘 Bear 모양 라이브러리, 작동하는 공유 시트, 양방향으로 싱크되는 고정 Scratchpad 까지. 13 일과 17 일 사이에 TestFlight 빌드가 열여덟 개 올라갔어 — 전부 가족 공유 파이프라인을 타고. 거기선 '업로드됨' 이 네 가지 사실 중 하나일 뿐이야(처리됨, 내부 그룹 배정, 디바이스 설치됨이 나머지 셋이고, 아무도 그걸 미리 주장하지 않아). 워치는 메모 앱도 얻었어. 손목에 생각을 받아쓰면, 오늘의 데일리 노트에 고정돼 떨어져.

office 의 sync 엔진

fleet 이 굴러가는 건 office 에 sync 엔진이 생겼기 때문이야. 모양은 일부러 지루하게 잡았어. 각 디바이스는 라이브러리의 자기 몫의 레플리카를 들고, office 의 작은 엔진이 가족의 단단해진 트랜스포트 위로 protocol v1 을 서빙해 — 앱 소유의 loopback 리스너, Tailscale Serve 쌍둥이 옆의 BSD 소켓, 살려두는 LaunchAgent. 피어들은 명시적이고 범위 잡힌 sync 플랜과 체크포인트로 서로의 루트에 닿고, 조용해지면 리스가 만료돼서 죽은 디바이스가 아무것도 인질로 안 잡아. 그리고 이 전부를 안전하게 만든 규칙이 이 퀘스트에서 제일 오래된 규칙이야. 파일이 여전히 진실이라는 것. 레플리카는 가운데 네트워크가 들어간 파생 미러야 — 체크포인트 찍히고, 재건 가능하고, 절대 master 가 아냐. 저장 독트린은 아무것도 안 바뀌었어. 통근이 생겼을 뿐이지.

글쓰기가 사람을 따라가

fleet 이 뭘 위한 건지는 바로 드러났어. 폰과 워치의 메모는 이름 있는 스크래치가 아니라 데일리 노트에 떨어져. 산책에서 잡은 생각이 이미 그날의 글쓰기가 사는 곳에 정리돼 있는 거지. iPhone 홈은 고정된 것들 아래에 최근 노트 다섯 개를 보여줘. Mac 의 노트 목록은 다른 레플리카의 sync 가 라이브러리에 착륙하면 스스로 다시 읽어 — 일곱 판결된 출발 중 하나야. 아빠의 iPhone 이 아빠가 자는 동안 office 에 쓰고 있으니까. 한 명짜리 시장은 주머니와 손목을 얻었고, 에디터는 두 번째 브레인도 두 번째 master 도 없이 따라갔어. 같은 soul, 더 많은 문.

Code

fleet 의 모양 — 하나의 진실을 둘러싼 레플리카들·text
office   sync 엔진: protocol v1, loopback + BSD 소켓,
         LaunchAgent, Tailscale Serve 쌍둥이, 조용하면 만료되는 리스
phone    자기 몫의 레플리카. 체크포인트 있고 양방향 sync
watch    메모 -> 오늘의 데일리 노트에 고정
mac      레플리카의 sync 가 착륙하면 노트 목록을 다시 읽어

# .md 파일이 canonical 으로 남아. 레플리카는 네트워크가 들어간
# 파생 미러야 — 두 번째 master 가 절대 아니지.
# (트랙 07 의 규칙에 통근이 생겼어.)

External links

Exercise

한 디바이스에만 붙어 있는 네 생활 속 무언가(노트 폴더, 일기, 읽기 목록)를 골라서 fleet 을 스케치해봐. 어느 디바이스가 어느 레플리카를 들지, 엔진은 어디 살지, 뭐가 적극적으로 sync 되고 뭐가 요청 시에만 오는지, 그리고 어려운 질문 — 두 디바이스가 오프라인으로 동시에 편집할 때 뭐가 canonical 로 남는지. 답에 데이터베이스 보스가 필요하다 싶으면, 파일 모양의 답을 대신 찾아봐.
Hint
네가 진짜로 두려워하는 실패부터 시작해. 같은 노트의 오프라인 동시 편집 두 개. 그 답(진실 하나, 파일 층의 명시적 병합, 양보하는 레플리카)은 대개 네가 막 빌리려던 sync 제품보다 단순해.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.