본문 바로가기
카테고리 없음

샌드박스에 막힌 브라우저 테스트, 경계를 바꾼 기록

by 쑈휴 2026. 9. 6.

2026년 7월 4일, 손을 움직이지 못하는 내게 AI가 작업 손이 되는 환경에서 브라우저 테스트가 막혔다. Fable 사용량은 99%까지 갔고, 늦게 알게 된 실행 경계 하나가 남은 작업 시간을 바꿨다. 이 글은 실패를 의지의 문제가 아니라 실행 환경의 문제로 다시 살핀 기록이다.

“이걸 알았다면 Fable 사용량이 99%까지 안 갔을지도 모른다.”

브라우저 테스트는 왜 내 작업을 멈췄을까?

문제는 테스트 의지가 아니라 codex exec 샌드박스에서 브라우저 렌더 검증이 막힌 실행 경계였다.

나는 손이 움직이지 않아 AI를 단순한 보조 수단이 아니라 실제 작업 손처럼 쓴다. 그래서 테스트에서 한 번 멈추면, 키보드와 마우스를 편하게 쓸 수 있는 사람의 “잠깐 확인”보다 훨씬 긴 비용이 된다. 이번에도 브라우저로 화면을 확인해야 하는 순간이 작업의 병목이 됐다.

처음에는 codex exec 안에서 브라우저 테스트를 끝내려 했다. 그러나 Playwright Chromium을 이용한 렌더 검증이 그 샌드박스에서 막혔다. 원문에 남겨 둔 프로젝트 메모를 다시 보니, 브라우저 렌더 검증은 Claude Code Bash가 맡아야 한다는 역할 분담이 이미 적혀 있었다.

핵심은 어떤 도구가 좋고 나쁘다는 비교가 아니었다. 같은 작업이라도 실행되는 경계가 다르면 할 수 있는 일이 달라진다는 점이다. 브라우저를 열어 실제 화면을 보는 검증은 코드만 생성하는 단계와 다른 조건을 요구한다. 이 차이를 늦게 확인하면서 사용량과 시간이 함께 줄었다.

  • 손이 안 움직이는 나에게 AI는 작업 손이다.
  • 브라우저 테스트는 화면 렌더 확인이 필요한 작업이다.
  • codex exec 샌드박스에서는 Playwright Chromium 검증이 막혔다.
  • 프로젝트 메모에는 Claude Code Bash가 렌더 검증을 맡는다고 기록돼 있었다.

99%라는 숫자가 말해 준 것은 무엇일까?

99%는 한도 자체보다, 가능한 경로를 늦게 찾아 우회에 쓴 시간이 누적됐다는 신호로 남았다.

원문에는 “체감상 아직 60%쯤 남았을 작업”이라는 표현이 있다. 이는 정확한 사용량 산정이 아니라, 처음부터 경계를 나눴다면 같은 작업이 훨씬 덜 무겁게 느껴졌을 것이라는 내 체감이다. 이 글에서 그 체감을 실제 절감 수치로 바꾸어 말할 수는 없다.

다만 99%와 60%라는 두 숫자를 함께 놓으면, 테스트 환경을 먼저 확인하지 않은 비용이 얼마나 크게 느껴졌는지는 분명하다. 막힌 뒤에 다른 방법을 찾는 흐름은 한 번의 추가 명령으로 끝나지 않는다. 무엇이 막혔는지 구분하고, 어떤 환경으로 넘길지를 찾고, 다시 검증해야 한다.

그래서 이후에는 작업을 시작할 때 “이 작업은 코드 생성인가, 실제 브라우저 렌더 확인인가”를 먼저 나누어 보려 한다. 이 질문은 사용량을 예측하는 공식이 아니라, 잘못된 환경에서 오래 붙잡히지 않기 위한 출발점이다.

원문에서 확인한 장면 의미
Fable 사용량 99% 막힌 경로를 오래 탐색한 결과로 체감된 지점
체감상 60% 처음 역할을 나눴다면 남았을 것 같은 작업 여유
Playwright Chromium 차단 샌드박스와 렌더 검증의 경계
codex exec --yolo 원문에서 늦게 알게 됐다고 적은 경로

실행 경계를 어떻게 나눠 봤을까?

코드 실행과 실제 화면 검증을 같은 상자에 넣지 않고, 가능한 환경에 맡기는 방식으로 다시 정리했다.

원문에서 내가 늦게 알게 됐다고 쓴 명령은 codex exec --yolo다. 이 글은 그 명령의 동작 범위나 보안 특성을 새로 단정하지 않는다. 내가 확인한 사실은 브라우저 테스트가 막힌 상황에서 이 경로를 알게 됐다는 것, 그리고 프로젝트 메모가 렌더 검증의 담당 환경을 별도로 적어 두었다는 것뿐이다.

이 경험을 통해 도구를 사용할 때는 결과물만이 아니라 “어디에서 실행되는가”를 메모에 남겨야 한다고 느꼈다. 특히 입술로 화면을 조작하는 내 환경에서는 재현을 위해 다시 여러 화면을 오가는 과정이 큰 체력 비용이 된다. 다음 작업자가 나 자신일 수도 있으므로, 역할 분담은 기억보다 기록에 의존하는 편이 낫다.

브라우저 테스트를 못 한 일이 곧 개발을 못 한 일은 아니었다. 반대로 코드가 있어도 실제 화면 검증이 끝나지 않으면 사용자에게 보이는 결과는 확인되지 않는다. 두 단계를 분리해 보는 것이 이번 기록에서 남은 가장 실용적인 결론이다.

원문을 다시 읽으며 지킨 기준

짧은 스레드 원문을 블로그 글로 옮길 때는, 원문에 적힌 사실과 그 사실을 이해하기 위한 해설을 구분하려 했다. 그래서 확인할 수 없는 원인이나 결과를 덧붙이지 않고, 확실한 숫자와 장면은 그대로 남겼다.

원문보다 긴 글이지만 새 사실을 늘리는 방식으로 분량을 채우지 않았다. 당시의 선택이 어떤 문제와 연결됐는지, 무엇을 일반화할 수 없었는지를 풀어 쓰는 데 집중했다. 원문에 없는 수치, 날짜, 대화와 제품명을 새로 만들지 않는 원칙도 끝까지 지켰다.

다음 작업 전에 남긴 체크

이번 일은 한 도구의 실패담이라기보다 실행 환경의 경계를 뒤늦게 발견한 기록이다. Fable 사용량 99%라는 결과만 보면 한도를 다 쓴 이야기처럼 보이지만, 그 앞에는 샌드박스에서 막힌 Playwright Chromium과 렌더 검증의 담당 환경을 찾는 과정이 있었다.

다음에는 브라우저가 필요한지, 실제 화면을 보아야 하는지부터 적어 두려 한다. 손으로 빠르게 여러 번 시도하기 어려운 내게는 이 작은 분류가 우회 횟수를 줄이는 방법이 될 수 있다.

이 기록에서 자주 나올 질문

Fable 사용량 99%는 정확한 측정 결과인가?

원문에는 99%까지 갔다고 기록돼 있다. 이 글은 그 수치를 사용량 원인별로 계산한 결과로 해석하지 않는다.

60%는 실제로 남았을 사용량인가?

아니다. 원문에 적힌 체감 표현이다. 역할 분담을 빨리 알았다면 작업이 덜 소모됐을 것이라는 내 판단으로 읽어야 한다.

왜 브라우저 테스트를 따로 구분했나?

원문 프로젝트 메모에서 codex exec 샌드박스의 Playwright Chromium 차단과 Claude Code Bash의 렌더 검증 역할이 구분돼 있었기 때문이다.

이 글의 실행 명령을 그대로 따라 해도 되나?

이 글은 개인 기록이다. 명령의 적용 범위와 권한은 환경마다 다르므로, 사용 전에는 공식 문서와 현재 작업 환경을 확인해야 한다.

참고로 확인할 점

이 글의 도구별 세부 동작은 원문에서 확인한 범위만 적었다. 실행 옵션과 현재 지원 범위는 Codex 공식 문서에서 별도로 확인하는 편이 안전하다.


이 글은 제가 2026-07-04에 스레드에 올리고 직접 겪은 일을, 빠졌던 맥락과 확인 방법까지 더해 다시 쓴 글입니다. 원문은 여기서 볼 수 있습니다 → 원본 스레드 글


소개 및 문의 · 개인정보처리방침 · 면책조항

© 2026 휠로그