"무거운 앱도 한때는 얇았어. 그럴듯한 추가 하나하나에 계속 그러자고 했을 뿐이지."
얇은 앱은 가만 두면 무거워져
얇은 앱은 저절로 얇게 안 남아. 그럴듯한 기능 하나씩 붙으면서 무거워지지. 두 번째 머리로 가는 걸음마다 그 순간엔 개선처럼 들리거든. Flint 의 규율은 그런 유혹이 안 온다는 게 아니야. 늘 와. 다만 앱이 계속 거절하도록 만들어져 있는 거지. 얇게 남는 건 처음에 정해두고 편히 가는 상태가 아니라 계속 해내야 하는 일이야.
그럴듯하게 들리는 진입로들
무거워지는 과정이 스스로를 어떻게 변호하는지 봐. '모델 부르는 게 느리니까 결과를 여기 캐시해두자.' 이제 Flint 가 언제 버릴지 관리해야 할 걸 쥐게 됐어. '맥락 살리게 최근 변환 몇 개는 기억하자.' 이제 대화 기록이 생겼고. '일관돼 보이게 Flint 한테도 자기 말투를 주자.' 이제 성격이 생겼지. '브레인 죽었을 때도 되게 작은 로컬 모델 하나만 넣자.' 이제 모델 런타임이 생겼어. 하나하나는 다 그럴듯한데, 합치면 다시 만들면서 지운 바로 그 기계를 예 하나씩으로 되지은 셈이야.
안 하기로 한 것들 (계속 '아니' 라고 말하는 목록)
--------------------------------------------------
모델 런타임 없음 대화 기록 없음
웹 화면 없음 자기 vault 읽기 없음
서버도 포트도 없음 또 하나의 Pippa 없음
모델 캐시 없음 브레인이랑 매크로 같이 쓰기 없음
하나하나가 Flint 를 더 무겁게 만들었을 것이자,
이미 브레인이 갖고 있는 것들이야. 이 목록이 척추고.
안 할 것들의 목록이 척추야
그래서 Flint 는 되지 않을 것들을 대놓고 적어둬. 안 할 것들의 목록은 부정적인 게 아니라 뼈대야. 'Flint 가 이것만 캐시하면 안 될까?' 같은 요청이 오면 철학을 처음부터 다시 따질 필요가 없어. 목록만 보면 되지. 모델 결과를 캐시한다는 건 뭔가를 쥐고 언제 버릴지 관리한다는 뜻이고, 그게 모델 런타임으로 가는 길이고, 그건 안 하기로 한 거니까. 목록 하나가 앞으로 벌어질 백 번의 논쟁을 조회 한 번으로 바꿔. 옮기지 않는 기둥 같은 거야.