<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Ide &amp; Wawasan – Autotomy</title><description>Mengeksplorasi pengembangan AI-first, coding guardrail, dan arsitektur untuk dibuang.</description><link>https://autotomy.dev/</link><language>id</language><item><title>Branch Main Anda Rusak. Anda Memiliki 200 Commit untuk Diperiksa.</title><link>https://autotomy.dev/id/blog/git-bisect-binary-search-commit/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/git-bisect-binary-search-commit/</guid><description>Git bisect mengubah pencarian commit manual menjadi pencarian biner otomatis. Berikut cara menemukan commit eksak yang memperkenalkan bug tanpa harus checkout setiap commit satu per satu.</description><pubDate>Tue, 25 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Error Tracker Anda Tahu Di Mana Ia Mati. Itu Tidak Akan Membantu Anda Mereproduksinya.</title><link>https://autotomy.dev/id/blog/production-crash-capture-replay/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/production-crash-capture-replay/</guid><description>Stack trace memberi tahu Anda di mana crash terjadi, bukan apa yang menyebabkannya. Berikut pola capture-and-replay yang mengubah crash produksi menjadi kasus test lokal yang sebenarnya bisa Anda debug.</description><pubDate>Mon, 24 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Symbolic Execution Menemukan Integer Overflow yang Dilewatkan Cakupan Test 94% Saya</title><link>https://autotomy.dev/id/blog/symbolic-execution-integer-overflow-coverage/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/symbolic-execution-integer-overflow-coverage/</guid><description>Unit test Anda memeriksa input spesifik. Symbolic execution memeriksa setiap input yang mungkin. Berikut cara kerjanya, biayanya, dan tempat untuk memulai.</description><pubDate>Sun, 23 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Log Anda Bocor PII, dan grep Tidak Akan Menyelamatkan Anda</title><link>https://autotomy.dev/id/blog/pii-tracking-code-pipeline/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/pii-tracking-code-pipeline/</guid><description>Kebanyakan tim menemukan kebocoran PII setelah keluhan pelanggan. Berikut cara melacak data sensitif dari ingestion hingga output dengan contoh kode yang bisa Anda gunakan hari ini.</description><pubDate>Sat, 22 Aug 2026 00:00:00 GMT</pubDate></item><item><title>API Anda Rusak di Produksi karena CI Menguji Kode, Bukan Contracts</title><link>https://autotomy.dev/id/blog/api-contract-testing-ci/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/api-contract-testing-ci/</guid><description>Kebanyakan pipeline CI menangkap kesalahan sintaks dan bug logika. Mereka melewatkan perubahan contract API yang sebenarnya mematikan produksi. Berikut cara memperbaikinya.</description><pubDate>Fri, 21 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Korelasi Crash Berbohong. Inilah Cara Membuatnya Menunjuk ke Bug yang Sebenarnya.</title><link>https://autotomy.dev/id/blog/crash-correlation-triangulation/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/crash-correlation-triangulation/</guid><description>Statistical debugging menemukan predicates yang berkorelasi dengan crash, tetapi korelasi bukanlah file dan nomor baris. Berikut cara memberi peringkat, menyaring, dan melakukan triangulasi dari skor korelasi ke lokasi bug yang sebenarnya.</description><pubDate>Thu, 20 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Seer dari Sentry Bisa Membaca Trace Anda. Itu Tidak Berarti Ia Selalu Menemukan Akar Masalahnya.</title><link>https://autotomy.dev/id/blog/sentry-seer-trace-root-cause/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/sentry-seer-trace-root-cause/</guid><description>Seer menyerap pohon trace, error yang terhubung, dan data profiling untuk mendiagnosis masalah terdistribusi. Berikut cara kerjanya sebenarnya, di mana ia unggul, dan di mana ia masih membutuhkan bantuan manusia.</description><pubDate>Wed, 19 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Statistical debugging seharusnya mengakhiri printf debugging. Sebagian besar tim tidak pernah berhasil membuatnya berfungsi.</title><link>https://autotomy.dev/id/blog/statistical-debugging-adoption-challenges/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/statistical-debugging-adoption-challenges/</guid><description>Statistical debugging menjanjikan untuk menunjuk bug dengan tepat dengan mengkorelasi perilaku program dengan kegagalan. Berikut mengapa ide itu tidak pernah melintasi dari makalah penelitian ke sistem produksi.</description><pubDate>Tue, 18 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Test Anda lulus. Data Anda masih salah.</title><link>https://autotomy.dev/id/blog/statistical-debugging-production-data-anomalies/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/statistical-debugging-production-data-anomalies/</guid><description>Statistical debugging memperlakukan data produksi Anda sebagai sinyal dan bug sebagai anomali. Begini cara menemukan korupsi data, kesalahan off-by-one, dan kegagalan diam-diam tanpa menambahkan satu unit test pun.</description><pubDate>Mon, 17 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Metamorphic testing menemukan 147 bug kompiler dan satu cacat mobil self-driving. Begini cara kerjanya.</title><link>https://autotomy.dev/id/blog/metamorphic-testing-production-bugs-compiler/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/metamorphic-testing-production-bugs-compiler/</guid><description>Metamorphic testing telah mengungkap bug nyata di GCC, LLVM, kompiler shader Vulkan, dan simulator ADAS. Posting ini menjelaskan tekniknya dengan kode yang bisa dijalankan dan menunjukkan di mana ia cocok di dalam test suite Anda.</description><pubDate>Sun, 16 Aug 2026 00:00:00 GMT</pubDate></item><item><title>LLM Bisa Menyarankan Metamorphic Relations. Mereka Hanya Tidak Bisa Menjaminnya.</title><link>https://autotomy.dev/id/blog/llm-metamorphic-relations-brainstorming/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/llm-metamorphic-relations-brainstorming/</guid><description>Large language models adalah mitra brainstorming yang lumayan untuk menemukan test oracles, tetapi mereka menghasilkan properti halusinasi dan melewatkan constraint domain. Berikut cara menggunakannya tanpa mengirimkan pengujian yang palsu.</description><pubDate>Sat, 15 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Kebanyakan Metamorphic Relations Tidak Berguna. Berikut Cara Memilih yang Baik.</title><link>https://autotomy.dev/id/blog/metamorphic-relation-quality/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/metamorphic-relation-quality/</guid><description>Tidak semua metamorphic relations menangkap bug. Relation yang lemah memberikan kepercayaan palsu sementara relation yang kuat menemukan kesalahan nyata. Berikut cara membedakannya dan membangun set relation yang benar-benar berfungsi.</description><pubDate>Fri, 14 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Bagaimana Saya Menguji Kode Ketika Saya Tidak Mengetahui Jawaban yang Benar?</title><link>https://autotomy.dev/id/blog/metamorphic-testing-oracle-problem/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/metamorphic-testing-oracle-problem/</guid><description>Metamorphic testing memungkinkan Anda memverifikasi kebenaran kode tanpa mengetahui output yang diharapkan secara pasti. Berikut cara kerjanya, kapan kekurangannya, dan cara mulai menggunakannya.</description><pubDate>Thu, 13 Aug 2026 00:00:00 GMT</pubDate></item><item><title>TypeScript Tidak Akan Mengizinkan Anda Melakukan Panggilan Itu: Menyandikan Protocol State dalam Type System</title><link>https://autotomy.dev/id/blog/typescript-phantom-types-protocol-state/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/typescript-phantom-types-protocol-state/</guid><description>Cara menggunakan phantom types dan parameter `this` untuk mengubah transisi protocol yang ilegal menjadi error waktu kompilasi, bukan bug waktu runtime.</description><pubDate>Wed, 12 Aug 2026 00:00:00 GMT</pubDate></item><item><title>OpenAPI Memberi Anda Alfabet. Session Types Butuh Tata Bahasa.</title><link>https://autotomy.dev/id/blog/openapi-session-types-protocol-gap/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/openapi-session-types-protocol-gap/</guid><description>Spesifikasi OpenAPI mendeskripsikan skema request dan response, tetapi tidak menentukan urutan pesan yang valid. Berikut cara mengekstrak apa yang bisa Anda dapatkan dan di mana Anda masih perlu mengisi celahnya.</description><pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Tipe sesi bekerja. Kebanyakan bahasa hanya menolak untuk mengimplementasikannya.</title><link>https://autotomy.dev/id/blog/session-types-research-to-production/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/session-types-research-to-production/</guid><description>Tipe sesi mengenkode protokol komunikasi dalam sistem tipe, mengubah kesalahan protokol runtime menjadi kegagalan waktu kompilasi. Berikut mengapa mereka menghabiskan tiga puluh tahun di makalah penelitian sebelum kode produksi dapat menggunakannya.</description><pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Bagaimana Tipe Sesi Mengubah Deadlock Menjadi Kesalahan Kompilator</title><link>https://autotomy.dev/id/blog/session-types-deadlock-compiler-errors/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/session-types-deadlock-compiler-errors/</guid><description>Tipe sesi mengenkode protokol komunikasi dalam sistem tipe Anda, mengubah ketidakcocokan pengiriman pesan menjadi kesalahan kompilator sebelum kode Anda dijalankan.</description><pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Abstract interpretation terdengar seperti persyaratan PhD. Sekarang tidak lagi.</title><link>https://autotomy.dev/id/blog/infer-abstract-interpretation-ci/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/infer-abstract-interpretation-ci/</guid><description>Cara menjalankan analisis statis formal di pipeline CI menggunakan Infer, dengan konfigurasi yang berfungsi dan trade-off yang realistis.</description><pubDate>Sat, 08 Aug 2026 00:00:00 GMT</pubDate></item><item><title>LLM Dapat Mengurutkan Peringatan Analisis Statis Anda. Mereka Hanya Tidak Dapat Menjelaskan Mengapa.</title><link>https://autotomy.dev/id/blog/llm-static-analysis-triage/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/llm-static-analysis-triage/</guid><description>Large language model dapat membantu triase positif palsu analisis statis, tetapi mereka tidak memahami semantik program seperti abstract interpretation. Berikut cara menggabungkan keduanya.</description><pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Facebook Memparalelkan Android dengan Abstract Interpretation. Begini Cara Kerjanya.</title><link>https://autotomy.dev/id/blog/facebook-android-abstract-interpretation-races/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/facebook-android-abstract-interpretation-races/</guid><description>Bagaimana Facebook menggunakan abstract interpretation dan unsoundness yang disengaja untuk menemukan race condition secara masif pada jutaan baris kode Android.</description><pubDate>Thu, 06 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Meta Menemukan 100.000 Bug di Kode Produksi dengan Static Analyzer yang Tidak Pernah Menjalankan Program</title><link>https://autotomy.dev/id/blog/meta-infer-100000-bugs-static-analysis/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/meta-infer-100000-bugs-static-analysis/</guid><description>Infer dari Meta menggunakan abstract interpretation dan bi-abduction untuk menemukan null dereference, memory leak, dan race condition dengan menalar struktur kode, bukan eksekusinya. Berikut cara kerjanya dan cara menggunakannya di codebase Anda sendiri.</description><pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Analisis Statis Tidak Bisa Membuktikan Pesawat Anda Tidak Akan Jatuh. Ia Bisa Membuktikan Sesuatu yang Lebih Berguna.</title><link>https://autotomy.dev/id/blog/static-analysis-aviation-abstract-interpretation/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/static-analysis-aviation-abstract-interpretation/</guid><description>Interpretasi abstrak melebihi-aproksimasi setiap kemungkinan keadaan program. Jika pembagian dengan nol tidak terjangkau dalam abstraksi, maka ia tidak terjangkau dalam kode nyata. Berikut cara kerjanya dan di mana ia mengalami kegagalan.</description><pubDate>Tue, 04 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Cara membuktikan kode Anda bebas dari kesalahan runtime (dan mengapa Anda mungkin akan menyerah mencoba)</title><link>https://autotomy.dev/id/blog/abstract-interpretation-runtime-error-proof/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/abstract-interpretation-runtime-error-proof/</guid><description>Interpretasi abstrak memungkinkan Anda membuktikan kesalahan runtime mustahil terjadi sebelum eksekusi. Berikut cara kerjanya secara nyata, mengapa hal itu sulit, dan di mana ia cocok dalam rantau alat Anda.</description><pubDate>Mon, 03 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Kode C Anda Dapat Berjalan di Perangkat Keras Capability Tanpa rewrite Penuh</title><link>https://autotomy.dev/id/blog/cheri-c-porting-hybrid-abi/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/cheri-c-porting-hybrid-abi/</guid><description>ABI hibrida CHERI memungkinkan Anda mem-porting kode C ke perangkat keras capability secara bertahap. Berikut cara mengompilasinya, apa yang rusak, dan cara memperbaikinya tanpa rewrite seluruh codebase Anda.</description><pubDate>Sun, 02 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Hardware capability tidak gagal. Ia datang 40 tahun terlalu awal.</title><link>https://autotomy.dev/id/blog/capability-hardware-cheri-history/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/capability-hardware-cheri-history/</guid><description>Keamanan memori di tingkat hardware telah mungkin sejak tahun 1970-an. Berikut mengapa arsitektur capability terus kalah dari model memori datar, dan mengapa CHERI akhirnya mengubah persamaan tersebut.</description><pubDate>Sat, 01 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Dependensi C Anda Bisa Membuat Seluruh Proses Crash. WebAssembly Bisa Mencegahnya.</title><link>https://autotomy.dev/id/blog/c-library-wasm-sandbox/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/c-library-wasm-sandbox/</guid><description>Container terlalu berlebihan untuk mengisolasi satu library C. Kompilasi ke WebAssembly dan jalankan di dalam sandbox WASI untuk memory safety, akses filesystem berbasis capability, dan containment crash tanpa Docker.</description><pubDate>Fri, 31 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Ponsel Anda Sudah Memiliki Hardware yang Mendeteksi Korupsi Memori</title><link>https://autotomy.dev/id/blog/mobile-memory-tagging-extension/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/mobile-memory-tagging-extension/</guid><description>ARM Memory Tagging Extension dan GWP-ASan memungkinkan deteksi keamanan memori di produksi pada perangkat mobile modern. Berikut cara kerjanya dan seperti apa pertukarannya.</description><pubDate>Thu, 30 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Buffer Overflows Terus Terjadi Karena Kita Memperbaikinya di Software</title><link>https://autotomy.dev/id/blog/cheri-hardware-buffer-overflow-prevention/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/cheri-hardware-buffer-overflow-prevention/</guid><description>CHERI adalah ekstensi hardware yang mengubah setiap pointer menjadi bounded capability. Berikut cara ia menghentikan buffer overflow di level CPU, biayanya, dan cara mencobanya di hardware nyata.</description><pubDate>Wed, 29 Jul 2026 00:00:00 GMT</pubDate></item><item><title>LLM Tidak Bisa Membuktikan Kode Anda Benar, Tapi Mereka Bisa Menulis Boilerplate yang Melakukannya</title><link>https://autotomy.dev/id/blog/llm-cleanroom-proof-obligation-automation/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/llm-cleanroom-proof-obligation-automation/</guid><description>Verifikasi Cleanroom memerlukan pembuatan dan pelunasan kewajiban pembuktian. Berikut cara LLM mengotomatisasi anotasi dan pembuatan VC sehingga Anda bisa fokus pada pembuktian yang sebenarnya sulit.</description><pubDate>Tue, 28 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Cleanroom Menghasilkan 0,1 Defect per KLOC. Anda Tidak Perlu Proses Lengkap untuk Sampai ke Sana.</title><link>https://autotomy.dev/id/blog/cleanroom-pragmatic-subset/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/cleanroom-pragmatic-subset/</guid><description>Cleanroom software engineering memangkas defect rate 100×, tapi adopsi penuh memerlukan tim test terpisah dan proof formal. Berikut subset pragmatis yang menangkap sebagian besar manfaat tanpa overhead-nya.</description><pubDate>Mon, 27 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Zero-Defect Process IBM Menghasilkan 0,1 Bug Per KLOC. Industri Tetap Meninggalkannya.</title><link>https://autotomy.dev/id/blog/ibm-cleanroom-zero-defects-disappearance/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/ibm-cleanroom-zero-defects-disappearance/</guid><description>Cleanroom engineering IBM mencapai defect rate 100 kali lebih baik dari rata-rata industri, lalu menghilang dalam gelap. Penghilangannya tidak ada hubungannya dengan apakah itu berfungsi.</description><pubDate>Sun, 26 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Apakah ada yang benar-benar memverifikasi 10.000 baris dengan nol defect? IBM melakukannya, dan metodologinya lebih aneh daripada hasilnya.</title><link>https://autotomy.dev/id/blog/ibm-cleanroom-10000-lines-zero-defects/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/ibm-cleanroom-10000-lines-zero-defects/</guid><description>Cleanroom software engineering menjanjikan increment zero-defect melalui mathematical verification alih-alih debugging. Kami melihat data proyek IBM yang sebenarnya untuk melihat apakah klaim itu bertahan.</description><pubDate>Sat, 25 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Modul Anda Punya Tiga Lapisan. Anda Mungkin Hanya Menulis Satu.</title><link>https://autotomy.dev/id/blog/cleanroom-box-structure-three-layers/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/cleanroom-box-structure-three-layers/</guid><description>Box Structure memaksa Anda mendefinisikan apa yang dilakukan modul, apa yang diingatnya, dan cara kerjanya sebagai tiga lapisan terpisah yang dapat diverifikasi. Inilah cara Cleanroom menghilangkan debugging.</description><pubDate>Fri, 24 Jul 2026 00:00:00 GMT</pubDate></item><item><title>IBM Mengirimkan Perangkat Lunak dengan 0,1 Defect per KLOC dengan Melarang Developer Menjalankan Kode Mereka Sendiri</title><link>https://autotomy.dev/id/blog/ibm-cleanroom-01-defects-per-kloc/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/ibm-cleanroom-01-defects-per-kloc/</guid><description>Proses rekayasa Cleanroom IBM mencapai tingkat defect 100 kali lebih baik dari rata-rata industri dengan mencegah bug alih-alih menemukannya. Begini cara kerjanya, mengapa hampir tidak ada yang menggunakannya, dan apa yang bisa Anda tiru darinya sekarang.</description><pubDate>Thu, 23 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Program literate Anda rusak hingga CI dapat melakukan tangle tanpa Anda</title><link>https://autotomy.dev/id/blog/ci-literate-programming-tangle/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/ci-literate-programming-tangle/</guid><description>Literate programming menjanjikan sumber kebenaran tunggal, tetapi langkah weave dan tangle manual merusak pipeline CI/CD. Berikut cara mengotomatiskan ekstraksi dan pembuatan dokumentasi sehingga file Markdown Anda tetap kanonis.</description><pubDate>Wed, 22 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Menjelaskan Kode ke LLM Terlebih Dahulu Mengurangi Bug Rate Saya 85%</title><link>https://autotomy.dev/id/blog/llm-rubber-ducking-bug-rate/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/llm-rubber-ducking-bug-rate/</guid><description>Saya menghabiskan 30 hari menulis penjelasan desain sebelum meminta kode ke LLM. Hasilnya mengubah cara saya berpikir tentang rubber-ducking.</description><pubDate>Tue, 21 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Saya berhenti menyalin kode ke dokumen dengan menyimpan test, kode, dan prosa dalam satu file Markdown</title><link>https://autotomy.dev/id/blog/literate-programming-markdown-python/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/literate-programming-markdown-python/</guid><description>Literate programming menjaga dokumentasi, test, dan implementasi tetap sinkron dengan menjadikan satu file Markdown sebagai single source of truth. Berikut cara mengimplementasikannya dalam tiga puluh baris Python.</description><pubDate>Mon, 20 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Thread Claude Anda Sudah Adalah Dokumentasi. Hanya Saja Mati dalam Dua Belas Jam.</title><link>https://autotomy.dev/id/blog/claude-thread-to-documentation/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/claude-thread-to-documentation/</guid><description>Percakapan LLM berisi niat, alternatif yang ditolak, dan kode yang berfungsi. Itulah sebenarnya yang seharusnya menjadi dokumentasi. Berikut cara mengubah obrolan yang fana menjadi dokumen yang tahan lama dan dapat dicari tanpa kehilangan narasi.</description><pubDate>Sun, 19 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Editor Teks Membiarkanmu Menulis Kode yang Tidak Valid. Editor Pohon Tidak Akan Melakukannya.</title><link>https://autotomy.dev/id/blog/structured-editing-ast-text-editors/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/structured-editing-ast-text-editors/</guid><description>Setiap compiler melihat kode sebagai pohon, tapi editor membiarkanmu mengedit teks mentah. Inilah seperti apa pengeditan terstruktur sebenarnya, mengapa belum mendominasi, dan cara meminjam manfaatnya tanpa mengganti alat.</description><pubDate>Sat, 18 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Donald Knuth Ingin Program Dibaca Seperti Sastra. Compiler Punya Ide Lain.</title><link>https://autotomy.dev/id/blog/knuth-literate-programming-history/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/knuth-literate-programming-history/</guid><description>Literate programming menjanjikan bahwa kode harus ditulis untuk manusia terlebih dahulu dan mesin kedua. Empat dekade kemudian, hampir tidak ada yang menulis seperti itu. Berikut mengapa ide paling elegan dalam dokumentasi perangkat lunak gagal mengubah cara kita bekerja.</description><pubDate>Fri, 17 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Memperbaiki Bug Adalah Bagian yang Mudah. Mengetahui Mengapa Ia Ada Adalah yang Penting.</title><link>https://autotomy.dev/id/blog/fagan-causal-analysis-defects/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/fagan-causal-analysis-defects/</guid><description>Kebanyakan tim memperbaiki defek dan melanjutkan. Defek yang sama kembali muncul. Berikut cara menjalankan analisis kausal di dalam Fagan inspection agar Anda berhenti menulis bug yang sama dua kali.</description><pubDate>Thu, 16 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Review Pull Request Menangkap 15-30% Defek. Data Sudah Menyatakan Demikian Selama 50 Tahun.</title><link>https://autotomy.dev/id/blog/pr-reviews-catch-15-to-30-percent-defects/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/pr-reviews-catch-15-to-30-percent-defects/</guid><description>Banyak studi di IBM, AT&amp;T, HP, dan Microsoft memastikan bahwa code review informal menangkap sekitar seperempat defek. Berikut apa yang sebenarnya dikatakan data, mengapa angkanya begitu rendah, dan cara memperbaikinya.</description><pubDate>Wed, 15 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Checklist Generik Tidak Menemukan Apa Pun. Yang Terstruktur Menemukan 60 % Defect.</title><link>https://autotomy.dev/id/blog/fagan-structured-checklist-defect-detection/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/fagan-structured-checklist-defect-detection/</guid><description>Sebagian besar checklist review adalah daftar copy-paste niat baik. Checklist terstruktur bergaya Fagan inspection dibangun dari data defect aktual, ditargetkan ke jenis artefak tertentu, dan digunakan selama persiapan individu. Berikut cara membuatnya agar berhasil.</description><pubDate>Tue, 14 Jul 2026 00:00:00 GMT</pubDate></item><item><title>LLM Bisa Pre-inspeksi Kode Anda. Ia Tidak Bisa Menjalankan Rapat.</title><link>https://autotomy.dev/id/blog/llm-fagan-inspection-preparation/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/llm-fagan-inspection-preparation/</guid><description>Inspeksi Fagan membutuhkan empat hingga enam orang dan dua jam untuk meninjau 250 baris. LLM dapat mengurangi biaya tersebut dengan menangani persiapan dan penegakan checklist, namun tidak dapat menggantikan peran manusia yang menemukan defect paling mahal.</description><pubDate>Mon, 13 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Fagan Inspections Menemukan 90 % Defek Sebelum Testing. Lalu Kita Berhenti Melakukannya.</title><link>https://autotomy.dev/id/blog/fagan-inspections-disappearance-ibm/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/fagan-inspections-disappearance-ibm/</guid><description>Proses inspeksi terstruktur Michael Fagan di IBM menangkap hampir semua defek sebelum mencapai compiler. Proses ini juga menghabiskan 15–20 % upaya total proyek. Inilah mengapa metode review paling efektif dalam sejarah software menghilang, dan apa yang sebenarnya dirindukan oleh tim.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Reviewer Terbaik Anda Melewatkan Sebagian Besar Defect. Fagan Mengukurnya di IBM pada 1976.</title><link>https://autotomy.dev/id/blog/fagan-reviewer-defect-detection-variance/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/fagan-reviewer-defect-detection-variance/</guid><description>Bahkan engineer senior hanya menangkap sebagian kecil defect dalam review yang tidak terstruktur. Penelitian Michael Fagan di IBM menunjukkan alasannya, dan membangun proses inspeksi terstruktur untuk memperbaikinya.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Sebagian Besar Code Review Menangkap 20% Defect. Fagan Inspection Menangkap 90%.</title><link>https://autotomy.dev/id/blog/fagan-inspections-90-percent-defects/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/fagan-inspections-90-percent-defects/</guid><description>Code review informal menangkap 15-30% defect. Fagan inspection, proses terstruktur berusia 50 tahun, secara konsisten melaporkan tingkat penghapusan 60-90%. Berikut cara kerjanya, mengapa tim menghindarinya, dan cara menjalankan versi ringan.</description><pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate></item><item><title>AutoVerus mengubah 40 jam penulisan proof menjadi 3 panggilan LLM. Triknya adalah tahu kapan harus menyerah.</title><link>https://autotomy.dev/id/blog/autoverus-llm-rust-verification/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/autoverus-llm-rust-verification/</guid><description>AutoVerus menggunakan jaringan agen LLM untuk menghasilkan proof kebenaran Verus untuk kode Rust, mengotomatisasi lebih dari 90% proof obligation melalui loop generate-repair-discharge yang didorong oleh feedback SMT solver.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate></item><item><title>LLM dapat menghasilkan kode Rust. Pembuktian formal adalah masalah yang sama sekali berbeda.</title><link>https://autotomy.dev/id/blog/llm-rust-formal-proofs-hallucination/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/llm-rust-formal-proofs-hallucination/</guid><description>Model bahasa besar menulis kode Rust yang menakjubkan baiknya, tetapi ketika Anda meminta pembuktian formal, mereka menghasilkan invarian yang tidak ada dan menciptakan sintaks yang tidak diterima oleh verifikator apa pun. Berikut ini yang benar-benar mereka lakukan dengan benar, di mana mereka gagal, dan bagaimana menggunakannya meskipun begitu.</description><pubDate>Wed, 08 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Menunggu Race Conditions Muncul adalah Strategi Pengujian yang Buruk</title><link>https://autotomy.dev/id/blog/model-checking-race-conditions/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/model-checking-race-conditions/</guid><description>Mengapa model checking mengalahkan berhari-hari runtime produksi untuk menemukan bug konkurensi, dan cara menerapkannya pada kode Anda sendiri.</description><pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Anda Dapat Melakukan Model Checking pada Kode Tanpa Mempelajari Temporal Logic</title><link>https://autotomy.dev/id/blog/is-there-a-model-checker-that-doesnt-require-learning-temporal-logic/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/is-there-a-model-checker-that-doesnt-require-learning-temporal-logic/</guid><description>Bounded model checker seperti Kani dan relational model finder seperti Alloy memungkinkan Anda memverifikasi properti dengan assertion dan constraint biasa. Anda mengorbankan pembuktian liveness untuk kurva pembelajaran yang diukur dalam jam, bukan minggu.</description><pubDate>Mon, 06 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Anda dapat membuktikan kode Rust benar tanpa menulis satu pun bukti, tapi ruang keadaan adalah tagihannya</title><link>https://autotomy.dev/id/blog/rust-model-checking-kani-state-space/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/rust-model-checking-kani-state-space/</guid><description>Alat model checking seperti Kani memungkinkan Anda memverifikasi properti Rust dengan assertion alih-alih bukti formal. Masalahnya adalah apa yang terjadi ketika loop Anda tidak memiliki batas kecil.</description><pubDate>Sun, 05 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Anda Tidak Bisa Melakukan Unit Test pada Protokol Terdistribusi, tetapi Anda Bisa Melakukan Model Checking</title><link>https://autotomy.dev/id/blog/distributed-protocol-model-checking-tla/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/distributed-protocol-model-checking-tla/</guid><description>Bug terdistribusi mahal untuk diperbaiki setelah deployment. Model checking memungkinkan Anda menemukannya sebelum menulis satu baris kode implementasi pun. Berikut cara melakukannya dengan TLA+.</description><pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Menyalin file `.env` antar environment bukanlah strategi konfigurasi</title><link>https://autotomy.dev/id/blog/infrastructure-config-dsl-per-context/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/infrastructure-config-dsl-per-context/</guid><description>Bagaimana tim infrastruktur mengelola konfigurasi di seluruh dev, staging, dan production menggunakan DSL per-konteks yang membuat perbedaan environment eksplisit dan type-safe.</description><pubDate>Fri, 03 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Grammar-constrained decoding: memaksa LLM mengeluarkan sintaks yang valid di setiap token</title><link>https://autotomy.dev/id/blog/grammar-constrained-decoding-llm/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/grammar-constrained-decoding-llm/</guid><description>LLM menghasilkan sintaks yang salah karena mereka melakukan sampling token secara probabilistik. Grammar-constrained decoding menyaring kosakata di setiap langkah sehingga hanya token yang mempertahankan validitas sintaksis yang dikeluarkan.</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Menerjemahkan dari Bahasa Inggris ke tema itu mudah. Menjadikannya deterministik adalah masalah sesungguhnya.</title><link>https://autotomy.dev/id/blog/english-to-theme-deterministic-design-tokens/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/english-to-theme-deterministic-design-tokens/</guid><description>Anda dapat menghasilkan design token dari deskripsi Bahasa Inggris sederhana, tetapi hanya jika Anda memperlakukan deskripsi tersebut sebagai DSL konteks terbatas dengan kontrak schema dan snapshot test.</description><pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Buang file grammar: tulis parser DSL-mu dengan TypeScript biasa</title><link>https://autotomy.dev/id/blog/typescript-parser-combinators-dsl/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/typescript-parser-combinators-dsl/</guid><description>Parser generator terlalu berlebihan untuk sebagian besar DSL bounded-context. Parser combinator memungkinkanmu membangun parser yang berfungsi dalam bahasa yang sama dengan aplikasimu, tanpa kode yang dihasilkan dan tanpa langkah build.</description><pubDate>Tue, 30 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Kesalahan konfigurasi runtime adalah kegagalan produksi yang kamu pilih untuk izinkan</title><link>https://autotomy.dev/id/blog/config-validation-build-time/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/config-validation-build-time/</guid><description>Cara menangkap kesalahan konfigurasi sebelum aplikasi mulai melayani traffic, menggunakan validasi skema dan pengecekan saat build.</description><pubDate>Mon, 29 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Dependensi kamu bisa membaca variabel lingkunganmu. JavaScript memperbolehkannya.</title><link>https://autotomy.dev/id/blog/javascript-capability-security-lockdown/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/javascript-capability-security-lockdown/</guid><description>Ambient authority berarti kode apa pun di proses Node.js-mu bisa menyentuh sistem file, jaringan, dan lingkungan. Berikut cara menghilangkannya dengan lockdown, compartment, dan pemberian capability secara eksplisit.</description><pubDate>Sun, 28 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Kedekatan Jaringan Bukan Identitas: Bagaimana Service Mengautentikasi Tanpa Ambient Authority</title><link>https://autotomy.dev/id/blog/service-authentication-without-ambient-authority/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/service-authentication-without-ambient-authority/</guid><description>Sebagian besar kepercayaan antar-service berasal dari lokasi jaringan, bukan bukti kriptografis. Berikut cara kerja capabilities, mTLS, dan SPIFFE memungkinkan service mengautentikasi tanpa ambient authority, dan mengapa hal ini lebih sulit dari yang seharusnya.</description><pubDate>Sat, 27 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Dependensi Anda bisa membaca berkas apa pun di disk. cap-std membuat mereka meminta izin.</title><link>https://autotomy.dev/id/blog/rust-cap-std-capability-filesystem/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/rust-cap-std-capability-filesystem/</guid><description>Standard library Rust memberikan otoritas filesystem ambient kepada setiap dependensi. cap-std menggantinya dengan API berbasis capability yang memaksa kode untuk membuktikan bahwa ia berhak mengakses suatu path sebelum membukanya.</description><pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Layanan Anda Adalah Kaki Tangan yang Tidak Menyadari: Cara Kerja Serangan Confused Deputy</title><link>https://autotomy.dev/id/blog/whats-a-confused-deputy-attack-and-how-do-i-prevent-it/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/whats-a-confused-deputy-attack-and-how-do-i-prevent-it/</guid><description>Serangan confused deputy menipu layanan yang memiliki privilese untuk menggunakan otoritasnya melawan dirinya sendiri. Berikut cara penyerang mengeksploitasi kepercayaan implisit, dan mengapa capability-based security adalah solusinya.</description><pubDate>Thu, 25 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Pemeriksaan izin Anda berbohong</title><link>https://autotomy.dev/id/blog/typescript-capability-based-security/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/typescript-capability-based-security/</guid><description>Keamanan berbasis capability menggantikan pemeriksaan peran yang tersebar dengan token otoritas yang tidak dapat dipalsukan. Berikut cara mengimplementasikannya di TypeScript tanpa membuat kode Anda sulit dibaca.</description><pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Bagaimana Jika Setiap Fungsi Harus Menerima Izin Alih-alih Menganggap Sudah Punya?</title><link>https://autotomy.dev/id/blog/capability-based-security-permissions/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/capability-based-security-permissions/</guid><description>Sebagian besar kode berjalan dengan otoritas ambient: setiap fungsi dapat menyentuh segalanya. Keamanan berbasis kemampuan membalik model itu dengan memaksa fungsi untuk menerima izin eksplisit dan terbatas.</description><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Berhenti Melempar Error yang Tidak Bisa Dilihat Type Checker Anda</title><link>https://autotomy.dev/id/blog/should-i-stop-throwing-errors-and-start-returning-them/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/should-i-stop-throwing-errors-and-start-returning-them/</guid><description>Exception yang dilempar menyembunyikan jalur kegagalan dari sistem tipe Anda. Berikut mengapa pengembalian error secara eksplisit membuat kode Anda lebih jujur, dan cara mengadopsinya tanpa membuat Anda benci hidup.</description><pubDate>Mon, 22 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Newtype Rust membuat state yang salah tidak dapat direpresentasikan saat compile time, tanpa biaya</title><link>https://autotomy.dev/id/blog/rust-newtypes-zero-cost-safety/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/rust-newtypes-zero-cost-safety/</guid><description>Struct wrapper satu-field menangkap bug pencampuran unit dan kebingungan tipe tanpa menambahkan satu byte pun overhead.</description><pubDate>Sun, 21 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Switch statement membiarkan bug lolos saat compile time</title><link>https://autotomy.dev/id/blog/is-there-a-better-way-than-switch-statements-for-type-safe-matching/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/is-there-a-better-way-than-switch-statements-for-type-safe-matching/</guid><description>Switch statement TypeScript diam-diam membiarkan Anda lupa menangani kasus. Berikut cara menggantinya dengan pola exhaustiveness-checked yang membuat build gagal, bukan saat runtime.</description><pubDate>Sat, 20 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Compiler yang seharusnya menangkap kasus state yang hilang, bukan tim QA Anda</title><link>https://autotomy.dev/id/blog/typescript-exhaustiveness-state-machines/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/typescript-exhaustiveness-state-machines/</guid><description>Menambahkan state baru ke mesin Anda itu mudah. Mengingat untuk memperbarui setiap switch statement tidak. Berikut cara membuat TypeScript menolak untuk mengompilasi saat Anda lupa sebuah case.</description><pubDate>Fri, 19 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Ya, tetapi Sistem Tipe Anda Perlu Tahu Apa Itu Dolar</title><link>https://autotomy.dev/id/blog/typescript-currency-types/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/typescript-currency-types/</guid><description>TypeScript melihat semua number sebagai identik. Berikut cara mengajarinya perbedaan antara USD dan EUR agar compiler menangkap bug konversi mata uang sebelum mencapai production.</description><pubDate>Thu, 18 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Angka bukan sekadar angka: cara membuat compiler menangkap bug unit</title><link>https://autotomy.dev/id/blog/typescript-unit-types-compile-time/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/typescript-unit-types-compile-time/</guid><description>Meneruskan millisecond di tempat yang mengharapkan second adalah bug yang lolos dari setiap pengujian. Berikut cara menyandikan unit secara langsung ke dalam sistem tipe TypeScript sehingga kesalahan pencampuran gagal pada saat kompilasi tanpa biaya runtime.</description><pubDate>Wed, 17 Jun 2026 00:00:00 GMT</pubDate></item><item><title>TypeScript membiarkan saya memasukkan user ID di tempat order ID seharusnya berada</title><link>https://autotomy.dev/id/blog/typescript-branded-types-newtypes/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/typescript-branded-types-newtypes/</guid><description>Type alias tidak membuat tipe yang berbeda di TypeScript. Branded types melakukannya, dan bisa menyelamatkan Anda dari mencampuradukkan identifier saat compile time.</description><pubDate>Tue, 16 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Differential Testing Bekerja Tanpa Bukti Formal, tapi Common-Mode Failure adalah Masalahnya</title><link>https://autotomy.dev/id/blog/differential-testing-common-mode-failures/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/differential-testing-common-mode-failures/</guid><description>Differential testing memungkinkan Anda menemukan bug tanpa mengetahui jawaban yang benar. Masalahnya adalah kesalahan yang saling berkorelasi terlihat seperti kesepakatan. Begini cara menemukan blind spot-nya.</description><pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Tidak Ada Tes yang Bisa Membuktikan Dua Fungsi Ekuivalen. Ini yang Bisa.</title><link>https://autotomy.dev/id/blog/function-equivalence-smt-solvers/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/function-equivalence-smt-solvers/</guid><description>N-version programming mengasumsikan implementasi Anda sepakat. Kita lihat mengapa tes kurang memadai, bagaimana SMT solver bisa benar-benar membuktikan ekuivalensi, dan di mana menarik garis antara cukup baik dan terverifikasi secara formal.</description><pubDate>Sun, 14 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Bagaimana Jika Varian LLM Saya Tidak Setuju? Mana yang Benar?</title><link>https://autotomy.dev/id/blog/llm-variant-disagreement-resolution/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/llm-variant-disagreement-resolution/</guid><description>Menjalankan beberapa LLM secara paralel menangkap kesalahan yang akan dengan percaya diri dikirim oleh model tunggal. Berikut cara membangun sistem resolusi ketidaksetujuan yang benar-benar berfungsi.</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Lima Implementasi dan Tidak Ada Mayoritas: Cara Sebenarnya Memilih yang Terbaik</title><link>https://autotomy.dev/id/blog/n-version-implementation-selection/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/n-version-implementation-selection/</guid><description>N-version programming terdengar sederhana: jalankan beberapa implementasi dan pilih jawaban terbaik. Dalam praktiknya, &apos;terbaik&apos; jauh lebih sulit didefinisikan daripada &apos;paling umum.&apos;</description><pubDate>Fri, 12 Jun 2026 00:00:00 GMT</pubDate></item><item><title>LLM yang Sama Bisa Menulis Lima Versi Fungsi Anda. Begini Cara Membuatnya Benar-Benar Berbeda.</title><link>https://autotomy.dev/id/blog/llm-n-version-diverse-implementations/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/llm-n-version-diverse-implementations/</guid><description>N-version programming dengan LLM tidak memerlukan banyak model. Anda bisa mengekstrak implementasi yang beragam dan benar dari satu model dengan memvariasikan prompt, persona, dan constraint reasoning.</description><pubDate>Thu, 11 Jun 2026 00:00:00 GMT</pubDate></item><item><title>NASA Menjalankan 27 Salinan Program yang Sama. Bug-Bug Memilih sebagai Satu Blok.</title><link>https://autotomy.dev/id/blog/nasa-n-version-programming-knight-leveson/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/nasa-n-version-programming-knight-leveson/</guid><description>N-version programming menjanjikan bahwa tim independen akan membuat kesalahan independen. Eksperimen Knight dan Leveson tahun 1986 membuktikan sebaliknya, dan NASA diam-diam meninggalkannya.</description><pubDate>Wed, 10 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Separuh Skenario Cucumber Anda Diskip. Inilah Mengapa Status Tersebut Berbohong kepada Anda.</title><link>https://autotomy.dev/id/blog/cucumber-skipped-scenarios-diagnosis/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/cucumber-skipped-scenarios-diagnosis/</guid><description>Status &apos;skipped&apos; Cucumber menyembunyikan tiga masalah yang benar-benar berbeda. Inilah cara mendiagnosis mana yang menghabiskan test suite Anda, dan cara menghentikannya.</description><pubDate>Tue, 09 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Spesifikasi Gherkin Anda Berbohong</title><link>https://autotomy.dev/id/blog/gherkin-specs-automated-sync/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/gherkin-specs-automated-sync/</guid><description>Spesifikasi Gherkin akan menyimpang dari kenyataan begitu Anda mempercayakan pembaruan manual kepada manusia. Berikut cara mengotomatiskan pemeriksaan yang menjaga agar file fitur tetap jujur.</description><pubDate>Mon, 08 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Kompilator Anda Memeriksa Sintaks. Tes Anda Harus Memeriksa Arsitektur.</title><link>https://autotomy.dev/id/blog/architecture-tests-ci-enforcement/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/architecture-tests-ci-enforcement/</guid><description>Kebanyakan tim mendokumentasikan aturan arsitektur di wiki. Berikut cara menuliskannya sebagai tes yang dapat dieksekusi dan gagal di CI ketika dependency graph menyimpang.</description><pubDate>Sun, 07 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Domain layer Anda mengimpor Postgres. CI Anda tidak peduli.</title><link>https://autotomy.dev/id/blog/clean-architecture-domain-infrastructure-ci/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/clean-architecture-domain-infrastructure-ci/</guid><description>Diagram clean architecture terlihat bagus di papan tulis. Berikut cara membuat build pipeline Anda menegakkan arah dependensi sehingga kode domain tidak bisa menjangkau infrastruktur.</description><pubDate>Sat, 06 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Diagram Arsitektur Anda Sudah Menjadi Kebohongan</title><link>https://autotomy.dev/id/blog/architecture-docs-code-generated-diagrams/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/architecture-docs-code-generated-diagrams/</guid><description>Dokumentasi arsitektur membusuk pada saat Anda menyimpannya. Berikut cara menjaga kejujuran dokumen menggunakan diagram yang dibuat dari kode, ADR, dan pengujian arsitektur otomatis.</description><pubDate>Fri, 05 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Loop percobaan ulang Anda mengasumsikan permintaan pertama gagal. Sebenarnya, kemungkinan besar tidak.</title><link>https://autotomy.dev/id/blog/idempotency-keys-api-retries/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/idempotency-keys-api-retries/</guid><description>Timeout atau crash tidak berarti permintaan API Anda hilang. Berikut cara idempotency key membuat percobaan ulang menjadi aman, dan pola penyimpanan yang benar-benar mencegah duplikat.</description><pubDate>Thu, 04 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Kunci yang bertahan lebih lama dari proses Anda: cara kerja distributed lease sebenarnya</title><link>https://autotomy.dev/id/blog/distributed-leases-fencing-tokens/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/distributed-leases-fencing-tokens/</guid><description>Mutex in-memory hilang ketika server Anda restart. Berikut cara distributed lease dengan fencing token dan TTL mencegah pekerjaan duplikat saat crash, dan di mana mereka masih gagal.</description><pubDate>Wed, 03 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Circuit breaker tanpa goroutine, tanpa timer, dan tanpa background overhead</title><link>https://autotomy.dev/id/blog/circuit-breaker-lazy-recovery-no-goroutines/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/circuit-breaker-lazy-recovery-no-goroutines/</guid><description>Kebanyakan library circuit breaker memunculkan thread latar belakang untuk memeriksa pemulihan. Anda tidak membutuhkannya. Berikut adalah desain berbasis request yang menghilangkan semua background overhead tanpa mengorbankan correctness.</description><pubDate>Tue, 02 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Layanan Web Anda Punya Jalur Penutupan yang Anggun. Itulah Bug-nya.</title><link>https://autotomy.dev/id/blog/crash-only-software-web-services/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/crash-only-software-web-services/</guid><description>Perangkat lunak crash-only memperlakukan setiap kegagalan sebagai crash dan setiap startup sebagai recovery. Untuk layanan web, ini berarti menghapus logika shutdown Anda dan merancang state yang bertahan meski di-kill -9.</description><pubDate>Mon, 01 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Cara Membunuh Mutan yang Bertahan Hidup Ketika Anda Tidak Mengerti Apa yang Diubahnya</title><link>https://autotomy.dev/id/blog/killing-surviving-mutants/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/killing-surviving-mutants/</guid><description>Mutation testing menemukan survivor dan Anda sama sekali tidak tahu apa yang dilakukan mutasi tersebut. Berikut adalah metode langkah demi langkah untuk menulis tes yang tepat tanpa harus memahami mutan terlebih dahulu.</description><pubDate>Sun, 31 May 2026 00:00:00 GMT</pubDate></item><item><title>Kode auth butuh coverage mutasi 90%. String utils kamu tidak.</title><link>https://autotomy.dev/id/blog/mutation-score-per-module-risk/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/mutation-score-per-module-risk/</guid><description>Mengapa menerapkan skor mutasi tunggal di seluruh codebase adalah kesalahan, dan cara mengatur threshold per-modul yang sesuai dengan risiko aktual.</description><pubDate>Sat, 30 May 2026 00:00:00 GMT</pubDate></item><item><title>Tes Anda Lolos. Skor Mutasi Anda 40%. Inilah yang Sebenarnya Dikatakan oleh Mutan yang Bertahan.</title><link>https://autotomy.dev/id/blog/my-tests-pass-but-my-mutation-score-is-40-whats-a-surviving-mutant/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/my-tests-pass-but-my-mutation-score-is-40-whats-a-surviving-mutant/</guid><description>Code coverage mengatakan Anda aman. Mutation testing mengatakan tes Anda sebagian besar hanya dekorasi. Begini cara mutan yang bertahan memperlihatkan celahnya, dan cara menutupnya.</description><pubDate>Fri, 29 May 2026 00:00:00 GMT</pubDate></item><item><title>Mutation Testing di Rust Bekerja, tapi Waktu Kompilasi Anda Akan Membencinya</title><link>https://autotomy.dev/id/blog/rust-mutation-testing-cargo-mutants/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/rust-mutation-testing-cargo-mutants/</guid><description>cargo-mutants menemukan tes yang hanya berpura-pura memverifikasi kode Anda. Berikut cara kerja mutation testing di Rust, apa yang ditangkapnya, dan apakah biaya waktu kompilasi sepadan.</description><pubDate>Thu, 28 May 2026 00:00:00 GMT</pubDate></item><item><title>Spektrum Validasi: Mengapa AI Terbaik untuk Coding Backend</title><link>https://autotomy.dev/id/blog/ai-coding-validation-spectrum-backend-web-mobile/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/ai-coding-validation-spectrum-backend-web-mobile/</guid><description>Coding AI mengikuti gradien validasi. Backend tervalidasi dalam milidetik. Web butuh menit, mobile jam. Feedback loop menentukan di mana coding AI bekerja.</description><pubDate>Wed, 27 May 2026 00:00:00 GMT</pubDate></item><item><title>Monyet, Senapan Mesin, Aimbot: Tata Kelola AI untuk Tim</title><link>https://autotomy.dev/id/blog/monkey-machine-gun-aimbot/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/monkey-machine-gun-aimbot/</guid><description>Tata kelola kode AI bukan mengambil alat dari junior dan agen. Ini memasang guardrails agar setiap tembakan tepat sasaran tanpa kerusakan tambahan.</description><pubDate>Wed, 27 May 2026 00:00:00 GMT</pubDate></item><item><title>Mutation testing memakan waktu 4 jam. Bagaimana tim benar-benar menggunakannya di CI?</title><link>https://autotomy.dev/id/blog/mutation-testing-takes-4-hours-how-do-teams-actually-use-it-in-ci/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/mutation-testing-takes-4-hours-how-do-teams-actually-use-it-in-ci/</guid><description>Sebagian besar tim tidak menjalankan suite mutation testing secara penuh di setiap commit. Berikut cara tim engineering benar-benar mengintegrasikan mutation testing ke CI tanpa merusak build pipeline.</description><pubDate>Wed, 27 May 2026 00:00:00 GMT</pubDate></item><item><title>Unit test Anda lolos, tetapi data Anda tetap menghilang</title><link>https://autotomy.dev/id/blog/database-persistence-testing-mocks/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/database-persistence-testing-mocks/</guid><description>Tes database yang di-mock memverifikasi sintaks SQL Anda, bukan apakah baris data bertahan dari crash, penulisan konkuren, atau ketidakcocokan skema. Berikut cara menguji persistensi secara nyata.</description><pubDate>Tue, 26 May 2026 00:00:00 GMT</pubDate></item><item><title>Takut vs. Menggilas: Dua Realitas AI Coding</title><link>https://autotomy.dev/id/blog/fear-vs-steamroll-ai-coding-divide/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/fear-vs-steamroll-ai-coding-divide/</guid><description>AI coding berhasil untuk tim elite yang bisa pulih dari kekacauan apa pun. Sisanya mendapat ketakutan, CI gagal, dan eksperimen yang ditinggalkan. Kesenjangannya bukan pada model.</description><pubDate>Tue, 26 May 2026 00:00:00 GMT</pubDate></item><item><title>Menguji Redux Tanpa Tenggelam dalam Mock Action</title><link>https://autotomy.dev/id/blog/redux-testing-real-state-transitions/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/redux-testing-real-state-transitions/</guid><description>Mem-mock setiap action Redux mengubah test Anda menjadi validator changelog. Berikut cara menguji store dengan transisi state yang nyata.</description><pubDate>Mon, 25 May 2026 00:00:00 GMT</pubDate></item><item><title>AI Coding dalam Production: Mengapa Sebagian Besar Tim Menyerah</title><link>https://autotomy.dev/id/blog/ai-coding-in-production-autotomy-framework/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/ai-coding-in-production-autotomy-framework/</guid><description>Sebagian besar tim mencoba AI coding, mengirim kode yang gagal QA, lalu menyerah. Masalahnya bukan modelnya—melainkan ketiadaan guardrail yang membuat output AI dapat dipercaya.</description><pubDate>Sun, 24 May 2026 00:00:00 GMT</pubDate></item><item><title>100 Kali Run Tes Itu Bohong: Cara Sebenarnya Menentukan Ukuran Tes Berbasis Properti</title><link>https://autotomy.dev/id/blog/property-based-testing-run-count/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/property-based-testing-run-count/</guid><description>100 contoh default dalam property-based testing adalah kompromi sosial, bukan strategi statistik. Berikut cara memilih jumlah run yang sesuai dengan kebutuhan kepercayaan Anda dan anggaran CI.</description><pubDate>Sun, 24 May 2026 00:00:00 GMT</pubDate></item><item><title>Fuck-u-code: Gerbang Kualitas Deterministik yang Terlupakan oleh Pipeline AI Anda</title><link>https://autotomy.dev/id/blog/fuck-u-code-deterministic-quality-gate-ai-pipeline/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/fuck-u-code-deterministic-quality-gate-ai-pipeline/</guid><description>Anda punya type checking, linting, dan aturan arsitektur. Tetapi tumpukan deterministik Anda buta terhadap kompleksitas, duplikasi, dan bencana penamaan. Inilah solusi $0.</description><pubDate>Sat, 23 May 2026 00:00:00 GMT</pubDate></item><item><title>Property-Based Tests di Rust Menemukan Bug yang Unit Test Anda Lewatkan</title><link>https://autotomy.dev/id/blog/rust-property-based-testing-quickcheck/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/rust-property-based-testing-quickcheck/</guid><description>Pengujian berbasis contoh hanya mencakup input yang Anda pikirkan. Property-based testing menghasilkan data acak, memeriksa invariant, dan menyusutkan kegagalan menjadi contoh kontra minimal.</description><pubDate>Sat, 23 May 2026 00:00:00 GMT</pubDate></item><item><title>Kenapa Versi Satu Tidak Pernah Menjadi Masalah: AI Coding dan Pemeliharaan Jangka Panjang</title><link>https://autotomy.dev/id/blog/ai-coding-why-version-one-is-never-the-problem/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/ai-coding-why-version-one-is-never-the-problem/</guid><description>AI coding tools unggul dalam menghasilkan versi satu. Tantangan engineering yang sebenarnya dimulai di versi empat, saat tim perlu mengubah sesuatu tanpa merusak semua hal lain.</description><pubDate>Fri, 22 May 2026 00:00:00 GMT</pubDate></item><item><title>AI-Generated Code dan Prinsip Replaceability</title><link>https://autotomy.dev/id/blog/ai-generated-code-replaceability-principle/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/ai-generated-code-replaceability-principle/</guid><description>Ukuran sebenarnya dari kualitas AI-generated code bukan apakah ia bekerja pada hari pertama. Ukurannya adalah apakah Anda bisa menggantinya pada hari ketiga puluh tanpa menulis ulang semua hal lain.</description><pubDate>Fri, 22 May 2026 00:00:00 GMT</pubDate></item><item><title>Deterministic Guardrails untuk AI Codebases</title><link>https://autotomy.dev/id/blog/deterministic-guardrails-ai-codebases/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/deterministic-guardrails-ai-codebases/</guid><description>Review manusia itu inkonsisten. AI review lebih buruk. Satu-satunya pertahanan yang bisa diskalakan untuk AI-generated codebases adalah deterministic enforcement: aturan yang menggagalkan build, bukan saran yang diabaikan.</description><pubDate>Fri, 22 May 2026 00:00:00 GMT</pubDate></item><item><title>Unit Test Anda Lulus. Kode Produksi Anda Masih Rusak.</title><link>https://autotomy.dev/id/blog/i-write-unit-tests-why-do-bugs-still-slip-through/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/i-write-unit-tests-why-do-bugs-still-slip-through/</guid><description>Metrik code coverage menciptakan rasa aman yang palsu. Berikut ini mengapa unit test melewatkan bug yang sebenarnya membuat Anda kehilangan tidur, dan apa yang harus diuji sebagai gantinya.</description><pubDate>Fri, 22 May 2026 00:00:00 GMT</pubDate></item><item><title>Contract Runtime di Rust Bisa Tanpa Biaya di Release Build, tapi Compiler Tidak Akan Melakukannya untuk Anda</title><link>https://autotomy.dev/id/blog/rust-zero-cost-runtime-contracts/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/rust-zero-cost-runtime-contracts/</guid><description>Rust secara otomatis menghapus debug assertion, tetapi design-by-contract yang sesungguhnya membutuhkan lebih dari debug_assert!. Berikut cara membangun runtime contract tanpa biaya yang lenyap dari binary release Anda.</description><pubDate>Thu, 21 May 2026 00:00:00 GMT</pubDate></item><item><title>Nol, Satu, atau Dua Belas: Berapa Banyak Assertion yang Sebenarnya Dibutuhkan oleh Fungsi Produksi</title><link>https://autotomy.dev/id/blog/production-assertion-decision-framework/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/production-assertion-decision-framework/</guid><description>Developer tersebar menyebar assertion seperti confetti atau menghindarinya sepenuhnya. Berikut framework keputusan yang memisahkan invariants yang berguna dari pemicu crash di production.</description><pubDate>Wed, 20 May 2026 00:00:00 GMT</pubDate></item><item><title>Layer Validasi Anda Lebih Besar dari Logika Bisnis Anda</title><link>https://autotomy.dev/id/blog/declarative-runtime-contracts-validation/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/declarative-runtime-contracts-validation/</guid><description>Validasi manual membuat codebase Anda membengkak dan masih saja melewatkan edge case. Berikut cara enforce runtime contracts dengan skema deklaratif yang tidak mengganggu Anda.</description><pubDate>Tue, 19 May 2026 00:00:00 GMT</pubDate></item><item><title>TypeScript strictNullChecks Adalah Penjaga Compile-Time, Bukan Pelindung Runtime</title><link>https://autotomy.dev/id/blog/typescript-strictnullchecks-runtime-nulls/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/typescript-strictnullchecks-runtime-nulls/</guid><description>mode strict menangkap null yang Anda tulis, bukan null yang datang saat runtime dari API, query DOM, dan JSON.parse. Inilah di mana sistem tipe berhenti dan pertahanan Anda dimulai.</description><pubDate>Mon, 18 May 2026 00:00:00 GMT</pubDate></item><item><title>Di Era AI, Code Review Berubah Menjadi Review Spesifikasi</title><link>https://autotomy.dev/id/blog/code-review-becomes-specification-review/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/code-review-becomes-specification-review/</guid><description>Ketika AI bisa menghasilkan implementasi, tests, dan contracts dari sebuah spec, kerja manusia dengan leverage tertinggi bergeser ke hulu. Yang paling perlu diperiksa dengan ketat justru spesifikasinya sendiri.</description><pubDate>Sun, 17 May 2026 00:00:00 GMT</pubDate></item><item><title>AI Safety Stack: types, contracts, property tests, dan mutation gates</title><link>https://autotomy.dev/id/blog/ai-safety-stack-types-contracts-property-tests-mutation/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/ai-safety-stack-types-contracts-property-tests-mutation/</guid><description>Kalau kamu ingin code yang dihasilkan AI tahan di production, code review saja tidak cukup. Bangun safety stack berlapis dari type constraints sampai mutation testing dan runtime containment.</description><pubDate>Sat, 16 May 2026 00:00:00 GMT</pubDate></item><item><title>Meteor development itu nyata. Codebase Anda tidak harus ikut runtuh</title><link>https://autotomy.dev/id/blog/meteor-development-is-real/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/meteor-development-is-real/</guid><description>Meme ini terasa lucu karena banyak tim benar-benar membangun produk di tengah target yang terus berubah, tenggat waktu tetap, dan cakupan yang belum matang. Autotomy tidak memperbaiki perencanaan yang penuh fantasi, tetapi menjaga development tetap berjalan saat rutenya berubah lagi.</description><pubDate>Sat, 16 May 2026 00:00:00 GMT</pubDate></item><item><title>Stanford CS146S benar soal AI coding. Mata kuliah yang hilang adalah arsitektur</title><link>https://autotomy.dev/id/blog/stanford-cs146s-ai-architecture-gap/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/stanford-cs146s-ai-architecture-gap/</guid><description>Ulasan kritis tentang Stanford CS146S: mata kuliah ini tepat dalam membaca AI coding, tetapi masih menyisakan disiplin AI architecture yang dibutuhkan agar sistem tetap mudah diganti.</description><pubDate>Sat, 16 May 2026 00:00:00 GMT</pubDate></item><item><title>Mengapa ide engineering besar tetap ceruk sampai AI membuatnya ekonomis</title><link>https://autotomy.dev/id/blog/engineering-ideas-ai-economics/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/engineering-ideas-ai-economics/</guid><description>Design by contract, property-based testing, mutation testing, dan model checking bukan ide yang buruk. Mereka terlalu berat dari sisi keahlian untuk dipertahankan. AI mengubah persamaan itu.</description><pubDate>Fri, 15 May 2026 00:00:00 GMT</pubDate></item><item><title>Dari Vibe Code ke Production: Kenapa Aplikasi React Native Hasil AI Anda Butuh Guardrails untuk Scale</title><link>https://autotomy.dev/id/blog/ai-react-native-guardrails-scaling/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/ai-react-native-guardrails-scaling/</guid><description>AI bisa mengirim MVP React Native Anda dengan sangat cepat, tetapi tanpa guardrails, setiap perubahan kecil bisa merusak flow lain yang tampaknya tidak terkait. Begini cara declarative constraints menjaga kecepatan agar tidak berubah menjadi kerapuhan.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Panduan Vibe Coder untuk App Lifecycle React Native</title><link>https://autotomy.dev/id/blog/app-lifecycle-resume-status/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/app-lifecycle-resume-status/</guid><description>Aplikasi Anda baik-baik saja saat dev, tapi pengguna mendapat layar kosong saat kembali setelah makan siang. Ini pattern resume status yang menangani native lifecycle dengan benar.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Kenapa Aplikasi React Native Hasil Vibe Coding Anda Crash Saat Launch (Dan Cara Menghentikannya)</title><link>https://autotomy.dev/id/blog/dependency-tiers-hard-soft-optional/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/dependency-tiers-hard-soft-optional/</guid><description>Jika SDK opsional diinisialisasi seperti infrastruktur inti, SDK itu bisa membuat aplikasi Anda crash saat launch. Ini sistem dependency tier yang menjaga tools non-kritis agar tidak menjatuhkan production.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Kenapa Vibe Coding dengan NativeWind di Cursor Akan Merusak Aplikasi React Native Anda Saat Scale</title><link>https://autotomy.dev/id/blog/nativewind-vs-stylesheet-contract/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/nativewind-vs-stylesheet-contract/</guid><description>Anda merilis MVP dalam satu akhir pekan dengan Cursor, tapi sekarang mengganti satu warna membuat 47 file ikut rusak. Ini styling contract yang menghentikan pendarahannya.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Kenapa Claude Code Tidak Seharusnya Mereview Kode Anda (Dan Apa yang Harus Dipakai Sebagai Gantinya)</title><link>https://autotomy.dev/id/blog/o1-guards-vs-llm-reviews/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/o1-guards-vs-llm-reviews/</guid><description>LLM code review itu non-deterministic, lambat, dan sering melewatkan pelanggaran arsitektur. Ini stack guard O(1) yang benar-benar menjaga kode Anda tetap bersih.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Hapus, Jangan Migrasikan: Strategi Refaktor untuk Aplikasi React Native Hasil Vibe Coding</title><link>https://autotomy.dev/id/blog/refactor-by-replacement/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/refactor-by-replacement/</guid><description>Refactor kode hasil AI berarti membongkar intent yang tidak pernah Anda miliki. Ini pattern replacement berbasis interface yang membuat penghapusan menjadi aman.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Bagaimana Cursor dan Claude Code Menghancurkan Arsitektur React Native Anda (Dan Cara Memperbaikinya)</title><link>https://autotomy.dev/id/blog/service-boundaries-composition-root/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/service-boundaries-composition-root/</guid><description>Auth hasil AI terasa baik-baik saja sampai fitur baru masuk ke service yang salah. Inilah arsitektur berbasis interface yang menjaga pergantian vendor dan pekerjaan feature agar tidak merusak login.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>Kenapa Deep Links Membuat Aplikasi React Native Hasil Vibe Coding Crash (Dan Cara Memvalidasinya dengan Zod)</title><link>https://autotomy.dev/id/blog/url-validation-expo-router/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/url-validation-expo-router/</guid><description>Deep link, payload push, dan URL yang dibagikan semuanya adalah input yang tidak tepercaya. Begini cara memvalidasinya di boundary Expo Router sebelum params buruk mencapai screen Anda.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item><item><title>useSyncExternalStore: Hook React yang Menyelamatkan Aplikasi Hasil Vibe Coding dari Bug State</title><link>https://autotomy.dev/id/blog/useSyncExternalStore-pattern/</link><guid isPermaLink="true">https://autotomy.dev/id/blog/useSyncExternalStore-pattern/</guid><description>Berhenti menulis subscription `useEffect` yang bocor memori dan melewatkan update state. Ini pattern React 18 untuk external state yang benar-benar tahan banting.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate></item></channel></rss>