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

대기열이 스레드를 떠났어

~13 min · queues, reuse, workflow, evolution

Level 0불 꺼진 작업장
0 XP0/58 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete

에피소드 두 편

바로 앞 강의는 제작 대기열이 사람들이 이미 읽는 시스템의 메시지 스레드여야 한다고 주장하면서 이유에 순위까지 매겼어. 그 스레드가 실어 나른 에피소드는 딱 두 편이야. 2026-08-01 에 제작은 작업장이 직접 소유한 위임 엔진으로 옮겨 갔고, 스레드는 원래 하던 일로 돌아갔어. 근거를 잘 갖춘 결정이 시간이 지나며 어떻게 낡아가는지 훤히 들여다볼 수 있는 드문 기회야. 어떤 이유가 버텼고 어떤 이유가 만료됐는지, 그 만료가 안에서는 어떻게 보였는지까지 같이 보자.

장부를 다시 따져보면

'넘기는 장치가 이미 있다.' 1 등 이유였고, 만료된 게 바로 이거야. 근데 이 문장이 자기 논리 안에서 거짓이 된 적은 한 번도 없어. 사람들이 이미 읽는 전달 장치 옆에 두 번째 장치를 짓지 말라는 얘기였잖아. 8월쯤엔 같은 위임 엔진이 가족의 다른 작업장 두 곳에서 돌고 있었어. 작업 세션도 이미 그 엔진의 실행 티켓으로 시작하고 있었고, 엔진 뼈대는 곧 공용 키트가 될 참이었지. 그러니 그걸 들이는 건 뭔가를 하나 더 짓는 일이 아니었어. 사람들이 읽는 장치 자체가 이미 그쪽으로 옮겨 가 있었던 거지. 원칙은 그대로고, 원칙이 따지던 재고 목록이 바뀐 거야.

'스레드가 제작 기록이 된다.' 이건 제작 기록용으로 따로 지은 장치로 바뀌었어. 이제 일감마다 단계 로그가 뒤에 덧붙이는 식으로만 쌓이고, 단계마다 그걸 해낸 세션이 찍혀. 판정은 그 실행의 거절 로그에 담기고, 일감이 착지하면 엔진이 공용 메시지 시스템에 기록 한 줄을 남겨. 스레드는 대화 기록으론 훌륭해. 근데 제작엔 구조가 있는 기록이 필요했어. 어느 두뇌가 어느 기계에서 어떤 단계를 어떤 순서로 했는지 말이야. 스레드엔 그걸 넣을 칸이 없어.

'스키마 변경 0.' 여전히 참이고, 첫 두 편에 스레드가 맞았던 이유도 여전히 이거야. 이유가 하나도 안 틀렸는데도, 결정은 어떤 규모에선 맞고 그다음 규모에선 틀릴 수 있어.

스레드가 못 담은 것

앞 강의 경고는 한계를 물량이라고 짚었어. 그런데 스레드 시절을 끝낸 건 물량이 아니었어. 한 주에 에피소드 몇 편이면 여전히 적은 처리량이거든. 끝낸 건 모양이었어. 위임엔 스레드에 칸이 없는 것들이 필요해. 기계 둘에 있는 세션 둘이 같은 일감을 안 집게 해주는 선점. 착지 둘이 저장소로 동시에 달려들지 않게 막는 착지 잠금. 합성 단계가 처음 완료로 기록될 때까지 대본 리뷰가 닫히지 않은 실행을 검증이 기계적으로 거절할 수 있게 해주는 리뷰 장부. 어느 기계에서든 열어볼 수 있는 곳에 커밋된 작업지시서. 넷 다 스레드 안에서 관례로 흉내 낼 수는 있어. 근데 바쁜 한 주가 제일 먼저 까먹는 게 바로 관례야.

부르는 쪽은 더 작아졌어

이번 이사가 이음매 반대편에 남긴 부작용이 하나 있는데, 이음매를 잘 설계했다는 제일 좋은 증거가 바로 그거야. 대기열이 옮겨 가자 부르는 쪽의 엔드포인트도, 요청을 쓰던 코드도, 한 줄짜리 입력창도 전부 지워졌어. 남은 건 링크 하나야. 포인터의 종류와 식별자, 표시용 제목을 URL 에 실어서 작업장의 작성 화면을 여는, 서른 줄 남짓한 코드지. 왜 찍는지 한 줄은 이제 그 작성 화면에서 써. 예전엔 부르는 쪽이 메시지를 썼는데, 지금은 어디에도 아무것도 안 써. 이 트랙 첫 강의의 금지는 처음부터 부르는 쪽을 겨냥해서 적혀 있었어. 그래서 전달 방식이 통째로 바뀌는 동안 아무도 나서서 지키지 않았는데도 버텼지.

재고에 기대는 이유는 재고가 바뀌면 만료돼. '있는 걸 재사용해'는 멀쩡한 규칙인데, 그 답은 뭐가 있느냐에 따라 달라져. 그 규칙으로 내린 결정을 기록할 땐 그때의 재고 목록도 옆에 적어둬. 그래야 조직에 더 나은 장치가 생긴 날, 그 결정을 변호하는 대신 다시 따져볼 수 있어.

Code

같은 장부, 일주일 차이·text
reason (from the thread lesson)      2026-07-25   2026-08-01
-----------------------------------  -----------  -------------------------------
the handoff already exists           the thread   the ENGINE - sessions already
                                                  start from its launch tickets
the thread is the production trail   yes          replaced: per-job stage log +
                                                  rejection log + one landing row
zero schema change                   yes          still true, no longer decisive
the file store is fragile            yes          still true, still not used

needed by a production, absent from a thread:
  claim    one session per job, visible across machines
  lease    one landing at a time into the repository
  ledger   review findings that verification can read
  brief    a work order committed where every machine can open it
부르는 쪽, 그 전과 그 후·text
before (2026-07-26)                      after (2026-08-01)
---------------------------------------  ---------------------------------------
button + one-line "why" modal            button
POST route that writes a request         (deleted)
  {pipeline, pointer, why}
                                         a link, about thirty lines:
                                           /compose?kind=conversation
                                                   &id=<opaque-identifier>
                                                   &title=<display title>

# the "why" line moved to the workshop's own compose screen.
# the caller no longer writes to any system at all.

External links

Exercise

네 일 중에 범용 도구 위에서 돌아가는 절차를 하나 찾아봐. 작업 대기열로 쓰는 채팅 채널, 티켓 시스템으로 쓰는 스프레드시트, 결재 흐름으로 쓰는 이메일 스레드 같은 거. 그 일엔 필요한데 그 도구엔 칸이 없는 걸 적어봐. 누가 맡았는지, 잠금, 기계가 읽을 수 있는 상태, 모든 참여자가 열 수 있는 산출물. 그중 지금 관례로만 버티는 게 몇 개인지 세고, 제일 최근에 깨진 게 뭐였는지 적어.
Hint
제일 먼저 깨지는 관례는 대개 '누가 맡았나'야. 서로 상대가 아직 안 했겠거니 하고 둘이 같은 걸 시작하는데, 도구엔 그걸 알려줄 방법이 없었던 거지. 한 번이라도 그런 일이 있었다면, 물량이 얼마든 그 도구는 이미 모양 천장을 넘은 거야.

Progress

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

댓글 0

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

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