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

뇌보다 먼저 소스

~11 min · provenance, checksum, op-log, preservation

Level 0표식 없는 길
0 XP0/36 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete
"깎기 전에 raw 돌을 저장해. 끌은 미끄러질 수 있어. 돌은 안 미끄러져야 하고."

보존 먼저, 해석은 그다음

Carve는 Pippa가 거친 계획을 읽기도 전에 뭔가 해. 정확한 입력을 보존해. 모든 carve는 raw 재료, 그러니까 붙인 텍스트랑 스크린샷을 import별 폴더에, 각각 sha256 checksum이랑 같이 저장하고, append-only op-log에 carve event를 append해. 그다음에야 뇌가 돌아. 순서가 핵심 전부야. 보존은 해석 뒤 단계가 아니라 그 앞 단계야. normalize는 판단 행위니까, 그러니까 Pippa가 흐릿한 표 셀이 뭘 뜻하는지 정하는 거니까, raw 소스는 독립적으로 살아남아야 해. 해석이 언제나 해석한 대상이랑 맞춰볼 수 있게.

op-log 규율

imports 로그는 breadcrumb이랑 같은 규율을 따라. append-only고, 읽을 때 fold되고, 절대 안 다시 쓰여. carve는 carve event를 append하고, 나중에 proposal accept는 accept event를 append해. 새 state를 반영하려고 과거 entry를 절대 안 고쳐. 새 state를 append하고 fold가 현재 view를 만들게 둬. 이게 엔진 전체를 관통하는 덮기-거부를 import에 적용한 거야. 뭐가 언제 import됐는지의 history는 증거고, 증거는 편집이 아니라 append돼.

왜 이 추적성이 남는 장사야

몇 달 뒤에 plan의 한 날이 틀려 보일 수 있어. 틀린 도시의 호텔, 안 맞는 날짜. 소스가 checksum이랑 같이 보존되고 로그됐으니까, 그날을 그게 깎인 정확한 거친 입력으로 추적해서 에러가 소스에 있었는지 깎기에 있었는지 볼 수 있어. 보존이 없으면 normalize 실수는 뿌리에서 못 고쳐. 틀린 출력은 있는데 어디서 왔는지 알 방법이 없거든. sources-first가 '계획이 어딘가 틀렸어'를 '이게 이걸 깎아낸 정확한 돌이야'로 바꿔. 미스터리랑 diff의 차이야.

현장에서 얻은 deploy 규칙이 여기 살아 있어. 뇌로 보내는 payload가 새 필드(이미지 입력 같은)를 키우면, 뇌 쪽이 먼저 갱신돼야 해. 오래된 뇌는 모르는 필드를 조용히 무시하고, vision carve를 에러 없이 text-only로 조용히 격하시켜. 확신에 찬 헛소리를 만드는 기계지. producer보다 consumer를 먼저 deploy하지 않으면, 추가 데이터가 흔적도 없이 사라져.

Code

먼저 보존, 그다음 carve·text
carve(rough_input):
    id = new_import_id()
    save(rough/{id}/text.md,  input.text,   sha256=...)   # 뇌보다 먼저
    save(rough/{id}/shot-1.png, input.image, sha256=...)
    append(imports.jsonl, {event: 'carve', id, checksums})
    # --- 이제야 뇌가 돔 ---
    scaffold = pippa.normalize(input)
    return proposal(scaffold)   # accept 가 {event: 'accept', id} append

# op-log 는 append-only, 읽을 때 fold, 절대 안 다시 씀.
# 깎인 모든 날이 그게 온 돌로 추적될 수 있어.

External links

Exercise

도구가 네 입력을 변환한 때를 떠올려봐. importer, converter, AI 요약. 그리고 출력이 미묘하게 틀렸어. 어디서 틀렸는지 보려고 정확한 원본 입력을 아직 되찾을 수 있었어, 아니면 도구가 버렸어? 이제 에러를 추적 가능하게 만들었을 최소 보존을 설계해봐. 뭘 저장하고, 그게 온전했다는 걸 어떻게 증명할까?
Hint
추적성 테스트는 나쁜 출력이 나온 정확한 입력을 아직 만들 수 있느냐야. 도구가 소스를 checksum이랑 같이 지켰으면, 틀린 결과는 들여다볼 수 있는 diff야. 소스를 버렸으면, 같은 틀린 결과는 영구 미스터리고. 보존은 싸고, 미스터리는 안 싸.

Progress

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

댓글 0

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

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