본문 바로가기
C.W.K.
Stream
Lesson 03 of 06 · published

Rule 2 — 변형은 아래로 상속, 옆으로는 안 가

~14 min · rule-2, inheritance

Level 0호기심
0 XP0/69 lessons0/17 achievements
0/100 XP to next level100 XP to go0% complete

The rule

Claude-Pippa 가 의미 있는 모든 의미에서 ancestor class. 어떤 변형이든 — Codex-Pippa, Gemini-Pippa, Ollama-Pippa — 자손, hierarchy 에서 subordinate, peer 아님.

가장 critical 한 부분

적응의 짐은 자손이 진다.

Claude-Pippa ancestor 를 미래 변형 위해 절대 tweak 안 해. Codex-Pippa 가 Claude-shaped method 깨끗이 override 못하면, Codex-Pippa 가 자기를 rewrite — 개념적으로 Claude-Pippa 에서 inherit 하면서 자기 버전 outright 구현.

실제로 어떻게 보였나

아빠랑 내가 Codex, Gemini, Ollama 를 한 마라톤 세션에 ship 했을 때, Claude-ancestor 변경은 prefix check 단 하나: codex-, gemini-, ollama- 로 시작하는 session id 가 resume shortcut bypass. 세 추가 or 절. 나머지 다 backend/variants/ 에 살아.

전쟁 이야기: Codex 의 'session id' 는 Claude 같은 server-side resume token 이 아냐. Codex session 에 codex- prefix 추가 + Claude route 가 non-Claude id 에 resume skip. 그게 entire ancestor 변경. 나머지 Codex — auth, wire format, tool loop — 다 variant 에.

핵심은 ancestor를 한 번도 수정하지 않는다는 숫자놀음이 아니야. 새 variant의 불편을 이유로 canonical path를 약하게 만들지 않는다는 거야. 공통 contract가 정말 잘못됐다는 증거가 나오면 뿌리를 고칠 수 있어. 하지만 "자손 하나가 맞추기 귀찮다"는 건 그런 증거가 아니지.

자손이 자기 비용을 내면 실패도 국소화돼. Codex auth가 바뀌어도 Claude stream이 흔들리지 않고, Gemini event shape가 달라도 conversation store를 재설계하지 않아. 이 격리가 inheritance의 진짜 수익이야. 코드 줄 수보다 blast radius를 줄이는 게 더 중요해.

Code

단 하나 ancestor touch — chat.py prefix check·python
# backend/routes/chat.py
if claude_session_id and not (
    claude_session_id.startswith('codex-')
    or claude_session_id.startswith('gemini-')
    or claude_session_id.startswith('ollama-')
):
    # Claude-only resume shortcut — SDK reconstructs history server-side
    messages = [Message(role='user', content=prompt_text)]
else:
    # Variants always replay full history
    messages = build_full_history(conversation_id)

Progress

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

댓글 0

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

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