Privacy policy Gizlilik politikası

Last updated: 2026-05-26 · Applies to Hindsight v0.5.x and later. Son güncelleme: 2026-05-26 · Hindsight v0.5.x ve sonrasını kapsar.

Plain-English summary Kısa özet

Hindsight stores your captures on your own device. There is no Hindsight server. The extension has no telemetry, no analytics SDKs, and makes zero outbound network requests until you explicitly click a Send button. Authorization tokens, cookies, passwords, credit cards and Turkish national IDs are masked at capture time — the original values are never written to your local storage. Hindsight yakaladıklarını sadece kendi cihazında tutar. Hindsight sunucusu yoktur. Eklenti telemetri toplamaz, analytics SDK içermez, sen bir Gönder butonuna açıkça basana kadar tek bir dış istek bile yapmaz. Authorization token'ları, çerezler, şifreler, kredi kartları ve TCKN'ler yakalama anında maskelenir — orijinal değerler yerel depolamana asla yazılmaz.

1. What we collect 1. Ne topluyoruz

When Hindsight is installed and enabled, content scripts inside the pages you visit and a service worker observe browser activity. Captures are categorised by tier: Hindsight yüklü ve aktifken, ziyaret ettiğin sayfalarda çalışan content script'ler ve bir service worker tarayıcı etkinliğini gözlemler. Yakalananlar katman katman ayrılır:

Category Kategori Default Varsayılan Detail Detay
Network requests Ağ istekleri On Açık Method, URL, headers, body, status, response. Sensitive fields masked at capture time (§3). Method, URL, başlıklar, gövde, durum, yanıt. Hassas alanlar yakalama anında maskelenir (§3).
Console messages Konsol mesajları On Açık Level, message, stack trace. Seviye, mesaj, stack trace.
Navigation events Yönlendirme olayları On Açık From-URL, to-URL, transition type. Önceki URL, sonraki URL, geçiş tipi.
Clicks Tıklamalar On (Tier 2) Açık (Tier 2) Element tag, accessible name, position. Element tag'i, erişilebilir ad, konum.
Form input changes Form girdi değişiklikleri On (Tier 2) Açık (Tier 2) Field name and type. Password / credit-card fields always masked. Alan adı ve tipi. Şifre / kredi kartı alanları her zaman maskeli.
Screenshots on error Hatada ekran görüntüsü On (Tier 3) Açık (Tier 3) JPEG of visible tab at error moment; throttled to one per tab per 2s. Hata anında görünür sekmenin JPEG'i; sekme başına 2 sn'de bir.
Performance signals Performans sinyalleri On (Tier 3) Açık (Tier 3) Long tasks > 100 ms, cumulative layout shift. 100 ms üstü long task'lar, cumulative layout shift.
Cursor / scroll trail İmleç / kaydırma izi Off (Tier 4) Kapalı (Tier 4) Only while Recording Mode is explicitly active. Sadece Kayıt Modu açıkken.
Periodic screenshots Periyodik ekran görüntüleri Off (Tier 4) Kapalı (Tier 4) 2-second JPEGs, recording mode only. 2 saniyelik JPEG'ler, sadece kayıt modunda.

Each tier is toggleable in Settings → Capture (except Tier 1, the bare minimum). Her katman Ayarlar → Capture'den açılıp kapatılır (Tier 1 hariç — eklentinin çalışması için zorunlu minimum).

2. Where it goes 2. Nereye gidiyor

Everything is stored in chrome.storage.local on your own device. There is no Hindsight server. The repository that builds the extension is public and every line of code that touches fetch() or chrome.runtime.sendMessage is verifiable. Her şey kendi cihazında chrome.storage.local'da saklanır. Hindsight sunucusu yoktur. Eklentiyi üreten kod deposu herkese açıktır; fetch() veya chrome.runtime.sendMessage çağıran her satır doğrulanabilir.

The service worker makes zero outbound HTTP requests of its own. The only fetches are: Service worker kendi başına tek bir dış HTTP isteği yapmaz. Fetch yapılan tek durumlar:

3. Sensitive data — capture-time masking 3. Hassas veri — yakalama anında maskeleme

Sensitive values are masked at capture time, before the event is written to storage: Hassas değerler yakalama anında, olay depolamaya yazılmadan önce maskelenir:

Matching values are replaced with the literal string ***MASKED*** before persistence. The original is never written down, never embedded in the screenshot, never copied to the HAR export, never included in any share payload. Mask cannot be reversed — there is nothing to reverse to. Eşleşen değerler kalıcı hale gelmeden ***MASKED*** string'i ile değiştirilir. Orijinal değer asla yazılmaz; ekran görüntüsüne gömülmez, HAR export'una kopyalanmaz, hiçbir paylaşım yüküne dahil edilmez. Maskelemenin tersine dönmesi mümkün değildir — geri dönülecek bir kaynak yoktur.

You can disable individual rules in Settings → Privacy if you need raw values in your own captures. The disable is per-rule, per-future-capture, and the Settings page warns explicitly that captures recorded with a rule disabled will store the matched value verbatim on your machine. Kendi yakalamalarında ham değerleri görmen gerekiyorsa Ayarlar → Privacy'den belirli kuralları kapatabilirsin. Kapatma kural başına ve gelecek yakalamalar içindir; Ayarlar sayfası, bir kural kapalıyken yapılan yakalamaların eşleşen değeri olduğu gibi makinende saklayacağını açıkça uyarır.

4. The 7-day archive 4. 7 günlük arşiv

Closing a tab does not delete its captures — they move into a 7-day rolling archive in chrome.storage.local. Entries older than 7 days are swept at service-worker startup. You can also manually clear the archive (sidepanel → recents → Clear archive) or reset everything (Settings → Advanced → Reset everything). Bir sekmeyi kapatmak yakalananları silmez — 7 günlük bir arşive (chrome.storage.local) taşır. 7 günden eski girişler service worker başlangıcında temizlenir. Arşivi elle de boşaltabilirsin (yan panel → recents → Clear archive) ya da her şeyi sıfırlayabilirsin (Ayarlar → Advanced → Reset everything).

5. Sharing — what we send when you click Send 5. Paylaşım — Gönder'e bastığında ne gönderiyoruz

A confirmation dialog ("Privacy preview modal") shows the exact event count, redaction summary, and destination identity before every send. Her gönderim öncesinde bir onay diyaloğu ("Privacy preview modal") tam olay sayısını, maskeleme özetini ve hedef kimliğini gösterir.

6. Replay requests 6. Replay istekleri

The "↻ Replay this request" button re-fires a captured request from the extension's own context. The fetch explicitly uses credentials: 'omit' and skips any header whose stored value is ***MASKED***. Replayed auth-bound requests typically return 401 / 403 — that's expected, the result panel labels it. "↻ Replay this request" butonu yakalanmış bir isteği eklentinin kendi context'inden yeniden gönderir. Fetch çağrısı açıkça credentials: 'omit' kullanır ve depolanan değeri ***MASKED*** olan başlıkları atlar. Yeniden gönderilen auth gerektiren istekler genellikle 401 / 403 döner — bu beklenen davranıştır ve sonuç paneli bunu açıkça belirtir.

7. Permissions — why we ask for each 7. İzinler — neden istiyoruz

Permission İzin Reason Sebep
storage Read and write the local capture buffer. Yerel yakalama tamponunu okur ve yazar.
unlimitedStorage Allow buffers larger than 5 MB on heavy-browsing days. Yoğun gezinme günlerinde 5 MB üstü tamponlara izin verir.
activeTab Inspect the tab the user is actively looking at. Aktif olarak baktığın sekmeyi inceler.
scripting Inject content scripts that observe fetch / XHR / console. fetch / XHR / console'u gözlemleyen content script'leri enjekte eder.
sidePanel Open the primary inspection UI. Ana inceleme arayüzünü açar.
notifications (opt-in) (opsiyonel) Failure-cascade desktop notifications. Requested only when enabled. Hata zinciri masaüstü bildirimleri. Sadece etkinleştirildiğinde istenir.
downloads (opt-in) (opsiyonel) Save replay-bundle HTML and ZIP exports. Replay paketi HTML ve ZIP export'larını kaydeder.
tabs (opt-in) (opsiyonel) Read tab metadata for sidepanel + popup display. Yan panel ve popup gösterimi için sekme metaverisi okur.
webNavigation (opt-in) (opsiyonel) Detect SPA route changes and reload events. SPA yönlendirme değişiklikleri ve reload olaylarını tespit eder.
<all_urls> (opt-in) (opsiyonel) Run the content script on user pages so request interception works. İstek yakalamanın çalışması için content script'i kullanıcı sayfalarında çalıştırır.

8. Telemetry — none 8. Telemetri — yok

Hindsight collects no usage data, no error reports, no diagnostic pings. No Sentry, no Google Analytics, no Mixpanel, no Amplitude, no Segment. Zero fetch() calls to any Hindsight-owned domain. If this ever changes, it will require explicit opt-in via a Settings checkbox before any data leaves your device, and this policy will be updated first. Hindsight kullanım verisi toplamaz, hata raporu toplamaz, teşhis pingi yapmaz. Sentry yok, Google Analytics yok, Mixpanel yok, Amplitude yok, Segment yok. Hindsight'a ait herhangi bir alana tek bir fetch() çağrısı yok. Bu durum bir gün değişirse, herhangi bir veri cihazından ayrılmadan önce Ayarlar'da açık bir opt-in checkbox gerekir ve bu politika önce güncellenir.

9. Cookies — none 9. Çerezler — yok

Hindsight does not set cookies. It does not store cookies on any external site. It reads the Cookie request header of pages you visit only to mask its value before persisting the network event locally. Hindsight çerez oluşturmaz. Hiçbir dış sitede çerez tutmaz. Ziyaret ettiğin sayfaların Cookie istek başlığını sadece — ağ olayını yerelde kalıcı hale getirmeden önce — değerini maskelemek için okur.

10. Third-party services 10. Üçüncü taraf hizmetler

The extension itself ships with no third-party services bundled. At runtime, optional features touch URLs you configure (your webhook, your mailto: URI). Hindsight does not share these with anyone; they live in your local storage. Eklenti üçüncü taraf hizmetlerle birlikte paketlenmez. Çalışma zamanında, opsiyonel özellikler senin ayarladığın URL'lere ulaşır (webhook'un, mailto: URI'n). Hindsight bunları kimseyle paylaşmaz; yerel depolamanda kalır.

11. Children's privacy 11. Çocukların gizliliği

Hindsight is a developer tool. It is not marketed to children and does not knowingly capture data from children. Hindsight bir geliştirici aracıdır. Çocuklara pazarlanmaz ve bilerek çocuklardan veri toplamaz.

12. Changes to this policy 12. Bu politikada değişiklikler

Material changes will be reflected in this document and called out in the extension's CHANGELOG. Önemli değişiklikler bu belgeye yansıtılır ve eklentinin CHANGELOG'unda özellikle belirtilir.

13. Contact 13. İletişim

Hindsight is open source. Bug reports, privacy questions, and vulnerability disclosures should go to the project's GitHub repository. Hindsight açık kaynaktır. Hata raporları, gizlilik soruları ve güvenlik açığı bildirimleri için projenin GitHub deposunu kullanın.

Hindsight is published under the MIT license. The source code is the canonical proof of what the extension does — every claim in this policy is verifiable by reading it. Hindsight MIT lisansıyla yayınlanmıştır. Kaynak kod, eklentinin ne yaptığının kanonik kanıtıdır — bu politikadaki her iddiayı okuyarak doğrulayabilirsin.