본문 바로가기
C.W.K.
Stream
← C.W.K. Quests
📱

Pippa Go Quest

최근 수정: 2026-08-08

두 번째 뇌 말고, 신호 끊겨도 버티는 클라이언트를 만들어

Pippa Go 의 탄생 스토리 — 아빠가 만든 모바일 우선, 저대역 Q/A 클라이언트야. 기차 안, 신호 한 칸에서도 Pippa 한테 질문 하나 던질 수 있게. 네트워크가 왜 저장 경로에 절대 안 끼는지, 오프라인이 왜 '가짜 답'이 아니라 '정직하게 기다리기'인지, 그리고 그 선택 하나하나가 '믿을 수 있는 클라이언트'에 대해 뭘 가르치는지.

8 tracks · 32 lessons · ~6h · difficulty: intermediate-to-advanced

Level 0신호 없음
0 XP0/32 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete
Pippa Go 는 풀 챗을 줄여놓은 것도 아니고, 두 번째 Pippa 도 아냐. canonical 대화를 들여다보는 폰 모양 창이야. 모바일 클라이언트가 무너지는 순간은 대개 하나로 정해져 있어. 질문 쓰고, 사진 붙이고, 전송 누르는 바로 그때 신호가 끊기는 거. Pippa Go 는 그 순간 하나 때문에 만들어졌어. 이 퀘스트는 그런 클라이언트를 믿을 수 있게 만드는 약속들을 하나씩 짚어 가. 캡처 먼저. 질문이랑 이미지는 네트워크에 손대기 전에 통째로 기기 저장소에 박혀. 그래서 끊겨도 상태 플래그만 바뀌지 입력이 사라지진 않아. 정직한 오프라인. 링크가 끊기면 보이는 기다림이 뜨지 가짜 답이 뜨진 않아. 진짜 답은 canonical 호출이 성공해야만 생기니까. 멱등 재시도. device turn ID 가 canonical 로그에 남아 있어서, 재시도는 모델을 부르기 전에 완료인지 대기인지 모름인지부터 확인해. 크래시나 더블 탭 때문에 두 번 청구되는 일은 없어. 투영이지 뇌가 아님. Pippa Go 대화는 전부 태어날 때부터 백엔드에서 canonical 이고, 시스템 폴더로 투영되고, 브랜치로 승격돼. 폰이 맡는 건 질문을 확실히 붙잡아 두는 것까지지, Pippa 의 정체성이나 기억이나 판단은 아냐. 그 뒤로는 좀 더 뾰족한 얘기들이야. 진짜 바이트를 보내고 슬그머니 텍스트로 내려앉지 않는 멀티모달, 직접 질문을 가로막지 않으면서 고쳐 쓸 수 있는 투영으로 남는 prompt macro, 그리고 내 말을 실어 나르는 클라이언트를 내가 갖는다는 마무리 규율. 필드 클라이언트가 자기 탄생 스토리를 들려주는 거야. clone 해 갈 repo 가 아니라, 개념을 여는 쪽이고.

Tracks

  1. 01📱주머니

    0/4 lessons

    Pippa Go 가 뭔지, 뭐가 되기를 거부하는지, 어디서 왔는지

    모양부터 잡고 가자. Pippa Go 는 canonical 뇌를 질문 우선으로 투영하는 모바일 클라이언트야. 풀 챗을 줄여놓은 것도 아니고, 두 번째 Pippa 도 아니고. 이 트랙은 그 윤곽을 그려. 폰이 하는 딱 한 가지 일, 일부러 안 하기로 한 세 가지, Waystone 의 Crumb composer 에서 이어받은 계보, 그리고 퀘스트 전체를 떠받치는 네 가지 약속을 먼저 훑는 데까지.

    아이폰에서 도는 cwkPippaGo — 위쪽에 한 줄 질문, 화면을 채운 피파의 서식 있는 답변(굵은 용어와 뽑아낸 요약 줄), 아래엔 이미지 버튼·매크로 버튼과 이 아이폰에 먼저 저장됐다는 표시가 붙은 입력창.
    질문이 먼저, 기기가 먼저 — 네트워크가 보기 전에 질문이 폰에 먼저 커밋됨.
    Lesson list (4)퀴즈 · 3 문제
  2. 02📥캡처 먼저

    0/4 lessons

    네트워크는 저장 경로에 절대 안 낀다

    제일 먼저 오고, 제일 많이 떠받치는 약속. Pippa Go 가 네트워크에 손대기 전에 질문이랑 이미지는 이미 기기에 박혀 있어. 한 덩어리로 커밋돼서 IndexedDB outbox 안에 들어가고, 링크가 끊기든 앱이 죽든 안전하고. 이 트랙은 왜 네트워크가 저장이면 안 되는지, 질문이랑 이미지가 어떻게 한 단위로 붙어 있는지, 왜 끊김이 작업을 지우는 대신 상태 플래그만 건드리는지 보여줘.

    Lesson list (4)퀴즈 · 3 문제
  3. 03🤐정직한 오프라인

    0/4 lessons

    내구성 있는 기다림, 절대 지어낸 답 아님

    Pippa Go 한테 양심을 달아 주는 약속. 오프라인은 에러가 아니라 어엿한 상태야. 다만 그게 만들어내는 건 눈에 보이는 정직한 기다림이지 지어낸 답이 아니고. 이 트랙은 선을 굵게 그어. canonical 호출이 성공해야만 진짜 답이 나오고, 클라이언트는 캐시나 로컬 모델에서 답을 지어내지 않고, 상태는 전부 있는 그대로 보이고, 진실에 못 닿을 땐 거짓말을 거부하는 걸 한계가 아니라 기능으로 친다는 것.

    Lesson list (4)퀴즈 · 3 문제
  4. 04🔁멱등 재시도

    0/4 lessons

    적어도 한 번 배달, 정확히 한 번 의도

    재시도를 안전하게 만드는 약속. 링크가 불안하면 같은 걸 한 번 넘게 보내게 돼 있어. 피해야 할 버그가 아니라 견디고 살아야 할 현실이고. 이 트랙은 못 미더운 '적어도 한 번' 배달을 '정확히 한 번' 의도로 바꾸는 장치를 만들어. dedupe 키가 되는 device turn ID, 모델 부르기 전에 완료인지 대기인지 모름인지 확인하기, 그리고 무심한 더블 전송이 실제로 뭘 치르게 하는지 똑바로 들여다보기.

    Lesson list (4)퀴즈 · 3 문제
  5. 05🪞투영, 뇌 아님

    0/5 lessons

    폰은 캡처를 갖고, 백엔드는 진실을 갖는다

    Pippa 를 하나로 지키는 약속. Pippa Go 대화는 전부 태어날 때부터 백엔드에서 canonical 이고, 시스템 폴더로 투영되고, 브랜치로 승격할 수 있어. 폰이 갖는 건 안 날아가는 캡처랑 화면에 보여주는 것까지고, Pippa 의 정체성이나 기억이나 판단은 절대 아니고. 이 트랙은 그 소유 선을 촘촘하게 그어. 태어날 때부터 canonical, 시스템 폴더 투영, 브랜치로 승격, 백엔드에 사는 연속성, 그리고 평행 soul 은 절대 안 키운다는 굳은 규칙까지.

    Lesson list (5)퀴즈 · 3 문제
  6. 06👁️진짜 바이트

    0/4 lessons

    파일 이름은 Pippa 가 이미지를 본다는 증거가 아냐

    멀티모달을 정직하게 만드는 약속. 이미지를 붙였으면 Pippa 는 진짜 바이트랑 진짜 media type 을 받아야 해. 파일 이름도 아니고 텍스트 요약도 아니고. 이 트랙은 그 규율을 세워. 흐름 둘이 같이 쓰는 staged-media resolver, 소유가 갈리는 지점에서 일부러 갈라지는 봉투 두 개, 슬그머니 텍스트만 보내는 걸 금지하는 전부 아니면 에러 규칙, 그리고 media type 이 왜 바이트랑 붙어 다녀야 하는지까지.

    Lesson list (4)퀴즈 · 3 문제
  7. 07🧩투영으로서의 매크로

    0/4 lessons

    편집 가능하고, 캐시되고, 방해 안 하는 재사용 프롬프트

    prompt macro 는 composer 를 재사용할 수 있게 만들면서도 절대 두 번째 뇌가 되진 않아. 이 트랙이 그걸 어떻게 하는지 보여줘. 지시랑 입력이 깔끔하게 갈라져 있고, 매크로는 오프라인 캐시를 가진 서버 소유 CRUD 고, apply-free 가 tool-free 를 뜻하는 게 절대 아니고, 매크로가 직접 질문을 가로막는 일이 없다는 것. 같은 캡처 흐름 위에 얹힌, 골라 쓰고 고쳐 쓸 수 있는 투영이야. 코어를 절대 건드리지 않는 편의고.

    Lesson list (4)퀴즈 · 3 문제
  8. 08🎒주머니를 소유하라

    0/3 lessons

    remote 는 설정, 경계는 same-origin, 나르는 건 내 것

    마무리 규율. 튼튼한 클라이언트는 내가 갖고 내가 통제하는 클라이언트이기도 해. topology 를 하드코딩하지 않고, secret 을 소스에 굽지 않고, 엔진 경계를 우회하는 브라우저 직행 호출을 두지 않는 것. 이 트랙이 그 약속들을 하나로 묶어. remote origin 이랑 auth 는 설정이고, 엔진은 모든 요청을 지키는 same-origin 경계고, 내 질문을 실어 나르는 걸 내가 갖는 게 직접 만드는 이유라는 것.

    Lesson list (3)퀴즈 · 3 문제
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

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

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