2026OpenClawsplit brainlastTouchedVersiongateway status --deep원격 Mac

2026 OpenClaw 업그레이드 후 split-brain: meta.lastTouchedVersion, gateway status --deep, PATH 정렬 실무 매트릭스

공식 트러블슈팅의 newer config guard는 새 빌드가 openclaw.jsonmeta.lastTouchedVersion을 남기는데 대화형 셸이 여전히 오래된 openclaw 바이너리를 해석하는 상황을 말합니다. 그러면 gateway restartgateway install이 거부되거나 no-op처럼 보일 수 있습니다. 이는 remote gateway(잘못된 gateway.remote.url)와 다르며, 본문은 동일 호스트 이중 설치, PATH, launchd/systemd 메타데이터gateway status --deep에 초점을 맞춥니다. pairing, install, 4.5 회귀, 4.14 감사, 4.x doctor로 연결합니다.

OpenClawsplit brainPATHdoctor2026
OpenClaw split brain upgrade lastTouchedVersion gateway deep PATH

문제점: restart가 거짓처럼 느껴질 때

문제 1: 설정은 새 스키마로 쓰였지만 감독 바이너리는 구버전입니다. meta.lastTouchedVersion이 앞서 있으면 구 CLI는 서비스 변경을 멈추는 것이 정상 동작에 가깝습니다.

문제 2: Homebrew, npm -g, 수동 심볼릭 링크가 공존하면 터미널의 which openclaw와 launchd plist의 PATH가 갈라집니다.

문제 3: gateway status --deep가 과거 실험으로 남은 게이트웨이 유사 서비스를 나열합니다. 방치하면 doctor와 install이 충돌합니다.

문제 4: 버전과 PATH를 맞추기 전 pairing만 반복하면 정체성 문제만 쫓게 됩니다.

문제 5: gateway.remote.url이 폐기 호스트를 가리키면 증상은 비슷하지만 원인은 전송층입니다. 먼저 which -a로 가설을 나눕니다.

계층: 구 바이너리 거부 vs 실제 손상

L0 openclaw --versiongateway status 요약을 같은 티켓에 붙입니다.

L1 meta.lastTouchedVersion과 CLI 메이저를 비교하고, 스탬프가 더 새면 구 바이너리에서의 서비스 변경을 중단합니다.

L2 openclaw gateway status --deep로 시스템 레벨 유닛과 추가 launchd 라벨을 기록합니다.

L3 PATH를 맞춘 뒤 openclaw doctor를 실행합니다. doctor --fix는 4.14 맥락을 읽은 후에만.

L4 RPC가 초록일 때만 channels status --probe입니다. 침묵은 채널 글Telegram 초기화로 이동합니다.

티켓 최소 증거 패키지

두 버전 문자열, Config(cli)와 Config(service) 경로, meta.lastTouchedVersion, which -a openclaw, 유닛 이름, deep 발췌를 고정합니다. 업그레이드 창에서는 매시간 델타를 남겨 PATH 드리프트인지 중복 유닛인지 구분하기 쉽습니다.

원격 Mac에서 아티팩트 전송과 게이트웨이를 동시에 돌리면 CPU와 디스크 I/O 스냅샷을 첨부해 RPC 실패와 리소스 기아를 혼동하지 마세요. 2단계 CI 글의 리소스 절과 교차 검증할 수 있습니다.

의사결정 매트릭스

서명의미첫 조치피할 것
서비스 변경 거부lastTouchedVersion이 CLI보다 최신PATH를 새 dist로→install --force구 바이너리에서 --fix
deep가 중복 나열오래된 plist/systemd공식 힌트로 여분 비활성두 launchd 병행
Config 경로만 다름HOME 드리프트EnvironmentFile과 셸 정렬JSON만 수동 편집
RPC 실패+URL 이상remote 오연결remote 문서로split-brain 중 pairing 리셋

7단계: 단일 진실로 수렴

  1. gateway status--deep을 마스킹해 고정합니다.
  2. which -a openclaw와 심볼릭 링크 목적지를 나열합니다.
  3. 셸과 감독 프로세스의 PATH를 동일 접두로 맞추고 필요 시 plist에 절대 경로를 씁니다.
  4. 버전이 일치한 뒤 서비스 변경을 시도합니다.
  5. openclaw gateway install --force 후 콜드 재시작합니다.
  6. doctor로 블로커를 제로로 만들고 요약을 티켓에 붙입니다.
  7. RPC 지연과 성공한 UI 조작을 다음 업그레이드 기준선으로 남깁니다.

수집 예

which -a openclaw
openclaw --version
openclaw gateway status --deep
openclaw doctor

심화: 관측, 책임, 훈련

(1) 2026년 운영에서는 meta.lastTouchedVersion과 이중 Config 표시가 한 티켓에 섞이기 쉽습니다. 먼저 변수를 고정하고 which -a 출력과 plist의 PATH를 나란히 붙여 바이너리 거부인지 HOME 드리프트인지 나눕니다. 노트북 절전으로 SSH가 끊기면 채널 침묵을 split-brain으로 오판하지 마세요.

(2) 분기마다 PATH 앞에 오래된 래퍼를 잠시 넣는 훈련을 하여 모니터링이 잘못된 해석을 잡는지 확인합니다. 스테이징 Mac에 중복 plist를 심어 deep이 둘 다 나열하는지, 정본 라벨을 런북에 적었는지 검증합니다.

(3) install --force 실패 시 롤백 tarball과 복구 소요 시간을 문서화합니다. split-brain은 심리 부담이 커서 리허설된 롤백이 평균 복구 시간을 줄입니다.

(4) 야간 작업으로 비대화 셸에서 해석된 openclaw 경로와 plist에 박힌 경로를 비교해 분기만으로 알람을 올립니다. RPC가 초록인데도 부분 장애가 이어지는 패턴을 드러냅니다.

(5) 본문 절차는 동일 호스트 바이너리 어긋남에 효과적이며 공급자 장애나 모델 429는 범위 밖입니다. 필기 운영 비용이 지배적이면 상시 가동 원격 Mac을 관리형 입구로 임대하는 선택이 총소유비용을 낮출 수 있습니다. 토큰 정책과 런북은 자사에 남기고 하드웨어와 관측 기본값을 앞당깁니다.

관련 읽기

remote: remote 매트릭스. pairing: 런북. install: 상주.

노트북 수면과 다중 설치가 변수를 키우면 단일 감독자와 파일 동거를 동시에 만족하는 원격 Mac 임대가 현실적인 다음 수가 됩니다.

FAQ

재설치만으로 충분한가요?

PATH와 중복 유닛을 정리하지 않으면 재설치도 옛 입구에 다시 묶입니다.

Docker와 베어메탈 병행은?

감독 패턴은 하나로 줄이고 deep이 단일 경로를 보일 때까지 정리합니다.

SFTPMAC을 고르는 이유

단일 바이너리 진실, 안정적인 입구, 아티팩트 워크플로와의 동거 관측을 앞당기면서 토큰과 런북은 고객 측에 남길 수 있습니다.