This repository was archived by the owner on Aug 11, 2026. It is now read-only.
test(cache): buktikan publikasi sungguhan mengosongkan cache, ujung ke ujung - #364
Merged
Merged
Conversation
…e ujung Sambungan terakhir yang belum teruji: rute publikasi sungguhan → PostgreSQL sungguhan → Varnish sungguhan. Suite transport membuktikan purgeEdgeCache() mengosongkan cache nyata; unit test membuktikan rute memanggil pembungkusnya. Tidak satu pun membuktikan keduanya TERSAMBUNG — resolusi hostname dari awcms_micro_tenant_domains duduk di antaranya, dan tenant yang hostname-nya tidak resolve tidak meng-invalidasi apa pun sementara seluruh test komponen tetap hijau. Di staging celah itu hanya pernah terlihat dengan menerbitkan artikel sungguhan. Yang ikut terkunci: setiap hostname aktif tenant di-purge (bukan hanya primary), hostname non-aktif tidak, publikasi tenant lain tidak mengosongkan cache tenant ini, dan publikasi yang GAGAL tidak mengosongkan apa pun — yang terakhir menutup cara murah bagi pemanggil tak berwenang untuk membuang cache sebuah situs. Kedua CLI operator dijalankan sebagai proses sungguhan sehingga exit code yang dibaca pipeline deploy ikut jadi assertion. Fixture Varnish diekstrak ke tests/integration/varnish-fixture.ts. Diuji balik dengan dua mutasi: melepas pemanggilan invalidasi dari rute publish menggagalkan 3 dari 6; mengubah filter status resolver hostname menggagalkan 5 dari 6. Ditambah gate http:methods:check. Aturan Bun ternyata lebih luas dari "metode kustom" — yang menentukan kecocokan huruf per huruf dengan tabel verb internalnya, sehingga Post/Delete/Patch juga terkirim sebagai GET. Sudah dilaporkan ke hulu (oven-sh/bun#33469), jadi tidak dibuat laporan baru; gate ini menutup sisi kita. bun run check hijau dengan database nyata: 4829 pass, 0 fail.
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Lanjutan post-mortem #359/#361, menutup sambungan terakhir yang belum teruji.
Celah yang ditutup
Suite transport (#363) membuktikan
purgeEdgeCache()mengosongkan cache nyata. Unit test membuktikan rute memanggil pembungkusnya. Tidak satu pun membuktikan keduanya tersambung — resolusi hostname dariawcms_micro_tenant_domainsduduk di antaranya, dan tenant yang hostname-nya tidak resolve tidak meng-invalidasi apa pun sementara seluruh test komponen tetap hijau. Di staging, celah seperti itu hanya pernah terlihat dengan menerbitkan artikel sungguhan lalu memeriksa permintaan berikutnya.tests/integration/edge-cache-publish-invalidation.integration.test.tsmenjalankan tepat urutan itu: rutepublish/archivesungguhan → PostgreSQL sungguhan → Varnish sungguhan. Yang ikut terkunci:Kedua CLI kini ikut diuji sebagai proses
edge-cache:verifydanedge-cache:healthdijalankan lewatbunsungguhan terhadap Varnish nyata, sehingga exit code — yang dibaca pipeline deploy — jadi bagian assertion. Pemeriksa yang sendirinya tidak diperiksa adalah persis bagaimanaedge-cache:healthbisa melaporkan sehat untuk subsistem yang tidak melakukan apa pun.Diuji balik dengan mutasi
publishGate
http:methods:check— saya mengubah pendirianDi PR sebelumnya saya menolak gate ini dengan alasan "tidak ada metode non-standar tersisa". Pengukuran lanjutan membantah dasarnya: yang menentukan bukan "dikenal atau tidak", melainkan kecocokan huruf per huruf dengan tabel verb internal Bun.
Postbukan verb eksotis — itu salah kapitalisasi biasa yang menurut spec fetch justru wajib dinormalkan, dan mata reviewer melewatinya. Arah kegagalannya berbahaya: permintaan yang dimaksudkan mengubah terkirim sebagai pembacaan, dan 200-nya terbaca sukses.Sudah dilaporkan ke hulu — oven-sh/bun#33469 (terbuka, 9 komentar), juga #6021 dan #21566 — jadi saya tidak membuat laporan duplikat. Gate ini menutup sisi kita.
bun run checkhijau dengan database nyata (postgres:18.4) + Docker: 4829 pass, 0 fail.🤖 Generated with Claude Code