C.W.K.
Stream
Lesson 05 of 05 · published

한 문장, 두 번 말하기

~10 min · canary, walking-skeleton, end-to-end

Level 0침묵
0 XP0/36 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete
"아무것도 믿기 전에, 작은 진짜 문장 하나로 엔진 전체를 증명해. 그다음 공짜로 다시 말해."

Walking Skeleton

모든 서브시스템 — 정규화, binding, 캐시, 복구, 오디오 — 을 짓고 마지막에만 함께 연결할 수도 있어. 그게 이음새가 틀렸단 걸 발견하는 느린 방식이야. 빠른 방식은 walking skeleton이야: 조각들이 다듬어지기 전에, 진짜 인프라 위에서, 전체 파이프라인을 처음부터 끝까지 도는 가능한 가장 얇은 조각. Bellows의 첫 진짜 canary가 정확히 그거였어. 짧은 한국어 문장 하나가, 진짜 provider랑 진짜 오디오 디바이스 위에서, 첫날에 엔진 전체를 통과했어.

canary가 실제로 증명한 것

네 파이프라인 단계를 진짜로 돌렸어: 문장 하나를 정규화하고 합성하고, 결과 MP3를 검증하고, 스튜디오 출력으로 최고 품질로 재생했어 — mock이 아니라, 진짜 방의 진짜 소리. 그다음 happy path만이 아니라 아키텍처를 증명하는 걸 했어: 똑같은 요청을 다시 쏘고 zero-provider 캐시 히트를 확인했어. 한 문장, 두 번 말해, 합성·검증·재생·캐시 보증을 한 번의 실행으로 훈련했어.

왜 진짜 canary가 mock 더미를 이기나

유닛 테스트는 provider, 디바이스, 파일시스템을 mock해 — 정확히 진짜 시스템이 깨지는 통합 이음새를. canary는 무서운 부분을 mock하길 거부해. 진짜 유료 API, 진짜 CoreAudio 디바이스, 디스크의 진짜 캐시를 건드려서, 처음 배우는 게 mock끼리 동의하냐가 아니라 이음새가 버티냐야. 엔진의 진짜 provider voice ID는 내내 사설로 남아 — canary는 날 ID가 아니라 profile 이름으로 말해 — 근데 나머지 전부는 진짜야.

Code

아키텍처 전체를 증명하는 가장 얇은 조각·python
# The first canary: prove the WHOLE pipeline with one tiny REAL request.
# (Real provider voice IDs stay private -- the profile name is all you need.)
def canary():
    text = "안녕, 아빠."                        # one short, real sentence
    job1 = speak(text, profile="pippa")        # normalize -> resolve -> PAY -> play
    assert is_valid_audio(job1.audio)          # a real, validated MP3
    assert job1.played_on == "studio-output"   # it actually reached the device

    job2 = speak(text, profile="pippa")        # identical request, moments later
    assert job2.cache_hit and job2.cost == 0   # the zero-provider proof

    # One sentence, spoken twice, exercises the entire engine end to end.

External links

Exercise

네가 짓거나 아는 시스템의 walking skeleton을 설계해: 모든 진짜 이음새 — 진짜 네트워크, 진짜 저장소, 진짜 외부 서비스 — 를 mock하는 대신 건드리는, 가장 얇은 end-to-end 실행 하나. 쓸 입력 하나랑, 한 컴포넌트가 아니라 전체 파이프라인을 증명하는 어서션 두세 개를 적어. 네가 제일 무서운 이음새가 어느 건지 표시해; 그게 canary가 테스트하려고 존재하는 그거야.
Hint
좋은 canary는 범위는 일부러 작고 인프라는 일부러 진짜야. canary가 네가 제일 걱정하는 부분을 mock하면, 그건 네 시스템이 아니라 네 자신감을 테스트하는 거야.

Progress

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

댓글 0

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

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