Buktikan penyebaran dengan digest, bukan dengan tag
Commit sebelumnya berhenti 'set image' menjadi no- op diam. Ini menegaskan hasil: setelah peluncuran, tag diselesaikan untuk dicerna di registry dan pod berjala...
Membangun kembali komitmen yang sama tidak menyebar dan melaporkan kesuksesan
Gambar ini ditandai dengan melakukan SHA, jadi membangun kembali commit yang sama menghasilkan Sebuah referensi gambar identik. 'Kubectl set image' kemudian tid...
Biarkan rollout menyelesaikan apa yang pod tua lakukan
Pengisian diganti satu-satunya pod dari setiap layanan dengan tidak ada untuk menangkap permintaan dalam Penerbangan. Tiga pengaturan, diterapkan di armada: - ...
Tanda-dalam sesi menjadi per- tab
analittics.auth tinggal di LocalStorage, yang setiap tab dari saham asal ini. Analitik dicapai oleh sebuah OTK handoff dari ruang kerja dan setiap handoff menan...
Berhenti mendaftar setiap pengunjung dua kali
Performa (vital web) kejadian disimpan tanpa nama host - kolektor cabang kinerja tidak pernah melewati satu, tidak seperti cabang pageview. Semua 803 disimpan b...
Harden the kubectl download against flaky egress [skip ci]
dl.k8S.io atas pelari itu keluar sesekali tetes pertengahan - transfer: curl: (56) OpenSSL SSL _ read: dekripsi gagal atau rekaman mac buruk yang gagal menyebar...
Alias ALL turbopack content-hashed externals, bukan hanya prisma
Perbaikan sebelumnya hanya berisi @ prisma / client- < hash >; membangun juga externaize pg- < hash > (node-postgres, via @ prisma / adapter-pg) dibawah persama...
Alias Prisma 7 puas-hashed klien sehingga rute DB berhenti 500
Generator prisma- client (metType = client) membuat sebuah content-hashed penspesifikasi waktu-jalan (@ prisma / client- < hash >) kedalam membangun berikutnya....
Instal deps script setelah salinan standalone; bump PRISM _ VERSION ke 7.6.0
Tahap runner yang diinstal deps script (semver / kapur / prisma /...) SEBELUM menyalin keluaran Next.js standalone. Jejak berikutnya parsial, index.js-less semv...
Pin pnpm ke 10.34.3 sehingga daftar review build- script dihormati
Unpinned 'npm install -g pnpm' sekarang resolve ke pnpm 11.8.0, yang diturunkan Di pihak AllowBuilds. Daftar ulasan repo diabaikan, setiap skrip build dihitung ...
Salin pnpm-workspace.yaml + ulasan sisa skrip build
Tahap deps hanya disalin package.json + lockfile, sehingga pnpm tidak dapat melihat The * * * * * * * * * * * * * * daftar ulasan (mereka hidup dalam pnpm-works...
Ijinkan prisma build script sehingga pnpm add tidak keluar bukan -zero
PNpm baru gagal membangun dengan ERR _ PNPM _ IGNORED _ BUILDS ketika prisma 's postinstall diabaikan. Hanya @ prisma / mesin yang terdaftar, jadi setiap pembua...
Use pg Pool options instead of connection string for geo DB
CockroachDB rejects insecure connections and node-pg can't verify self-signed certs via connection string alone. Parse the URL into Pool options and pass ssl:{r...
*** session check, loading spinner, rebrand analytics to Kamo Analytics
Use redis get instead of exists for more reliable *** validation on logout. Replace "Authenticating..." text with an animated spinner on the OTK auth page. Rena...
Copy GeoLite2 database to production image for country detection
The /geo/ directory containing GeoLite2-City.mmdb was built during the builder stage but never copied to the runner stage, so all country/region lookups returne...
Move CSP to proxy.ts instead of middleware.ts to avoid build conflict
Next.js 16 doesn't allow both middleware.ts and proxy.ts. The Docker build copies proxy.ts as the middleware, so add CSP frame-ancestors header there instead. T...
Use Next.js middleware for CSP so frame-ancestors works at runtime
The standalone build bakes next.config.ts headers at build time, so ALLOWED_FRAME_URLS was always empty. Move CSP to a Next.js middleware that reads the env var...
Read ALLOWED_FRAME_URLS at runtime so CSP frame-ancestors works in standalone mode
The env var was being read at module scope during build, baking an empty value into the standalone server. Move CSP and all header construction into functions c...
Add explicit AS keyword for PostgreSQL column alias in session and event queries
The session and event expanded metrics queries use implicit column aliasing (`${column} name`) which causes a PostgreSQL syntax error when the column name (like...
Use settings timezone in revenue chart date range
The revenue chart was using the browser's local timezone instead of the timezone configured in analytics settings. This caused the chart to show different time ...
Remove searchValue from ValueSelect queryKey to avoid unnecessary refetches
Apply same null referrer fix to link tracking route
The same bug exists in the link route (q/[slug]) where request.headers.get("referer") returns null for requests without a Referer header, causing silent Zod val...
Handle null referrer in pixel tracking route
request.headers.get("referer") returns null when the header is absent (e.g. email clients). The Zod schema uses .optional() which accepts undefined but rejects ...
Perbaiki sintaks SQL error dalam getPageviewExpandedMetrics query
Correct autocomplete attributes to enable password manager autofill
Kutipan "event" direserve kata kunci dalam query perjalanan
Fixes PostgreSQL sintaks error dengan mengutip kolom "event" alias. Hal ini menyebabkan pencarian perjalanan gagal. "event" adalah kata kunci cadangan dalam Po...
Parse netlify ip header by default: `x-nf-client-connection-ip`
This header is not clearly documented, but it is mentioned in semi-official sources, and I have tested it to ensure it's working properly. Without this, analyt...
Improve URL normalization and handling in tracking functions
Prevent multiple initialization when script injected more than once
Gunakan SafeDecodeURIComponen untuk ruas lokasi dalam deteksi pengguna
Seperti apa yang Anda lihat pengiriman?
Semua pembaruan ini secara otomatis mendarat di ruang kerja Anda. Mulai bebas dan menontonnya tumbuh minggu demi minggu.