feat(vehicle): Araç Parmak İzi Temel Katmanı (PR-25, foundation-only)#25
Merged
Merged
Conversation
Bilinmeyen aftermarket araçları deterministik, tekrar-üretilebilir bir kimlikle tanımanın temeli: aynı araç tekrar bağlandığında (VIN olsun olmasın) güvenle tanınabilsin. YALNIZ FOUNDATION — OBD poll/hot-path, useVidStore subscribe, Discovery Pipeline, native ve SQL/Supabase'e DOKUNULMADI. - vehicleFingerprintService.ts (yeni, SAF + safeStorage): * Normalize: VIN · ECU adresi · PID bitmap · trailing-zero dolgu temizliği * Builder: VIN + protocol + (sıralı/tekil) ECU + PID bitmap + metadata * Deterministik 16-hane hash (FNV-1a çift-tohum; metadata/zaman DAHİL DEĞİL) * Bounded(8) LRU kalıcı depo: save/load/list/remove/clear * Matcher temeli: aynı VIN=1.0 · imza(protocol+ECU+bitmap)=0.80 · adaptör MAC=0.30 - safeStorage: car-vehicle-fingerprints → LRU_PROTECTED (kota dolunca silinmez) - 23 yeni test: aynı/farklı hash · VIN'siz · ECU sıra-bağımsız · PID trailing-zero · max 8 LRU evict · upsert recency · kalıcılık · matcher confidence değerleri tsc temiz · eslint temiz · 2404 test yeşil (yalnız 23 bilinen env-gated hata, ilgisiz) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Fauew13VP3vbfKqnocPdfX
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This was referenced Jul 9, 2026
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Amaç
Bilinmeyen aftermarket araçları deterministik, tekrar-üretilebilir bir kimlikle (fingerprint) tanımanın temelini kurar. Aynı araç tekrar bağlandığında — VIN olsun olmasın — güvenle tanınıp önceki bağlamın (profil/keşif/ayar) geri getirilebilmesi için zemin. VİZYON: "aracın ikinci beyni" → zero-trust telemetriyle araç öğrenme.
Kapsam — YALNIZ FOUNDATION
useVidStore(veya herhangi bir store) subscribe · Discovery Pipeline mantığı · native katman · SQL/Supabase · PR feat(diag): support snapshot — remote logs, OBD lifecycle, thermal/connectivity diagnostics #11Yeni dosyalar
src/platform/vehicleFingerprintService.tssrc/__tests__/vehicleFingerprint.test.tsDeğişen dosyalar (additive, tek satır)
src/utils/safeStorage.tscar-vehicle-fingerprints→LRU_PROTECTED(kota dolunca silinmez)İçerik
0xtemizli, anlamlı sıfır korunur) · PID bitmap · trailing-zero bayt dolgu temizliğisave/load/list/remove/clear; taşınca en eski-görülen düşer; safeStorage; ağ yok; bozuk veri → fail-softTestler (23)
Aynı araç→aynı hash · farklı araç→farklı hash · VIN'siz çalışır · ECU sırası hash'i değiştirmez · PID bitmap trailing-zero dolgusu aynı fingerprint · depo max 8 LRU evict · upsert recency (firstSeen korunur) · kalıcılık · bozuk-veri fail-soft · matcher confidence (1.0/0.80/0.30/0) · normalizer birim testleri.
Doğrulama
tsc --noEmittemiz ·eslinttemizRisk
Çok düşük. Tümü additive; tek mevcut-dosya değişikliği safeStorage'a bir koruma-anahtarı eklemek (davranış: yalnız kota-eviction'dan muaf tutma). Servis hiçbir yere wire edilmedi — saf foundation, tüketici yok → çalışan akışları etkilemez. LRU max 8 ile bounded (zero-leak). Determinizm testle kilitli.
Saha doğrulama
🔴 Cihazda henüz doğrulanmadı — ancak bu katman salt-hesap/kalıcılık olduğundan cihaz-bağımsız; gerçek araç doğrulaması tüketici PR'da (fingerprint'i OBD handshake'e bağlayan) yapılacak.
Merge YAPILMADI.
🤖 Generated with Claude Code
https://claude.ai/code/session_01Fauew13VP3vbfKqnocPdfX