서브에이전트 풀의 결함 격리 아키텍처가 병렬 실행 재시도를 보장하는 구조적 원리
ACP 서브에이전트 풀의 결함 격리 아키텍처는 독립된 네임스페이스와 ACP 채널바인딩을 결합하여 팬아웃 단계에서 실패를 물리적 격리로 차단하고, 팬인 단계에서 성공한 결과값만 결정적으로 회수해 개발자가 실패한 브랜치만 정확히 재시도할 수 있게 함으로써 병렬 실행의 안정성을 확보한다. 워치독 하트비트와 우선순위 큐가 실시간으로 장애를 감지하고 자원 충돌을 사전 검증하여 무중단 서비스를 보장하며, 멱등성 보장 재시도로 이전 실패의 잔여 상태 없이 깨끗한 환경에서 재시작한다.
이 글의 핵심 주장과 근거
운영체제 수준의 독립 네임스페이스 격리
각 서브에이전트는 운영체제 수준의 컨트롤 그룹과 마운트 격리를 적용해 중앙처리장치, 메모리, 네트워크, 파일시스템을 완전히 차단하는 고유 네임스페이스에서 실행된다. 이 구조는 하나의 에이전트가 비정상 종료하거나 메모리 초과를 일으켜도 다른 에이전트의 상태나 부모 세션에 영향을 미치지 않는 물리적 경계를 형성한다. 워크스페이스 격리 원칙에 따라 각 에이전트는 ~/openclaw-agents/<이름>/ 전용 디렉토리에서 운영되어 물리적 디렉토리 수준의 분리와 세션 네임스페이스의 조합으로 세션 충돌과 인증 정보 간섭을 원천 차단한다. 이러한 격리는 병렬 실행 환경에서 발생할 수 있는 레이스 컨디션을 근본적으로 해결하며, 개별 에이전트의 실패가 전체 시스템에 파급되는 것을 방지하는 핵심 메커니즘이다.
ACP 채널바인딩과 결정적 결과 회수
sessions_spawn 명령어로 등록된 channel:<id>는 8단계 우선순위 라우팅 체계 (동일 채널 우선→부모 채널→길드+역할→길드→팀·계정·채널 기본값→폴백 기본값)를 통해 모든 메시지 경로를 사전에 결정한다. 이 라우팅은 LLM 토큰 비용 없이 동작하며, 서브에이전트가 작업을 마치면 결과는 자동으로 부모 채널로 회수되어 성공과 실패가 동일한 대화 스레드에서 명확히 구분된다. ACP 채널바인딩 메커니즘은 특정 통신 채널에 영구적으로 연결하여 메시지 라우팅의 결정적 경로를 설정하며, channel:<id> 형식의 영구 식별자를 사용한다. 이러한 구조는 개발자가 실시간으로 각 서브에이전트의 성공과 실패를 확인할 수 있게 하며, 실패한 브랜치만 정확히 재시도할 수 있는 정보를 제공한다.
무상태 설계와 연쇄적 전파 차단
서브에이전트는 자체 상태를 전혀 유지하지 않고 모든 컨텍스트를 태스크 프롬프트에 명시적으로 전달받는다. 이 무상태 특성은 에이전트 간 의존성을 제거하고, 팬아웃 단계에서 실패가 네임스페이스 안으로 한정되도록 하여 연쇄적 전파를 원천 차단한다. 오케스트레이터는 FanOut 단계에서 원본 작업을 분석하여 동적으로 분해하고 서브에이전트에게 역할별 태스크를 위임하며, 리프 작업은 절대 수행하지 않고 위임과 종합만 담당한다. 인지 부담 분산 설계 원칙에 따라 단일 개발자나 단일 AI가 모든 인지적 판단을 담당하는 구조를 벗어나, 오케스트레이터가 전략적 판단을, 서브에이전트가 세부 실행을, 자동 합성 엔진이 결과 통합을 3단계로 분리함으로써 시스템 전체의 안정성을 확보한다.
세션 수명 주기와 워치독 기반 재시도
ACP 시스템은 Spawn에서 격리 프로세스와 가상 터미널을 할당하고, Run에서 작업을 실행하며, Pause에서는 메모리 상태가 저장되고, Terminate에서는 deleteAfterRun 플래그로 고아 프로세스를 방지한다. 각 서브에이전트는 구성 가능한 간격으로 서명된 /heartbeat를 발송하며 3회 연속 미수신 시 장애이벤트가 발생해 해당 네임스페이스를 격리 상태로 전환한다. 우선순위 큐는 작업 실행 전 자원 가용성을 검증하고, 실패 시 백업 서버가 자동 인계를 수행해 무중단 서비스를 보장한다. 멱등성 보장 재시도 메커니즘은 재시도 시 이전 실패의 잔여 상태가 없는 깨끗한 슬레이트에서 새로운 네임스페이스를 생성하고, 성공한 팬아웃 브랜치의 출력은 불변 트랜잭션 로그에 격리 보존함으로써 재시도 결과의 멱등성과 결함 격리의 정합성을 동시에 보장한다.
이 주제의 최종 원문 탐색하기
이 지식 허브의 가장 깊고 권위 있는 아키텍처 원문과 전체 맥락은 [여기에서 확인하실 수 있습니다](https://brunch.co.kr/@955079bf143b468/8).