"모든 무거운 앱은 한때 합리적인 추가에 계속 예 하던 얇은 앱이었어."
얇은 클라이언트는 무겁게 흘러
얇은 클라이언트는 저절로 얇게 안 남아. 무겁게 흘러, 합리적 기능 하나씩, 두 번째 브레인으로 가는 모든 걸음이 그 순간엔 개선처럼 들리니까. Flint 의 규율은 이 유혹들이 절대 안 나타나는 게 아냐 — 항상 나타나 — 앱이 계속 거절하게 지어졌다는 거야. 얇게 남는 건 코스팅할 시작 조건이 아니라 능동적 실천이야.
합리적으로 들리는 진입로들
흐름이 스스로를 어떻게 변론하는지 봐. '모델 호출이 느려; 결과를 여기 캐시하자.' 이제 Flint 이 무효화해야 할 상태를 쥐어. '맥락 위해 최근 변환 몇 개를 기억하자.' 이제 Flint 이 대화 기록을 가져. '일관되게 느껴지게 Flint 한테 작은 페르소나를 주자.' 이제 Flint 이 정체성을 가져. '브레인이 다운됐을 때 되게 작은 로컬 모델을 번들하자.' 이제 Flint 이 모델 런타임을 가져. 각각은 합리적이야; 모여선 리메이크가 지운 바로 그 기계를, 예 하나씩 되지은 거야.
비-목표 (각각 Flint 이 계속하는 '아니오')
--------------------------------------------------
모델 런타임 없음 대화 기록 없음
웹 UI 없음 자기 vault 리더 없음
HTTP 서버 / 포트 없음 병렬 Pippa 정체성 없음
모델 캐싱 없음 브레인과 공유 매크로 CRUD 없음
모든 항목이 Flint 을 더 무겁게 했을 것이자
브레인이 이미 소유한 거야. 목록이 척추야.
비-목표가 척추야
그래서 Flint 은 되지 않을 것들의 명시적 목록을 쥐어. 비-목표 목록은 부정성이 아냐; 구조야. 변경 요청이 오면 — 'Flint 이 이거 그냥 캐시하면 안 돼?' — 철학 전체를 다시 다투지 않고, 목록을 확인해: 모델 결과를 캐시하는 건 상태를 쥐고 무효화하는 거고, 그게 모델-런타임 흐름이고, 그게 비-목표야. 목록이 백 개의 미래 논쟁을 조회 하나로 바꿔. 옮기지 않는 하중 벽이야.