"한 레이어는 항상 같은 답을 줘. 다른 레이어는 생각해야 해. 둘을 단단한 선 반대편에 둬."
다시 발견한 두 레이어
Rekindle 의 가장 깊은 구조 규칙은 발명이 아냐 — cwkWritingToolkit 이 이미 가졌던 봉합선이야. 그 옛 플러그인은 두 가지를 했고, 근본적으로 다른 종류였어. WordPress-tag ruleset 은 결정론적: 이 선택을 저 마크업으로 감싸, 매번, 생각 필요 없이. corpus 자동완성은 판단: 작가가 실제로 다음에 쓸 단어로 손 뻗기. 하나는 고정 변환; 다른 하나는 결정. Rekindle 은 이걸 이름 붙이고 각각 자기 집을 줘 — 결정론은 Rust 코어, 판단은 Pippa.
레이어 답하는 질문 집
------------- ----------------------------- --------
결정론 "같은 입력 -> 같은 출력?" Rust 코어
판단 "맥락상 여기 뭐가 맞나?" Pippa
절대 안 섞어
규칙은 그냥 '두 레이어 가져' 가 아냐 — 절대 안 섞어 야. 판단 (톤, register, 이게 아빠처럼 들려) 을 Rust 코어에 밀어넣지 말고, 결정론적 작업 (frontmatter 파싱, export ruleset 적용) 을 AI 호출 뒤에 두지 마. 봉합선을 흐리는 순간, 양쪽이 다 나빠져. 결정론적 변환은 경로에 모델이 있어 재현 불가능해지고, 판단은 규칙 표에 갇혀 취약해져. 그 선이 각 쪽이 자기 일을 잘하게 유지하는 것이야.
가족 전체의 같은 척추
이건 Rekindle 만의 별난 게 아니라 가족 척추야. Loomis 는 이걸 결정론적 기하 먼저, ML 은 landmark fitting 에만 으로 그어 — 그림 구조는 계산되고 재현 가능하고, 지저분한 지각 단계만 모델을 써. Rekindle 은 같은 선을 한 도메인 옆에 그어. Rust 의 재현 가능한 텍스트 변환, Pippa 의 열린 voice 와 재작성. 도구가 '항상 같은' 작업과 '결정이 필요한' 작업을 섞을 때마다, 이기는 수는 봉합선을 이름 붙이고 둘이 새지 않게 거부하는 거야.