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

Recall Quest

최근 수정: 2026-08-08

파일만 쌓여 있는 폴더 말고, 영상 기억 엔진을 만들어

Recall 의 탄생 이야기 — 이미지 엔진 Ember, 음악 엔진 Bonfire 의 형제인 아빠의 영상 기억 엔진이야. NAS 에 영상 수천 개, 그리고 질문 하나. "내가 그 얘기 어디서 했더라?" 이 퀘스트는 그 질문에 답하는 엔진을 처음부터 끝까지 따라가. 그리고 설계 결정 하나하나가 결국 같은 걸 가르쳐. 증거를 어떻게 지키는지, 돈을 어떻게 딱 한 번만 쓰는지, 기억하는 방식을 어떻게 소유하는지.

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

Level 0Empty Shelf
0 XP0/35 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete
Recall 은 전사(transcription) 도구가 아니고, 폴더에 검색창 하나 붙인 것도 아니고, 인생을 통째로 올리는 클라우드도 아냐. 수천 개짜리 영상 아카이브를 인벤토리하고, 불변(immutable) 음성-텍스트 증거를 만들고, 그 증거를 버전 있는 transcript release 로 투영하고, 타임스탬프 붙은 말을 색인하고, 검색 결과의 정확한 그 순간에서 원본 영상을 여는 독립 엔진이야. 이 퀘스트는 그 엔진을 처음부터 끝까지 훑어. 어떤 기억 문제를 풀었고 왜 빌리지 않고 직접 지었는지, 항상 켜진 Mac 두 대에 나눠 앉은 control plane 과 stateless executor, raw ASR 을 진실이 아니라 불변 증거로 다루는 규율, 유료 전사를 identity 당 최대 한 번만 사는 돈 계량, 그 어떤 'already done' 플래그도 안 믿는 계층형 idempotency, 크래시를 버티는 leased·재개 가능 job 과 그걸 빚어낸 OS 전쟁 이야기, 'complete' 가 '지식이 될 만큼 좋다'는 뜻이 되지 않게 막는 의도적 격리, 그리고 마지막으로 내 아카이브를 소유하는 규율까지. 영상 기억 엔진이 자기 탄생 이야기를 직접 들려주는 셈이야. clone 해 갈 repo 가 아니라 개념의 오픈소싱이고.

Tracks

  1. 01🗄️The Archive

    0/4 lessons

    Recall 이 뭔지, 가족 안에서 어느 자리인지, 왜 있는지

    아키텍처 이전에 방향부터. Recall 은 영상 기억 엔진이야. 전사 도구도 아니고, 폴더에 검색창 하나 붙인 것도 아니고, 인생을 통째로 올리는 클라우드도 아냐. 이 트랙에선 Recall 이 푸는 기억 문제를 짚고, cwkPippa 엔진 가족 안에 아카이브 형제로 앉혀. 직접 만든 도구한테 다들 제일 먼저 던지는 질문, 그냥 빌리면 되잖아? 에도 답하고. 마지막으로 옛 프로젝트를 '다시 만든다'는 것과 '리마스터한다'는 것 사이에 날카로운 선을 하나 그어.

    cwkRecall 개요 화면. 위에 보관 영상, 검색 가능한 release, 대기 중 backfill, 완료된 작업 카운터가 있고, 그 아래로 최신순 NAS 목록(행마다 썸네일·제목·출처와 clean 또는 suspect release 배지), 오른쪽엔 소스 균형 패널.
    완료가 곧 품질은 아니다. 행마다 어느 release 에서 나왔는지, 그 release 가 검수됐는지까지 같이 보여준다.
    Lesson list (4)퀴즈 · 4 문제
  2. 02🖥️Two Hosts, One Truth

    0/4 lessons

    control plane, stateless executor, 그리고 둘을 묶는 규칙

    Recall 은 항상 켜진 기계 두 대랑 개발 노트북 하나에 나눠서 돌아. 그 분리는 일부러 그렇게 한 거고. 한 호스트는 control plane 이자 단일 진실의 원천이고, 다른 하나는 무겁고 느리고 비싼 일을 하면서 아무것도 소유하지 않는 stateless executor 야. 이 트랙에선 분산 시스템의 척추를 배워. 결정하는 plane 과 실행하는 plane 을 왜 나누는지, 그 둘을 정직하게 붙들어 두는 규칙 하나가 뭔지(control plane 이 durably 받아들이기 전엔 계산이 안 끝난다), 웹 요청이 왜 몇 시간짜리 일을 소유하면 안 되는지, 그리고 코드랑 상태가 왜 다른 레일로 다니는지.

    Lesson list (4)퀴즈 · 4 문제
  3. 03🧾Evidence Before Truth

    0/5 lessons

    raw 출력은 영구 기록이고, 진실은 그 위에 얹힌 버전이야

    Recall 데이터 모델의 심장이자, 다른 데로 가장 옮겨 쓰기 좋은 아이디어야. 기계가 돌려준 걸 진실과 혼동하지 마. raw 음성-텍스트 출력은 불변 증거야. 특정 model 이 특정 바이트에 대해 정확히 뭐라고 했는지를 남긴 영구 기록이지. 유저가 보는 transcript 는 그 증거에서 파생한 버전 있는 release 라서, 원본은 하나도 안 건드리고 교정할 수 있어. 이 트랙에선 run 과 release 를 갈라놓고, 교정이 왜 덮어쓰지 않고 분기하는지, content hash 가 어떻게 모든 하류 산물의 staleness 를 감지하게 해주는지, 자동 품질 점수가 왜 증명이 아니라 조언인지를 봐.

    Lesson list (5)퀴즈 · 4 문제
  4. 04💳Pay Once

    0/5 lessons

    쓰기 전에 예약하고, identity 당 한 번 쓰고, 청구됐을지 모르는 호출은 절대 자동 재시도 안 함

    전사 호출은 하나하나가 진짜 돈이야. 불안정한 네트워크 위에서 순진하게 재시도 loop 을 돌리면 같은 오디오를 조용히 다섯 번 결제할 수도 있어. 이 트랙은 그걸 막는 돈 규율이야. 유료 호출 전에 반드시 건너야 하는 예약 ledger, 같은 오디오를 최대 한 번만 사게 만드는 content-addressed identity, provider 가 청구했을지도 모르는데 결과는 없는 무서운 경우를 위한 명시적 'ambiguous' 상태, 그리고 이미 청구됐을지 모르는 호출은 자동으로 재시도하지 않겠다는 의도적인 거부. 마지막은 outbox 야. executor 가 이미 손에 쥔 유료 응답을 어떻게 지키는지.

    Lesson list (5)퀴즈 · 4 문제
  5. 05🧬Never Trust 'Already Done'

    0/4 lessons

    단일 플래그 없음, identity 사다리, 그리고 --force 가 진짜 뭘 뜻하는지

    'done' boolean 하나는 데이터 파이프라인에서 제일 흔한 거짓말이야. 뭘 기준으로 done 인데? 같은 source? 같은 설정? 같은 출력? Recall 은 플래그 하나를 절대 안 믿어. identity 를 계층으로 쌓아서 바뀐 source, 바뀐 오디오 설정, 바뀐 provider 설정, 바뀐 release 가 각각 따로 구별되게 하지. 단마다 특정 혼동 하나씩을 막는 hash 사다리야. 이 트랙에선 그 사다리를 바닥부터 쌓아. 플래그 하나로는 왜 안 되는지, video identity 가 관찰된 바이트의 fingerprint 와 어떻게 다른지, 10계층 전체가 어떻게 생겼는지, 그리고 --force 조차 왜 눈 감은 유료 재실행을 승인하지 않는지.

    Lesson list (4)퀴즈 · 4 문제
  6. 06🎫Leased Work

    0/5 lessons

    몇 시간짜리 job 이 크래시를 어떻게 버티나, 그리고 그 설계를 빚은 OS 함정들

    영상 수천 개를 전사한다는 건, 언제든 크래시하거나 hang 걸리거나 재시작될 수 있는 executor 위에서 몇 시간짜리 job 을 돌린다는 뜻이야. 이 트랙은 그 작업이 살아남는 방법이야. 한 번에 정확히 worker 하나만 job 을 소유하게 하는 token 과 heartbeat 달린 lease, lease 가 만료됐을 때의 atomic reclaim, 그리고 응답 없는 네트워크 파일시스템이 파이프라인 전체를 얼리지 못하게 막는 죽일 수 있는 자식 프로세스. 마지막은 어렵게 얻은 운영체제 전쟁 이야기 둘로 닫아. 동기화 경로에서 hang 걸리는 백그라운드 프로세스, 그리고 엉뚱한 identity 라며 파일 접근을 거부하는 권한 모델. 아무리 깔끔한 설계도 자기가 도는 기계를 견뎌내야 하니까.

    Lesson list (5)퀴즈 · 4 문제
  7. 07🚧Completion Is Not Approval

    0/4 lessons

    '끝났다' 와 '지식이 될 만큼 좋다' 사이의 벽

    파이프라인이 끝났고, 품질 체크는 초록이고, transcript 는 검색도 돼. 이제 지식 시스템에 먹일 만큼 믿을 만한 걸까? Recall 의 기본 답은 단호한 아니오고, 이 트랙이 그 이유를 다뤄. 격리 장치를 하나 지어. corpus eligibility 는 excluded 로 시작해서 사람이 명시적으로 옮겨줘야만 앞으로 나아가. 그리고 '순간을 찾는 데 쓸 만하다' 와 '지식의 소스로 안전하다' 가 왜 진짜 다른 판단인지 보여주지. 그다음 제품 얘기로 돌아와. 검색이 왜 바뀔 수 있는 export 대신 구조화된 타임스탬프 segment 를 색인하는지, 그리고 브라우저가 파일을 지목하는 일 없이도 검색 hit 이 어떻게 편집 행위가 되는지.

    Lesson list (4)퀴즈 · 4 문제
  8. 08🏛️Own Your Archive

    0/4 lessons

    index 는 파생물, 바이너리는 제자리, 두뇌는 딴 데 살아

    마지막 규율이야. 경계 셋이 엔진 전체를 붙들어. index 는 파생물이니까 patch 가 아니라 다시 지어야 하고. 원본 영상 바이트는 원래 있던 자리에 남고 Recall 은 사본이 아니라 참조만 저장하고. 엔진은 자기 아카이브 도메인을 소유하되 판단은 빌려 온 두뇌에 맡기고. 셋 다 거부야. patch 거부, 쌓아두기 거부, 두 번째 identity 키우기 거부. 그 셋이 모여서 오래가는 엔진이 되는 거고. 마지막 레슨은 퀘스트 전체를 바깥으로 돌려. 네가 Recall 을 돌리라는 게 아니라, Recall 이 가르쳐준 방식으로 네 걸 지으라고.

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

댓글 0

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

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