Kaynak öncelikli İngilizce eşleştirme
Geliştirme · 1.0.0
Yayın
- Doküman
- 1.0.0
- Uygulama
- 1.0.0
- Şema
- 1
- Veri
- tr-latn-1
Bu sayfa
- Uygulama
- 0.1.0
- Şema
- 1
- Veri
- en-alignment-17
Güncel Durum
Bölüm başlığı “Güncel Durum”10 Eylül 2026 itibarıyla yayımlanmış okuyucu en-alignment-17 ve
en-target-render-4 kullanır.
Kaynak sırası, tam hedef aralığı aktarımı, incelenen anlam sınırları ve basılı
sayfa kırıklarının gösterimi ayrı katmanlarda düzeltilmiştir. Aşağıdaki eski
sürüm başlıkları çalışma geçmişidir; güncel kabul sayılarını ifade etmez.
- Katalogdaki 298 bölümün 189’unda İngilizce hedef metin kullanılabilir; 109’unda bu hedef kullanılamaz. Bu sayı 189 bölümün bütün cümle ilişkileri onaylıdır anlamına gelmez.
- Son sürümde 48.941 accepted grup, 59.949 bağlı kaynak, 0 pending aday ve 3.302 unresolved kapsam-içi kaynak birimi vardır. Kapsam dışında ayrıca 1.180 kaynak birimi kalır. Eşleşmemiş olmak, incelemesinin açık olduğu anlamına gelmez; seçili çeviride bulunmayan metin ve yapısal işaretler korunur.
- Başlangıç açıkları, kapsam-dışı kayıtlar ve ek gövde düzeltmeleri dahil 8.354 kaydın tamamı kanıtlı sonuçlandırıldı. Önceki sürüme göre net 3.859 ek kaynak bağlandı. Karar envanteri ve yeniden üretim girdileri tamamlama notunda açıklanır.
- Değişen 156 bölümün canlı API çıktıları hazırlanmış paketle birebir karşılaştırıldı; aynı bölümlerin yerel/uzak Supabase hizalama çıktıları da birebir doğrulandı. Birinci Söz, Altıncı/Dokuzuncu Şua ve taşınan Emirdağ mektubu yerel okuyucuda metin/hover kontrollerinden geçti. Yerel web ve Expo okuyucu yerel Supabase kullanır. Yerel API’nin yayın referansları değiştiğinde çalışan süreç yeniden başlatılmalıdır. Android/iOS uygulama testi bu turda tekrarlanmadı.
Türkçe canonical metin, cümle kimlikleri ve token sıraları değiştirilmedi. Ham İngilizce kitap da yeniden yazılmadı. Eksik karşılıklar, komşu cümlenin anlamı verilerek veya çeviri üretilerek kapatılmadı.
Alignment 16 komşu aralık ve sahiplik düzeltmeleri, 588 adayın incelenmesini, 535 kabul/düzeltme kararını ve ek komşularla toplam 568 yeni kaynak ilişkisini kaydeder. 53 aday gerekçeleriyle açık bırakıldı. Alignment 15 kalan adayların bağlanması, 421 adayın 419’unun bağlanmasını ve ek komşularla toplam 430 yeni cümle ilişkisini kaydeder. İlk 505 aday havuzunun 502’si bağlıdır; 3’ü açık kalmıştır. Alignment 14 dizgi farklarından kurtarma, 82 adaydan 81’inin bağlanmasını ve komşu düzeltmeleriyle toplam 87 açık kaynak ilişkisinin tamamlanmasını kaydeder. 1 yanlış eşleşme yeniden kabul edilmedi. Alignment 13 aday kapanışı, önceki 12 adayın uygulanmasını ve yerel/uzak yayını kaydeder. 11 aday doğru bağlantıya kavuştu; 1 yanlış bağlantı kaldırıldı, yeni bağlantısı açık bırakıldı. Alignment 12 kapanış kontrolü ise önceki bölüm sayımını, ilk inceleme kararlarını ve iOS simülatörü sonuçlarını kaydeder. Önemli payda ayrımı: İngilizce hedefi bulunan 189 bölümdeki 64.431 canonical cümleden artık 63.251’i alignment scope içindedir. Kalan 1.180 kapsam-dışı kayıt, 3.302 unresolved kapsam-içi kayda dahil değildir. Toplam 4.482 kayıt; 3.232 çevirisiz, 201 baskı/yerleşim farkı ve 1.049 yapısal işaretten oluşur. Sıfır pending, bütün canonical cümlelerin çevrildiği anlamına gelmez.
Değişen yaklaşım
Bölüm başlığı “Değişen yaklaşım”Teşhis, Türkçe kaynak sırasının korunduğunu, fakat doğru bulunan İngilizce aralığın daha büyük metin bloklarına genişletildiğini gösterdi. Bazı eski eşlenmiş İngilizce satırlar da komşu Türkçe cümlenin anlamını içeriyordu. İki sorun ayrı ele alınır:
- Anlam kararı: Türkçe kaynak cümlesinin İngilizce karşılığı seçilir. Bu seçim önceki dosyadan alınabilir; yanlış sınırlar kaynak kitapla karşılaştırılarak düzeltilir. Başlık, Arapça alıntı ve yapısal ayraçlar ayrıca değerlendirilir.
- Aktarım: Seçilen tam İngilizce aralık doğrudan saklanır. Komşu atomlara genişletilmez. Türkçe cümle kimlikleri canonical sıradan alınır.
- Gösterim: Basılı sayfa kırıkları ayrı, tam metin tanıklı gösterim kurallarıyla giderilir. Ham İngilizce kitap ve bütün koordinatlar değişmeden kalır.
Bir Türkçe cümle birkaç İngilizce cümleye, birkaç Türkçe cümle bir İngilizce cümleye karşılık gelebilir. Cümle sayısını zorla eşitlemek amaç değildir. Ancak ayrı anlamların açıkça seçilebildiği yerlerde bütün paragrafı tek hover grubuna toplamak da doğru değildir.
Kaynakların Rolleri
Bölüm başlığı “Kaynakların Rolleri”| Girdi | Rolü | Tek başına kanıtlamadığı |
|---|---|---|
Türkçe tr-sentences |
Fiziksel satır ve canonical cümle sırası | İngilizce anlamın doğruluğu |
| Eşlenmiş İngilizce dosyalar | Mevcut karşılık adayları | Her satır sınırının semantik doğruluğu |
| Yayımlanmış İngilizce kitap | Ekrana gelen değişmez metin, tam aralık tanığı | Türkçe karşılığın doğruluğu |
| Kabul edilmiş curation JSON | İncelenmiş anlam grupları, istisnalar | Kapsam dışındaki chapter’ların yeniden onayı |
| Önceki alignment paketi | Değişmeyen ilişkiler ve kimlikleri | Bütün eski eşleşmelerin hatasız olduğu |
Girintili destekleyici satırlar yeni canonical cümle değildir. source.line
fiziksel dosya satırıdır; cümle indeksi yerine kullanılamaz. Ana satırlar,
paragraf/cümle sırası üzerinden cümle kimliklerine bağlanır.
Ana satır Arapça olabilir. İngilizce karşılığı varsa bu canonical cümle de eşleştirilir; alfabe, karşılığın yok sayılması için gerekçe değildir. Bir alıntı hem ana cümlenin içinde hem girintili destek satırında bulunuyorsa, İngilizce alıntı ana cümlenin karşılığına dahildir. Arapça alıntı ve ayrı Türkçe açıklaması İngilizcede yalnız bir kez çevrilmişse iki kaynak cümle ortak gruba bağlanabilir.
Anlamı komşu İngilizce cümlenin içinde bulunan satır source_only değildir.
Ayrılabilen yan cümle kendi kaynak kimliğine bağlanır; gerçekten iç içe geçen
anlamlar ortak gruba alınır. Örneğin “soruyorlardı” ve “Acaba af olacak mı?”,
“would ask me” ve “if this would happen” olarak ayrı karşılıklara sahiptir.
Yalnızca yeni bir İngilizce cümle başlamaması, sorunun çevirisiz olduğunu göstermez.
Hedef birimin dilbilgisel olarak tam cümle olması gerekmez. Örneğin ayrı kaynak satırlarındaki “Onlar da:” ve ardından gelen önerme, İngilizcede “They are” ve önerme olarak ayrı bağlanır. “He says:”, “It is established that” gibi girişler de sonraki canonical alıntıdan veya önermeden ayrılabilir. İki parçanın aynı İngilizce cümlede bulunması, kaynak üyelerini birleştirme gerekçesi değildir. Ortak grup ancak anlamların gerçekten iç içe geçtiği, ayrı aralıkların yanlış karşılık vereceği durumda seçilir; gerekçe bu somut durumu açıklamalıdır.
Doğru karşılık konumunun seçilmesi, İngilizce baskının her çeviri tercihinin onaylanması değildir. Kaynak baskıdaki özne veya ifade farkları inceleme notunda ayrıca belirtilir; hizalama düzeltmesi ham İngilizce metni yeniden yazmaz.
Envanter
Bölüm başlığı “Envanter”scripts/translations/source-first-inventory.mjs bütün kaynakları okumak için
yeniden kullanılabilir offline araçtır. DB’ye yazmaz veya eşleşme kabul etmez.
node scripts/translations/source-first-inventory.mjs \ --source-root "$EN_SOURCE_ROOT" \ --core-snapshot .cache/notes/core-snapshot.json \ --target-package .cache/english-quality/en-target-render-3/package-v2 \ --output-dir .cache/english-source-first/inventoryVarsayılan --lookup-mode exact, önceki envanterlerin birebir aramasını korur.
--lookup-mode presentation ile boşluk/satır sonu ve tipografik tırnak farkları
da aday keşfine katılır. Bu seçenek harfleri, aksanları, büyük-küçük harfi veya
kelime sınırlarını silmez; birden fazla konum varsa hepsini korur. Sonuç daima
değiştirilmemiş İngilizce kaynağın gerçek scalar aralığıdır. Bu adaylar hâlâ
semanticStatus: unreviewed durumundadır; arama toleransı otomatik kabul değildir.
6 Eylül 2026 sayımı:
- 298 chapter’ın Türkçe ana satırları canonical cümlelerle aynı sırada bağlandı.
- 193 eşlenmiş İngilizce dosya var. Bunların 186’sı kesintisiz hedef chapter’a,
biri çok parçalı hedefe sahip; dördü
untranslated, ikisiunavailable. - Hedefi olup eşlenmiş dosyası olmayan iki chapter ayrıca listelenir.
- 47.757 ana satır için tekil, birebir İngilizce hedef aralığı bulundu.
- 2.964 satırda aynı ifade birden fazla yerde bulundu. İlk sonucu seçmek doğru değildir.
- 5.268 satır birebir bulunamadı; bu sayı kayıp çeviri sayısı değildir. Dizgi, noktalama ve eski satır düzenlemesi gibi nedenler ayrıca incelenir.
- 7.127 satır kaynak Türkçesiyle bırakılmış; bunlar kendiliğinden İngilizce kabul edilmez.
Envanterin semanticStatus: unreviewed değeri kasıtlıdır. Sayı, exact metin,
hash veya başarılı sıra testi anlam incelemesinin yerine geçmez. Çok parçalı
chapter’lar araçta açıkça ayrı tutulur; sessizce düz chapter gibi işlenmez.
scripts/translations/alignment-boundary-audit.mjs bu envanteri yayımlanmış
alignment üyelikleriyle birleştirir. Aynı grubun bütün hedef aralıklarının
birleşimini karşılaştırır; boşluk farkını veya doğru çok-cümleli grubu hata saymaz.
Alignment-4 tabanında 172 desteklenen scope içinde 2.675 tek-kaynak satırda
boşluk dışı hedef genişlemesi, 982 tam tanıklı çok-kaynak grupta daha geniş hedef
birleşimi bulundu. Buna karşılık 5.322 çok-kaynak grubunun birleşimi zaten eşdeğerdir.
2.829 tekil tanıklı satırın accepted bağı yoktur. Bunlar inceleme adaylarıdır:
eklenen bölüm yalnız bir dipnot numarası da olabilir, komşu anlam da olabilir.
Bu sayılar otomatik düzeltme veya semantik hata sayısı olarak kullanılmaz.
Sınırlı Aralık İncelemesi
Bölüm başlığı “Sınırlı Aralık İncelemesi”Chapter’ın tamamını yeniden onaylamadan da eksik cümle ilişkileri düzeltilebilir.
scripts/translations/alignment-window-inventory.mjs, mevcut bir accepted grubun
İngilizce metninin kaynak satırlarıyla eksiksiz bölünebildiği aralıkları çıkarır.
Başka grubun veya unresolved adayın sahip olduğu kaynak cümle alınmaz; hedefte
boşluk dışı bir karakter bile açıklanmadan atılmaz. Arada kalan ve birebir
İngilizce tanığı olmayan Türkçe satırlar da inceleme bağlamında gösterilir.
Alignment-6 üzerinde 795 aralıkta, mevcut İngilizce parçaya ait olduğu düşünülen ek Türkçe kaynak satırları bulundu. Bunlar 1.923 kaynak satırını kapsar; sayı anlam onayı değil, inceleme kapsamıdır. Ayrıca bulunan 5.229 ortak eşleşme, sırf birden fazla cümle içerdiği için düzeltmeye alınmaz.
scripts/translations/compile-alignment-window-review.mjs inceleme kararlarını
ayrı bir public-alignment-window-corrections-v1 curation dosyasına çevirir:
split_rows: her kaynak satırının karşılığı ayrı anlam grubuna bağlanabilir.merge_rows: bütün kaynak satırları birlikte karşılanır; İngilizce iç içe anlatıldığı için yapay bir tek-cümle kesinliği üretilmez.defer: bu aralık mevcut kapsamıyla düzeltilemez; gerekçe raporda korunur, mevcut eşleşme değiştirilmez.
Örneğin ayrı bir “Ezcümle” satırının “For instance” karşılığı, sonraki cümleye katılmışsa kendi cümle kimliğine bağlanabilir. Buna karşılık İngilizce başlık, aradaki ayrı Arapça cümlenin çevirisini de içeriyorsa yalnız başlık satırını seçmek yeterli değildir. Aynı başlığın başka bölümdeki kaydını bulmak da doğru bağlamı kanıtlamaz. Bu durumlar kaynak kapsamı genişletilmeden otomatik onaylanmaz.
Komşu Eşleşmeler ve Gerçek Eksiklikler
Bölüm başlığı “Komşu Eşleşmeler ve Gerçek Eksiklikler”scripts/translations/compile-alignment-exception-review.mjs, eşlenmiş dosyanın
tek satırına sığmayan kararları canonical cümle kimlikleri ve ham İngilizce
aralıklarla derler. Eski envanter yeni sürümde kullanılabilir; fakat eski kaynak
üyeleri ve hedef unit kimlikleri hâlâ aynı accepted grubu tanımlamalıdır.
source_only: cümle kaydı korunur, yanlış İngilizce bağlantı kaldırılır. Sürüme bağlı üyelikunresolvedolur; gerekçesi saklanır, aday bağı boş kalır.target_only: ham İngilizce parça korunur, uydurma Türkçe hover karşılığı gösterilmez. Örneğin kaynak satır yalnız...iken İngilizce baskı burada ayrıntılı açıklama verebilir.companion_keys: düzeltme komşu accepted gruba da dokunuyorsa o grup incelemeye açıkça dahil edilir. Curation içindekiretirements, her eski grubun kendi kaynak üyelerini ve tam hedef aralıklarını ayrı ayrı saklar. Bütün eski kaynakların ve boşluk dışı hedef karakterlerinin hesabı verilmeden iki grubun yerini yeni gruplar alamaz.
Bir parça bilinen komşu kaynak cümleyi çeviriyorsa, ilk inceleme penceresinin
dışında kaldığı için target_only yapılamaz. Komşu grubun ilgili üyeleri
companion_keys ile birlikte düzeltilir. Henüz çözülemeyen bir sınır, gerçek
çeviri yokluğu olarak kaydedilmez; mevcut ilişki korunarak açık inceleme konusu
kalır. Aynı ilke sayfa sonunda bölünmüş kelimenin öteki yarısı için de geçerlidir.
İnceleme girdisindeki issues, eski hatanın açıklaması değil, henüz çözülmemiş
engellerdir. Düzeltme bu sorunları çözdüyse dizi boştur ve açıklama evidence
alanındadır. Dolu issues derlemeyi erteler. compiled sayısı ve sıfır deferred
sonucu da tek başına anlam onayı değildir; bunlar kararın mekanik olarak
uygulanabilirliğini gösterir.
Bu mekanizma mevcut kaynak satırını yeniden yazmaz, cümle kimliğini değiştirmez ve komşu bir grubun kaydını örtülü biçimde almaz. Değişmeyen gruplar korunur; eski sürüm de bağımsız olarak okunabilir kalır. Doğrulama yalnız yeni çıktıya bakmaz: her emekliye ayrılan grubun eski RPC karşılığını da ayrı kontrol eder.
Derleyici, verilen aralığın ham metne birebir eşit olduğunu doğruladıktan sonra yalnız kenar boşluklarını temizleyip scalar koordinatlarını düzeltir. Kelime, noktalama veya iç boşluk normalizasyonu yapmaz. Okuyucudaki asıl boşluk ve satır sırası değişmez; mekanik kenar temizliği için anlam incelemesi tekrarlanmaz.
Bir İngilizce cümle önceki Türkçe önermeyi daha sonra tekrar ediyorsa gerçek ilişki iç içe geçebilir. Böyle bir aralıkta açıkça belirtilmiş ortak anlam grubu, yanlış bir tek-cümle kesinliğinden daha doğrudur. Bu karar yalnız ilgili kısa aralık için geçerlidir; bütün chapter’ı tek hover grubuna çevirme kuralı değildir.
Bu çalışma, daha önce tamamı incelenen yedi chapter’ın yeniden kurulması veya geri kalan bütün chapter’ların semantik olarak onaylanması anlamına gelmez.
Henüz Bağlanmamış Aralıklar
Bölüm başlığı “Henüz Bağlanmamış Aralıklar”Bir hedef unit’in unresolved olması, mutlaka çevirisinin bulunmadığı anlamına
gelmez. candidate_id: null olan, henüz bir adayın sahiplenmediği unit ile
incelemesi bekleyen bir adaya bağlı unit birbirinden ayrılır.
public-alignment-window-corrections-v1 içindeki operation: bind_unresolved,
yalnız ilk gruptaki mevcut hedef unit’leri işleyebilir. target_before bunların
tam kimlik, aralık ve metin tanıklarını içerir. İncelenmiş kaynak cümleler yeni
gruplara bağlanır; kalan içerik açık gerekçeyle unresolved tutulur. Bu gerekçe
“henüz incelenmemiş” olabilir ve çeviri yokluğu iddiası değildir. Bütün eski
boşluk dışı içerik korunur; kabul edilmiş veya başka adayın sahip olduğu
kaynak/hedef üyeleri bu yolla devralınamaz.
Karma durumlarda mevcut bir accepted grubun düzeltmesi, sahipsiz bir hedef
unit’e kadar uzanabilir. İnceleme girdisinde additional_target_unit_ids
belirtilir; derleyici bunu curation içindeki consume_unpaired_target_unit_ids
alanına taşır. Bu ek unit’ler accepted grup emeklilik listesine yazılmaz.
Kendi unresolved üyelikleri, tam metinleri ve birlikte kullanılan kapsam ayrıca
doğrulanır. Böylece sayfa kırığı yüzünden ayrı atomlarda kalan tek bir kaynak
cümlesi, çevresindeki kabul edilmiş ilişkiler bozulmadan tamamlanabilir.
Bu işlem yeni Türkçe cümle üretmez, eski yayını değiştirmez ve pending adayları kendiliğinden onaylamaz. Yapısal aktarım desteği ile anlam kararı yine ayrıdır.
İncelenmiş bir karşılık pending adayın üyelerine ihtiyaç duyuyorsa ayrı
operation: replace_candidates kullanılır. retirements, her adayın tam
candidate_id, mevcut promotion_status, kaynak kimlikleri ve hedef unit
tanıklarını içerir. Pending adayda group_id: null, accepted komşuda gerçek
grup kimliği bulunur. Başka adayın üyeleri örtülü biçimde devralınamaz; bütün
eski üyelerin yeni gruplarda veya gerekçeli unresolved kayıtlarda karşılığı
olmalıdır. Gerekirse ayrıca listelenmiş sahipsiz hedef unit’ler tüketilebilir.
Bu işlem bind_unresolved kuralını gevşetmez ve eski sürümü değiştirmez.
Chapter Sınırındaki Eksik İlişkiler
Bölüm başlığı “Chapter Sınırındaki Eksik İlişkiler”Ham İngilizce chapter tam olduğu halde eski alignment kapsamı daha dar kalmış
olabilir. operation: extend_scope, yalnız incelenmiş başlangıç veya bitiş
aralığını ekler. Bütün chapter için yeniden anlam onayı gerektirmez.
- İstenen kapsam mevcut hedef chapter sınırları içinde kalır; komşu chapter’ın metni sırf aynı kitapta bulunduğu için alınamaz.
- Önceki accepted, pending ve unresolved üyelik envanteri doğrulanır. Mevcut bir hedef unit’in devamı gerekiyorsa tüketilecek sahipsiz unit açıkça belirtilir.
- Eklenen kapsamın ve tüketilen unit’in bütün boşluk dışı karakterleri yeni
eşleşmelerde veya gerekçeli
target_onlykayıtlarında karşılanır. - Aynı scope içindeki bağımsız düzeltmeler birlikte uygulanabilir. Başka bir accepted kaynak sahibine ihtiyaç varsa o ilişkinin ayrıca incelenmiş düzeltmesi gerekir; kapsam genişletmek sahiplik kontrolünü devre dışı bırakmaz.
Genişletilen aralıktaki kaynak cümle daha önce yanlış bir hedefe bağlanmışsa,
aynı extend_scope penceresi açık retirements envanteri taşıyabilir. Eski
ilişkinin bütün kaynak ve hedef üyeleri doğrulanır; yanlış hedef metni silinmez.
Örneğin Münâcat başlığı doğru A Supplication konumuna taşınırken, yanlışlıkla
başlığa bağlanan editoryal giriş target_only olarak korunur. Böylece aynı
kaynak için iki eşleşme veya ara bir yayın üretmek gerekmez.
Kitap koordinatları ile okuyucunun chapter içi koordinatları ayrıdır. Yanlış bir eski eşleşme güncel chapter’ın tamamen dışında kalıyorsa RPC’de görünmemesi beklenir. Tam geri alma durumunda ham metin tanığı ve yeni unresolved DB üyeliği doğrulanır; kitap offset’i okuyucu offset’i gibi karşılaştırılmaz. Chapter sınırını kısmen kesen aralıklar bu istisnaya dahil değildir.
Yanlış İlişkiyi Geri Alma
Bölüm başlığı “Yanlış İlişkiyi Geri Alma”Bir accepted grubun yanlış olduğu kesinleşmiş, fakat yerine konacak doğru
karşılık bulunmamış olabilir. Bu durumda düzeltme penceresi groups: []
kullanabilir: emekliye ayrılan bütün kaynak cümleler gerekçeli source_only,
eski hedefin bütün boşluk dışı içeriği ise metin tanıklı target_only olarak
korunmalıdır. Ek sahipsiz hedef unit tüketilmez. Böylece yanlış hover bağı
kaldırılırken iki dilin metni ve önceki sürümdeki ilişki geçmişi kaybolmaz.
Bu izin yalnız mevcut accepted ilişkiyi geri alma içindir; bind_unresolved
işlemi hâlâ en az bir gerçek karşılık grubu gerektirir. Kapsam dışı metin veya
bekleyen aday bu mekanizma üzerinden kendiliğinden onaylanamaz.
Curation Sözleşmesi
Bölüm başlığı “Curation Sözleşmesi”data/curated/english/en-alignment-5-source-first.json şu bilgileri taşır:
- Önceki paket ve dil sürümü kimlikleri.
- Chapter içindeki bütün kaynak cümlelerin sıralı kimlik/metin tanıkları.
- İncelenmiş gruplar: kaynak cümle kimlikleri, hedef kitap aralıkları, karar gerekçesi.
source_only: hedef kaynakta karşılığı bulunmayan kaynak satırları.target_only: kaynak cümleye bağlanamayan, hedefe özgü parçalar.
Hedef aralıkları kitabın başından itibaren Unicode scalar koordinatlarıdır:
[start_scalar, end_scalar_exclusive). UTF-8 byte veya JavaScript UTF-16 indeksi
değildir. Builder byte koordinatlarını aynı doğrulanmış kitaptan hesaplar. RPC
bunları okuyucunun chapter başlangıcına göre döndürür.
Her kaynak satır tam bir kez hesaba katılır. Hedefte boşluk dışında açıklanmamış
içerik, örtüşen gruplar, yanlış metin tanığı veya sıra farkı üretimi durdurur.
Gerçek eksik karşılık açıkça işaretlenir; sırf complete elde etmek için komşu
anlam aktarılmaz veya yeni çeviri uydurulmaz.
Paket Üretimi
Bölüm başlığı “Paket Üretimi”Tekrarlanan başlıkları ilk görülen konuma bağlamamak için offline
selectMonotoneAnchors (scripts/translations/source-first-anchors.mjs) mevcut
exact adaylardan kaynak sırasını izleyen, örtüşmeyen en geniş satır dizisini
çıkarabilir. Atlanan satırlar ayrı döner. Bu yalnız inceleme hazırlığıdır;
anlam onayı, source_only kararı veya DB yazımı üretmez.
İncelenmiş çalışma dosyasından curation üretmek için
scripts/translations/compile-source-first-review.mjs kullanılır. --review
birden fazla verilebilir. Girdi, chapter başına dispositions taşır: fiziksel
source_lines, original_tr, english_text, chapter-relative scalar başlangıç/bitiş,
aligned veya source_only kararı ve gerekçesi. Hedefe özgü parçalar
target_only altında tutulur. Bu çalışma dosyası kaynak metin içerebilir;
üretilen public curation metin yerine kimlik, aralık ve hash saklar.
Bir cümlenin İngilizce karşılığı araya giren çevirmen notuyla kesiliyorsa,
english_text ve tek başlangıç/bitiş yerine target_ranges dizisi kullanılır.
Her parça kendi english_text, target_start_scalar ve
target_end_scalar_exclusive tanığını taşır; aradaki not ayrıca target_only
kalır. İki parça aynı kaynak cümle ve gruba bağlıdır. Bu hedef aralığı istisnası
başka bir kabul edilmiş anlama atlamayı veya kaynak cümle sırasını değiştirmeyi
serbest bırakmaz. DB tarafı 20260906153000_alignment_split_target_gaps
migration’ını gerektirir.
node scripts/translations/compile-source-first-review.mjs \ --predecessor en-alignment-5 \ --source-root "$EN_SOURCE_ROOT" \ --core-snapshot .cache/notes/core-snapshot.json \ --target-package .cache/english-quality/en-target-render-3/package-v2 \ --review .cache/reviewed-chapter.json \ --output .cache/source-first-draft.jsonVarsayılan çıktı drafttır. Anlam incelemesi tamamlandığında --accepted-on
ve --basis birlikte verilerek kabul edilmiş curation üretilir. Derleyici anlam
onayı vermez; yalnız satır/metin tanıklarını, kapsamı ve örtüşmeleri doğrular.
Mevcut çıktı dosyasının üzerine yazmaz. Yayımlanan release değiştirilmez;
sonraki kabul yeni numaralı successor olur.
node scripts/releases/build-alignment-source-first-release.mjs \ --predecessor en-alignment-4 \ --package .cache/english-quality/alignment/en-alignment-4-v1 \ --curation data/curated/english/en-alignment-5-source-first.json \ --output .cache/english-quality/alignment/en-alignment-5-v1 \ --core-package .cache/munderecat/releases/tr-latn-1/package/corpus-release-v1 \ --target-package .cache/english-quality/en-target-render-3/package-v2Çıktı klasörü yeni olmalıdır. Builder önceki artifact’ı değiştirmez. İncelenen chapter’ların scope/grup üyelikleri yeni sürümde düzenlenir; diğer chapter’ların mevcut ilişkileri korunur. Uygun eski source/target unit kimlikleri yeniden kullanılır. Yeni pakette kullanılmayan eski unit’ler pakete taşınmaz; eski yayınlarda ve DB’de kalırlar. Türkçe core, eski release’ler ve İngilizce kitabın byte’ları değiştirilmez.
Varsayılan işlem mevcut, kesintisiz alignment scope’unu yeniler. Daha önce
alignment scope’u olmayan bir chapter için inceleme girdisinde ve curation’da
operation: "add_scope" açıkça belirtilir. Bu işlem ancak canonical kaynak
satırlarının tamamı hesaba katılmış ve available durumundaki kesintisiz hedefin
tamamı tanıklanmışsa kabul edilir. Mevcut scope’u ekleme adı altında değiştiremez;
işlem belirtilmeden de eksik scope kendiliğinden oluşturulmaz.
Yeni scope’lar release envanterinin sonuna eklenir; önceki scope pozisyonları korunur. Bu pozisyonlar canonical kitap/chapter okuma sırası değildir. Cümle, paragraf veya token sıraları değişmez. Gerçek RPC doğrulaması eklenen chapter’ın eski sürümde hem scope üyeliğinin hem RPC karşılığının olmadığını ayrıca denetler.
Çok parçalı hedefi düzenlemek bu builder’ın kapsamı dışındadır. Bir chapter’ın
İngilizcesinin başka bir kitap dosyasında bulunması ise tek başına çok parçalı
hedef anlamına gelmez; gerçek scope/composition metadata’sı esas alınır.
Yeni bir dil için mevcut dil/target yayın protokolü geçerlidir, İngilizceye özgü
bu düzeltme dosyası kullanılmaz.
Doğrulama ve Yayın
Bölüm başlığı “Doğrulama ve Yayın”make db-alignment-testnode --experimental-strip-types --test \ packages/reader-core/tests/translation-layout.test.mjs \ packages/reader-core/tests/translation-presentation.test.mjsKabul edilmiş paket mevcut insert-only installer ile kurulur; reset gerekmez. Ardından gerçek RPC çıktısında cümle kimlikleri ve tam hedef aralıkları curation ile karşılaştırılır. Okuyucunun ham metni birebir koruduğu, yalnız kayıtlı dizgi düzeltmelerini uyguladığı ve eski Birinci Söz/Dokuzuncu Şua ilişkilerinin değişmediği kontrol edilir. Web ve mobil aynı reader-core gösterim katmanını kullanır.
Yerel test, remote yayın yapılmış olduğu anlamına gelmez. R2, remote DB ve API publication kimlikleri tutarlı bir yayın bağlamında güncellenmeden production fixture’ı değiştirilmez. Yerel uygulamalar yerel Supabase’e bağlı kalır.
İlk Somut Düzeltme
Bölüm başlığı “İlk Somut Düzeltme”Altıncı Şua için 76 kaynak satır yeniden incelendi: 74 anlam grubunda 75 kaynak
satır eşleşti. Açılıştaki iki kaynak satır aynı İngilizce cümlenin parçalarıdır.
58. satırdaki soru hedef İngilizce kitapta bulunmadığından source_only kaldı.
Başlık, iki nüktelik açıklama ve besmele ayrı karşılıklardır. not equal to Muhammad tek kaynak cümleye; ardından gelen aile cümlesi kendi karşılığına bağlanır.
Bu bölümün anlam incelemesi bütün külliyatın tamamlandığı iddiası değildir. Kalan chapter’lar envanter bulguları ve kaynak kanıtlarıyla ayrı ilerletilir.
İkinci Söz’de de tek Türkçe cümlenin iki İngilizce cümleye karşılık geldiği
yerler vardır. 43. kaynak satırdaki mümin olma ve Hâlık’ı tanıma ifadeleri birlikte
bağlanır; sonraki dünya tasviri 44. satırındır. 53 ve 54. satırların iman/küfür
karşıtlığı İngilizcedeki iki yan cümleye ayrılır. 56. satır ise kapanıştaki çağrı
ve Arapça ibarenin İngilizcesini birlikte içerir. Kaynakta olup hedef scope’unda
bulunmayan sondaki ***, eksik bir İngilizce cümle gibi değerlendirilmez.
İlk Yerel Kabul
Bölüm başlığı “İlk Yerel Kabul”en-alignment-5 yerel Supabase’e insert-only kuruldu. Beş chapter’ın 260
kaynak satırı 254 grupta incelendi. 257 kaynak satırının karşılığı var; bir soru
ve iki yapısal ayraç açıkça source_only kaldı. Bu beş chapter’ın hedef metninde
boşluk dışında karşılıksız karakter yoktur.
| Chapter | Önceki grup | Yeni grup | Source-only |
|---|---|---|---|
| İkinci Söz | 40 | 48 | 1 yapısal ayraç |
| Üçüncü Söz | 34 | 50 | 0 |
| Dördüncü Söz | 26 | 35 | 0 |
| Beşinci Söz | 35 | 47 | 1 yapısal ayraç |
| Altıncı Şua | 50 | 74 | 1 soru |
Dördüncü Söz’deki iki grup bilinçli 2:1 ilişkilerdir. İngilizce, emri bildiren ifadeyi alıntının içine yerleştirir; başka bir cümlede koşul ve ana sorunun sırasını değiştirir. Bunları sırf sayı eşitlemek için yanlış sınırdan bölmek yerine ilgili iki Türkçe cümle aynı anlam grubunda tutulur.
node --experimental-strip-types scripts/translations/verify-source-first-local.mjs \ --output .cache/english-source-first/local-verification.jsonBu komut yalnız yerel Docker Supabase kullanır; remote URL ortam değişkenlerini kullanmaz. İncelenen chapter’ların canlı kaynak metni, kimlikleri, sırası, RPC aralıkları ve okuyucu çıktısı karşılaştırılır. Birinci Söz ve Dokuzuncu Şua’nın önceki RPC unit/grup/source üyeleri ayrıca birebir korunmuştur; bu iki chapter’ın bütün anlamları yeniden onaylanmış sayılmaz.
Web’de 1360 px genişlikte Altıncı Şua’nın üç kritik hover karşılığı, 390 px genişlikte İkinci Söz’ün iki İngilizce cümleyi içeren doğru Türkçe karşılığı kontrol edildi. Expo-web’de 74 Altıncı Şua unit’i, düzeltilmiş satır devamı ve Türkçe karşılık paneli doğrulandı. Yatay taşma görülmedi. Metro’nun eski curation önbelleği temizlenerek yeniden başlatıldı. Bu, gerçek Android/iOS cihaz testi değildir.
16 R2 nesnesi yüklenip içerikleri doğrulandı. Artifact package root:
dc89b2a0c93c67f65f08b766fb9c0b068cc57bdccef700812a183882878797e7.
Alignment kimliği: 3a7e5a5d-0d0b-52e2-9518-7c127619ad40.
Bu aşamada remote Supabase ve canlı Content API publication güncellenmedi.
Birinci Söz ve Dokuzuncu Şua
Bölüm başlığı “Birinci Söz ve Dokuzuncu Şua”en-alignment-6, önceki düzeltmeleri koruyarak bu iki chapter’ı yeniler.
Birinci Söz, sonundaki On Dördüncü Lem’a’nın İkinci Makamı dahil incelendi.
| Chapter | Kaynak satır | Önceki grup | Yeni grup | Source-only |
|---|---|---|---|---|
| Birinci Söz | 221 | 144 | 218 | 1 dış başlık tekrarı |
| Dokuzuncu Şua | 154 | 94 | 153 | 1 yapısal ayraç |
Birinci Söz’de dış başlık ve girişten sonraki iç başlık Türkçede ayrı kayıtlardır.
İngilizce baskıda başlık girişten sonra bir kez bulunur; yalnız bu iç başlığa
bağlanır. İki başlığı aradaki cümlelerin üzerinden atlayarak birleştirmek doğru
değildir. DB bu ilk adayı reddetti ve işlem geri alındı. Aynı kontrol artık paket
üretiminde de yapılır: merge/split üyeleri kesintisiz olmalıdır; complex
grup yalnız açıkça unresolved bırakılmış aralıkların üzerinden geçebilir.
Başka accepted grubun üyelerinin üzerinden geçemez. DB kuralları gevşetilmedi.
Dokuzuncu Şua’da çocuklar ve ihtiyarlar hakkındaki paragrafların kaymış yan
cümleleri düzeltildi. anladım ki girişi kendi karşılığına, ardından gelen
uzun açıklama kendi kaynak cümlesine bağlandı. Açılıştaki Arapça ayetlerin
İngilizce karşılıkları da canonical kaynak satırlarına bağlandı; burada hover
Türkçe tercüme uydurmaz, külliyatın kaynak Arapça satırını gösterir.
node --experimental-strip-types scripts/translations/verify-source-first-local.mjs \ --curation data/curated/english/en-alignment-6-source-first.json \ --old-descriptor data/releases/en-alignment-5.json \ --new-descriptor data/releases/en-alignment-6.json \ --output .cache/english-source-first/local-verification-6.jsonGerçek yerel RPC, 24 kritik anlam tanığı ve okuyucu roundtrip kontrolü geçti. İkinci Söz ve Altıncı Şua’nın önceki çıktıları aynı kaldı. Web’de masaüstü Dokuzuncu Şua ve mobil genişlikte Birinci Söz; Expo-web’de Dokuzuncu Şua’nın Türkçe karşılık paneli doğrulandı. Yatay taşma yok. Gerçek cihaz testi yapılmadı.
İki sürüm birlikte 7 chapter, 635 kaynak satır ve 625 anlam grubunu kapsar. 630 kaynak satırının karşılığı vardır; dört yapısal kayıt ve bir soru source-only kalır. Bu yedi chapter’ın İngilizce metninde karşılıksız boşluk dışı karakter yoktur. Bu sayı bütün 193 hizalama dosyasının anlam bakımından onaylandığını göstermez; kapsamlı envanter ile bireysel anlam incelemesi ayrı sonuçlardır.
en-alignment-6 yerel Supabase’e kuruldu ve 16 R2 nesnesi doğrulanarak yayımlandı.
Alignment kimliği 043aa0a8-ec83-5579-b9b6-51bde7ba4299, package root
2602ce424c453eb8384759bb7c1a4effeb5b4c744fd01c85f68f99ac63721eed.
Remote DB ve canlı uygulama bu aşamada güncellenmedi. Sonraki yayın mevcut
bekleyen migration, target-render, alignment ve Content API paketini birlikte
ele almalıdır; yalnız fixture değişikliğini deploy etmek yeterli değildir.
Corpus İçindeki Sınırlı Düzeltmeler
Bölüm başlığı “Corpus İçindeki Sınırlı Düzeltmeler”en-alignment-7, önceki yedi chapter’ı değiştirmeden, 129 chapter’daki seçilmiş
aralıkların ilişkilerini düzeltir. Bütün chapter’ların yeniden anlam onayı değildir.
| Sonuç | Sayı |
|---|---|
| Anlam bakımından incelenen aralık | 795 |
| Uygulanan düzeltme | 779 |
| Ayrı incelemeye bırakılan aralık | 16 |
| Düzeltmelerdeki kaynak cümle | 1.879 |
| Geri kazanılan eksik kaynak bağlantısı | 797 |
| Eski 779 grubun yerine kurulan grup | 1.877 |
| Değişen chapter’larda korunan hover parçası | 36.779 |
Kararlar data/curated/english/en-alignment-7-window-corrections.json içindedir.
Yanındaki .report.json, 16 istisnayı ve gerekçelerini saklar. İstisnalar arasında
başka bölümden alınmış benzer başlık, eksik Arapça kaynak satırına ait alıntı,
komşu cümlenin devamı ve İngilizcede karşılığı henüz gösterilemeyen ayrı bir
iddia bulunur. Bunları toplu bir gruba ekleyerek yapay coverage üretilmez.
Otuzuncu Söz’de başlık ve açıklama İngilizcede ters sıradadır. Her biri kendi Türkçe cümlesine bağlanır; iki dilin okuma sırası ayrı tutulur. On Yedinci Söz’ün İkinci Makam girişinde ise başlık ve dipnot işareti İngilizce satırlar arasında dağıldığından ilgili pencere ortak anlam grubunda tutulur.
Üretim ve Koruma
Bölüm başlığı “Üretim ve Koruma”node scripts/releases/build-alignment-window-release.mjs \ --predecessor en-alignment-6 \ --package "$ALIGNMENT_6_PACKAGE" \ --curation data/curated/english/en-alignment-7-window-corrections.json \ --output .cache/english-quality/alignment/en-alignment-7-reproduction \ --core-package "$TR_CORE_PACKAGE" \ --target-package "$EN_TARGET_3_PACKAGE"
node --experimental-strip-types scripts/translations/verify-alignment-windows-local.mjsBuilder yalnız değişen chapter’ın sürüme bağlı scope kayıtlarını yeniden bağlar. Diğer accepted grupların anlam üyeleri ve unresolved adayların ilişkileri korunur. Türkçe canonical cümle kimlikleri, token sırası ve metin değişmez. Eski alignment sürümleri DB’de kalır. Yeni pakette yalnız yeni sürümün kullandığı unit kayıtları bulunur; emekliye ayrılan İngilizce parça önceki sürüm üzerinden izlenebilir.
Public source_key, unit/<sıra>, tam bağlı sentence/<UUID> veya hedefin
kendi scalar koordinatlarıyla birebir eşleşen range/<başlangıç>:<bitiş> olabilir.
Keyfî dosya yolları kabul edilmez. Yeni aralık formatı denetimde yalnız
bağlı target unit’in gerçek koordinatlarıyla eşleşirse geçerlidir.
Gerçek yerel RPC doğrulaması 779 aralığın tamamında geçti. Canlı Türkçe metin kontrolü yalnız ilgili 1.879 cümleye uygulandı; bütün corpus tekrar hash’lenmedi. 129 chapter’ın eski/yeni İngilizce okuyucu çıktısı ham metne birebir geri kuruldu. Önceden incelenmiş yedi chapter’ın RPC çıktısı yalnız üst sürüm kimliği dışında aynı kaldı. Web masaüstü ve Expo-web mobil görünümünde Otuzuncu Söz’ün ayrı başlık/açıklama karşılıkları doğrulandı. Gerçek Android/iOS cihaz testi yapılmadı.
Yayın Durumu
Bölüm başlığı “Yayın Durumu”Bu aşamada yerel Supabase, web ve mobil yerel API’leri alignment-7’ye geçirildi. 16 R2 nesnesi
yüklendi ve içerikleri yeniden okunarak doğrulandı. Alignment kimliği
872f6f26-24fb-5aee-94dd-566a6db91584, package root
509c0512733b0219451c6da68d28ccea0222dfdcbe5ac47e05ae7e5d598bb045.
O aşamada kalan 16 istisna aşağıdaki successor ile çözüldü. Eski curation ve rapor, o sürümün karar geçmişi olarak değiştirilmeden saklanır.
İstisnaların Kaynak Bağlamıyla Çözümü
Bölüm başlığı “İstisnaların Kaynak Bağlamıyla Çözümü”en-alignment-8, 16 istisnaya ek olarak aynı incelemede bulunan bir başlık
penceresini ve iki komşu grubu birlikte ele alır. 19 eski grubun yerini,
10 chapter içindeki 17 düzeltme penceresinde 43 anlam grubu alır.
| Sonuç | Sayı |
|---|---|
| İncelenen canonical kaynak cümle | 62 |
| Bu pencerelerde kabul edilen kaynak bağlantısı | 56 |
| Geri kazanılan eksik accepted bağlantı | 27 |
| Yanlış accepted bağı kaldırılan kaynak cümle | 3 |
| Açık gerekçeli source-only | 6 |
| Açık gerekçeli target-only parça | 1 |
| Bu istisna kümesinde ertelenen karar | 0 |
| Değişen chapter’larda korunan diğer hover parçası | 2.994 |
Önemli örnekler:
- Yirmi Sekizinci Mektup’taki erken
Fifth Point,Beşinci Nokta:kaydına; daha sonrakiFIFTH POINT,Beşinci Nüktekaydına bağlanır. Aynı kelimelerin bulunması tek başına doğru bölümün bulunduğunu kanıtlamaz. İki başlığın komşu cümleleri ve kitap koordinatları ayrı ayrı kullanılır. - Yirminci Mektup’ta
Altıncı Kelimebaşlığı ileيُحْيٖىalıntısının İngilizce karşılıkları ayrı canonical cümlelere bağlanır. - İşaratü’l-İ’caz’daki meyve örneğinde başlık, yenilen meyvenin yerine yenisinin gelmesi ve sonuç cümlesi iki eski grubun birlikte düzenlenmesiyle ayrılır.
- İngilizcede önceki Türkçe önermenin sonraki açıklamanın içinde yeniden anlatıldığı kısa aralık ortak anlam grubunda kalır. Bu, dört ayrı birebir eşleşme iddiası değil, açıkça kayıtlı çoktan çoğa bir ilişkidir.
- Türkçe kaynak yalnız
...içerirken İngilizce baskının ayrıntılı açıklama verdiği parça okunmaya devam eder; olmayan Türkçe çeviri hover’a eklenmez.
Kabul edilmiş kararlar ve sayım
data/curated/english/en-alignment-8-window-corrections.json ve yanındaki
.report.json içindedir. Önceki pakete uygulama için aynı window builder
--predecessor en-alignment-7 ve bu curation ile kullanılır.
node --experimental-strip-types scripts/translations/verify-alignment-windows-local.mjs \ --curation data/curated/english/en-alignment-8-window-corrections.json \ --old-descriptor data/releases/en-alignment-7.json \ --new-descriptor data/releases/en-alignment-8.json \ --report .cache/english-source-first/alignment-windows-8-local.jsonGerçek yerel DB/RPC kontrolü, 62 kaynak metin tanığını ve 17 pencerenin eski/yeni
ilişkilerini doğruladı. Değişen 10 chapter’ın ham İngilizce metni birebir geri
kuruldu; daha önce tamamı incelenmiş yedi chapter değişmedi. Web masaüstü ve
Expo-web mobil görünümünde iki Fifth Point başlığının ayrı karşılıkları
doğrulandı; yatay taşma yok. Gerçek Android/iOS cihaz testi yapılmadı.
Alignment-8 Yayını
Bölüm başlığı “Alignment-8 Yayını”Bu aşamada yerel Supabase, web ve mobil yerel API’leri alignment-8’e geçti. R2’nin 16
nesnesi public dağıtım adreslerinden okunarak boyut ve içerik özetiyle doğrulandı.
Alignment kimliği 148758ec-340f-564c-94b2-f8c8f72bb50e, package root
c97cc14959508355d0024bfcfb3b2aa3e34584a8d2ad606286ba9e9371a86845.
Bu istisna listesinin tamamlanması bütün 193 dosyanın semantik olarak tamamlandığı anlamına gelmez. Kalan envanter sınıfları, özellikle yanlış konuma bağlı karşılıklar ve hedefi olup alignment scope’u bulunmayan chapter’lar ayrıca değerlendirilir. İngilizce kaynağı olmayan kısımlarda çeviri üretilmez.
Remote Supabase ve canlı Content API publication henüz güncellenmedi. Production’a geçişte migration, target-render, alignment sürüm zinciri ve Content API publication birlikte ele alınacaktır; eski publication ile yeni fixture karıştırılmaz.
Kısa Bölümlerin Cümle Bağlantıları
Bölüm başlığı “Kısa Bölümlerin Cümle Bağlantıları”en-alignment-9, daha önce İngilizce metni okunabilen ancak cümle bağlantısı
olmayan dokuz canonical chapter’a scope ekler:
- On Dördüncü, Yirmi Beşinci ve Yirmi Yedinci Mektup’un kısa açıklamaları.
- On Beşinci, On Sekizinci, Yirmi Yedinci, Otuz İkinci ve Otuz Üçüncü Lem’a’nın kısa açıklamaları.
- Mektubat’ın sonundaki dua.
Kısa açıklama bu canonical chapter’ın tamamıdır. Başka yerde yayımlandığını
söylediği eserin burada tam çevirisi bulunduğu iddia edilmez. was not written
ifadesi de gerçek bir karşılıktır: Telif edilmemiştir. cümlesine bağlanır.
Eski paired dosyadaki It was not written. ile birebir eşleşmemesi, İngilizce
karşılığın olmadığı anlamına gelmez.
| Sonuç | Sayı |
|---|---|
| Yeni scope | 9 |
| İncelenen canonical kaynak satırı | 40 |
| Yeni cümle bağlantısı / anlam grubu | 32 |
Source-only yapısal *** ayıracı |
8 |
| Target-only parça | 0 |
| Yeni chapter’larda karşılıksız İngilizce boşluk dışı karakter | 0 |
Duada İngilizce baskının iki ifade farkı curation gerekçelerinde saklanır:
yayımlayanlar için duada Türkçenin ayrıca saydığı öğrenciler burada açıkça
tekrarlanmaz; sonraki genel öğrenci duası kendi cümlesine bağlı kalır. Ayrıca
Türkçedeki her bir harfine karşılığında İngilizce each word der. Bu baskı
farkları kaynak metni değiştirme veya komşu cümlenin anlamını aktarma yoluyla
gizlenmez. Eşleşmenin doğru cümleye bağlanması çevirinin sözcüğü sözcüğüne aynı
olduğu iddiası değildir.
node --experimental-strip-types scripts/translations/verify-source-first-local.mjs \ --curation data/curated/english/en-alignment-9-source-first.json \ --old-descriptor data/releases/en-alignment-8.json \ --new-descriptor data/releases/en-alignment-9.json \ --output .cache/english-source-first/local-verification-9.jsonYerel kurulum ve gerçek RPC doğrulaması geçti. Dokuz chapter’ın eski sürümde scope/RPC karşılığının olmadığı, yeni sürümde 32 doğru bağlantıya sahip olduğu ve ham İngilizce metnin birebir korunduğu doğrulandı. Birinci Söz ile Dokuzuncu Şua’nın önceki RPC/gösterim sonuçları değişmedi.
Web’de dua ve was not written hover’ları; Expo-web mobil görünümünde duanın
Türkçe karşılık paneli doğrulandı. Yatay taşma yok. Gerçek Android/iOS cihaz
testi yapılmadı. Çalışan örnek: /en/letters/prayer.
Alignment-9 Kabulündeki Durum
Bölüm başlığı “Alignment-9 Kabulündeki Durum”Yerel Supabase, web, mobil yerel API’leri ve standart kurulum varsayılanı
alignment-9 kullanır. R2’de 16 nesne yüklendi ve içerikleri doğrulandı.
Alignment kimliği 153bcfbc-57d2-55ff-89c4-aacb9f50b0b2, package root
f83cd72bcc4c235bc8923da27ace7893ef082d8ba524eebdfa73b8b231a53537.
Remote DB ve canlı Content API bu çalışma sırasında değiştirilmedi.
Tamamı yeniden incelenmiş kapsam artık 16 canonical chapter, 675 kaynak satırı ve 657 anlam grubudur. 662 kaynak satırı bağlıdır; 12 yapısal ayraç/başlık ve bir gerçek karşılıksız soru source-only kalır. Bunlara ek olarak alignment-7/8’in diğer chapter’lardaki sınırlı pencere düzeltmeleri vardır.
Mevcut hedefi olup henüz alignment scope’u olmayan yedi chapter kaldı: Onuncu Söz, On Dokuzuncu Mektup, Emirdağ I/15, Emirdağ II/03, II/06, II/08 ve Hakikat Çekirdekleri. İlk altısının önceki paired dosyaları ve düzeltme raporları vardır; Hakikat Çekirdekleri kaynak cümlelerinin mevcut İngilizce metne bağlanması gerekir. İngilizcesi Hutbe kaynak kitabında kesintisiz bir aralıktadır; bu başka kitapta bulunma durumu çok parçalı chapter anlamına gelmez.
Diğer scope’lardaki kalan sınır adayları ayrıca değerlendirilir. Örneğin eski envanterin farklı konum gösterdiği 23 kaydın incelemesinde 22 mevcut DB bağı doğru bulundu; yanlış olan eski paired satırdı. Bir Emirdağ aralığında ise başlık ile sonraki cümlenin ortak İngilizce karşılığına ikinci cümlenin de bağlanması gerektiği saptandı; sonraki pencere paketine alınacaktır. Bu ayrım, envanterdeki fark sayısını otomatik hata veya otomatik düzeltme sayısı olarak kullanmamak için somut bir nedendir.
Uzun Bölümlerin Cümle Bağlantıları
Bölüm başlığı “Uzun Bölümlerin Cümle Bağlantıları”en-alignment-10, kalan yedi kesintisiz chapter’a kaynak öncelikli scope ekler.
İnceleme mevcut paired dosyalar, önceki düzeltme raporları ve ham İngilizce kitap
bağlamıyla yapılmıştır. Türkçe ana satırlar canonical cümle kimliklerine aynı
sırada bağlanır; yeni çeviri üretilmez.
| Chapter | Kaynak satır | Anlam grubu | Source-only | Target-only |
|---|---|---|---|---|
| Onuncu Söz | 1.402 | 1.184 | 211 | 0 |
| On Dokuzuncu Mektup | 3.313 | 3.085 | 125 | 3 |
| Hakikat Çekirdekleri | 304 | 296 | 4 | 4 |
| Emirdağ I / 15 | 265 | 244 | 19 | 0 |
| Emirdağ II / 03 | 484 | 429 | 54 | 6 |
| Emirdağ II / 06 | 323 | 253 | 64 | 3 |
| Emirdağ II / 08 | 275 | 268 | 5 | 0 |
| Toplam | 6.366 | 5.759 | 482 | 16 |
5.884 kaynak satırı bağlıdır. source_only, 482 kayıp İngilizce cümle demek
değildir: yapısal ayraçlar, mevcut hedef kapsamının dışında kalan son notlar,
aynı anlamın başka kaynak satırında zaten bağlandığı tekrarlar ve bağımsız
karşılığı gerçekten bulunmayan ifadeler bu üyelik durumundadır. Her birinin
gerekçesi curation’da saklanır. Özellikle Onuncu Söz’ün son notları ve On
Dokuzuncu Mektup’un ek/dipnot satırları için bu scope’ta yok sonucu, başka
İngilizce kaynakta da bulunmadığı iddiası değildir.
Somut Ayrımlar
Bölüm başlığı “Somut Ayrımlar”- Onuncu Söz’deki ardışık Arapça ayetlerin İngilizce karşılıkları bir satır kaymıştı. Her ayet kendi canonical ana satırına bağlandı. Yalnız ayet numarası aynı diye sorunun yanında cevabın da mevcut olduğu varsayılmaz.
This being the case, as the result of the mentioned evidencesgeçişi, önceki tasvire değilMadem böyledir, bütün delailin neticesi olaraksatırına aittir. Aynı İngilizce paragrafta olmaları bu ayrımı ortadan kaldırmaz.- On Dokuzuncu Mektup’ta
And don't write a long Sura, just a short oneuzun/kısa sure karşıtlığını kuran satıra;But if you can't do thisise sonrakiYoksacümlesine bağlıdır. Eksik ara önerme komşu anlamla doldurulmaz. Bak!ve devamındaki tasvir, isim ve görev unvanı, iki ayrı dua veya soru ile cevap, karşılıkları ayrılabiliyorsa ayrı tutulur. Tek İngilizce cümle veya ters ifade sırası gereksiz ortak grup üretmez.- Hakikat Çekirdekleri’nde 256. kaynak satırının İngilizcesine çevirmen notu girer. İki hedef parçası aynı cümle ve gruba bağlıdır; aradaki notun uydurma karşılığı yoktur. RPC’de 296 grup için 297 hedef parçası dönmesi doğrudur.
Kabul ve Kalan Kapsam
Bölüm başlığı “Kabul ve Kalan Kapsam”Yerel kurulum, yedi chapter’ın bütün kaynak kimlikleri/metinleri, tam RPC aralıkları ve ham okuyucu roundtrip’i üzerinden doğrulandı. Açıklanmamış İngilizce boşluk dışı karakter 0; target-only parçalar ayrıca korunur. Birinci Söz ve Dokuzuncu Şua’nın önceki çıktıları değişmedi.
node --experimental-strip-types scripts/translations/verify-source-first-local.mjs \ --curation data/curated/english/en-alignment-10-source-first.json \ --old-descriptor data/releases/en-alignment-9.json \ --new-descriptor data/releases/en-alignment-10.json \ --output .cache/english-source-first/local-verification-10.jsonWeb masaüstü/dar ekran hover’ı ve Expo-web karşılık panelinde On Dokuzuncu Mektup’un ayrılan anlamları kontrol edildi. Onuncu Söz’ün geçiş cümlesi de doğru satırı gösterir. Gerçek Android/iOS cihaz testi yapılmadı.
Yerel Supabase ve okuyucuların seçimi artık alignment-10. R2’de 16 nesne
yüklendi ve geri okunarak doğrulandı; paket yaklaşık 33,3 MB’dır. Kimlik
fb1530fb-56ff-5002-84ce-c1c4e09a2b72, package root
57461616506d911582ee58ce1658d8cf4311b17e469c8e2af814606da3ec02ec.
Remote Supabase ve production publication bu kabul sırasında değiştirilmedi.
Toplam 189 alignment scope’u vardır: hedef metni mevcut fakat scope’u olmayan chapter kalmamıştır. Bu, her eski cümle eşleşmesinin yeniden onaylandığı anlamına gelmez. Tam kaynak incelemesi 23 chapter, 7.041 satır ve 6.416 anlam grubu kapsar; diğer bölümlerde ayrıca alignment-7/8 pencere düzeltmeleri bulunur.
Güncellenen offline sınır audit’i 2.004 tekil tanıklı satırda accepted bağlantı olmadığını, 2.231 satırda eski paired tanığından geniş ve 172 satırda farklı aralık bulunduğunu raporlar. Bunlar hata sayısı değildir. Artık incelemeye yedi yeni scope da dahil olduğu için ham sayılar önceki audit ile doğrudan ilerleme yüzdesi olarak karşılaştırılamaz. Düzeltilmiş ayet dizileri ve tamamlanan ana alıntılar, hatalı eski paired dosyaya göre doğal olarak farklı görünür.
Sonraki veri işi, gerçekten eksik veya yanlış sınırları eski incelemeleri tekrarlamadan ayırmak; kapsam dışı son notların mevcut kaynaklardaki yerini belirlemek ve bekleyen Emirdağ ortak-cümle düzeltmesini sonraki pencere paketine almaktır. Remote/API yayını ayrı, tutarlı bir yayın geçişi gerektirir.
Basılı Sayfa Kırıkları
Bölüm başlığı “Basılı Sayfa Kırıkları”Yedi yeni bölümde 405 boş satır kırığı incelendi; 173 yeni, tam tanıklı gösterim düzeltmesi eklendi. Önceki 36 ile birlikte 209 düzeltmenin ham kaynakta tekil, örtüşmesiz ve geçerli olduğu doğrulandı. Bu sayı paragraf sayısı veya çeviri değişikliği sayısı değildir.
Okuyucu düzeltmeleri üç ayrı durumu ayırır:
- Cümle içindeki basılı sayfa boşluğu, incelenmiş tam metin tanığıyla tek
boşluğa dönüşür:
have accepted thevegift of his guidancebirleşir. soft_hyphen, yalnız kelimenin baskıda bölünmesinden gelen tireyi kaldırır:con-vescious,consciousolarak görünür.hyphen_continuation, ismin/terimin parçası olan tireyi korur; yalnız ardından gelen sayfa boşluğunu kaldırır:al-Muttalib,All-Wise.
Son seçenek açıkça işaretlenmiş, tekil bir tanık ve tirenin iki yanında harf
gerektirir. Bütün tire veya satır sonlarına uygulanan bir normalizasyon yoktur.
Gerçek paragraf, başlık, alıntı ve çevirmen notu sınırları korunur. Örneğin
Hakikat Çekirdekleri’ndeki [Tr.] not sonu, sonraki ana cümle parçasına katılmaz.
Bu değişiklikler en-reader-presentation-1.json ve ortak reader-core üzerinden
web/mobil gösterimine uygulanır; yeni DB/alignment yayını gerektirmez.
On Dokuzuncu Mektup’taki have accepted the gift devamı masaüstü/dar ekran
web’de ve Expo-web’de aynı kaynak karşılığıyla doğrulandı. Metro eski haricî JSON
önbelleğini kullandığı için --clear ile yeniden başlatıldı. Ortak reader-core
tip kontrolü ve 11 odaklı gösterim testi geçti; bu yalnız gösterim değişikliği
için corpus/DB yeniden kurulmadı veya tüm-korpus hash taraması tekrarlanmadı.
Yaygın Sınır Düzeltmeleri
Bölüm başlığı “Yaygın Sınır Düzeltmeleri”en-alignment-11, önceki incelemeleri tekrar etmeden 1.948 sınır adayının
kararlarını birleştirir. 1.898 düzeltme penceresi 144 chapter’da 3.889 kaynak
cümleyi kapsar ve 3.872 anlam grubu üretir. Üç kaynak kaydı ve 20 hedef parça,
karşılıkları olmadığı için gerekçeleriyle unresolved tutulur. Bir pencere,
bekleyen adayın ayrıca düzenlenmesini gerektirdiği için sonraki işe bırakılır.
Bu sayılar bütün chapter’ların yeniden semantik onayı değildir.
İki önemli kaynak hatası da bu pakette çözülür:
- İşaratü’l-İ’caz’da Türkçe altı nokta açıklaması, eski eşleme dosyasındaki üç mesele başlığına değil, gerçek altı nokta girişine bağlanır.
- Muhakemat’ta eski İngilizce dosyanın satır kayması, komşu altı accepted
grubun birlikte düzenlenmesiyle giderilir.
Zira onların mesleğince mümkündürgirişi ile Van Gölü/Sübhan Dağı örneği ayrı kaynak sahiplerine döner. Komşu cümlenin parçası yanlışlıkla karşılıksız bırakılmaz.
Türkçe kaynak ile canonical cümle sırası aynı olsa da, eski İngilizce eşleme dosyasının aynı satırındaki anlam yanlış olabilir. Bu nedenle satır numarası, exact hedef veya başarılı derleme tek başına anlam doğruluğu sayılmaz.
Yerel kurulumdan sonra 1.898 pencerenin kaynak kimlikleri, metin tanıkları, eski/yeni RPC karşılıkları ve ham İngilizce roundtrip’i doğrulandı. Değişen chapter’lardaki 38.354 diğer hover parçası ve önceki yedi kontrol chapter’ı korundu. Türkçe core değiştirilmedi; tüm-korpus hash kontrolü tekrarlanmadı.
node --experimental-strip-types scripts/translations/verify-alignment-windows-local.mjs \ --curation data/curated/english/en-alignment-11-window-corrections.json \ --old-descriptor data/releases/en-alignment-10.json \ --new-descriptor data/releases/en-alignment-11.json \ --report .cache/english-source-first/alignment-windows-11-local.jsonYerel paket kimliği 9199b21e-2df1-5d45-8e4b-027639ff4a94, package root
2915d4ff549d5d7735ad6edff5f920ece15ea9983f1f296cfdda84c0f4a9adf5.
Toplam 43.242 accepted grup vardır; unresolved kaynak sayısı 9.388’den
8.458’e düşmüştür. Remote DB/production henüz bu sürüme geçirilmemiştir.
Paketin 16 nesnesi R2’ye yüklendi ve indirilerek doğrulandı. Yerel web ve Expo-web okuyucusu bu sürümü kullanır; Muhakemat’taki Van Denizi örneği her ikisinde de yalnız kendi Türkçe cümlesini gösterir. Masaüstü ve dar ekran kontrolünde yatay taşma yoktur. Bu kontrol yeni Android/iOS cihaz testi değildir.
Muhakemat Birinci Makale’de 36 ek cümle-içi sayfa boşluğu, yalnız gösterim
curation’ına eklendi. Toplam 245 gösterim düzeltmesi vardır. Yeni 36 tanığın
ham kitapta tekil olduğu ve harf/noktalama dizisini değiştirmediği doğrulandı;
12 odaklı reader testi geçti. Lake Van and / Mount Subhan kesintisi web ve
Expo-web’de kaldırıldı, hover karşılığı korundu. Ham hedef metni, koordinatları
ve DB değişmedi. Birim testleri yerel cache dosyalarına bağımlı değildir.
Kalan çalışma: incelenmiş eksik bağlantıları, bekleyen adayları ve gerçekten mevcut chapter sınırı dışındaki karşılıkları aktarmak. Aynı başlığın veya imzanın başka yerde geçmesi kendi başına ortak çeviri bağı oluşturmaz. Gerçek iç içe anlatım, küçük ve açıkça gerekçelendirilmiş ortak anlam grubuyla temsil edilir.
Eksik Bağlantıların Tamamlanması
Bölüm başlığı “Eksik Bağlantıların Tamamlanması”en-alignment-12, 151 chapter’da 1.056 pencereyi düzenler. 2.381 kaynak
cümle tanığı kullanılarak 2.324 anlam grubu üretilmiştir. Önceki grupların bir
kısmı değiştirildiği için bu sayı net grup artışı değildir; toplam accepted
grup sayısı 43.242’den 45.317’ye çıkar. Bekleyen aday sayısı 181’den 12’ye,
unresolved kaynak birimi sayısı 8.458’den 7.129’a iner.
| İşlem | Pencere | Amacı |
|---|---|---|
bind_unresolved |
641 | Henüz bir adayın sahiplenmediği mevcut karşılığı bağlamak |
replace_candidates |
164 | Bekleyen adayları, gerektiğinde accepted komşularıyla birlikte çözmek |
| Accepted grup düzeltmesi | 235 | Yanlış sınır veya kaynak sahibini düzeltmek |
extend_scope |
16 | Ham chapter’da mevcut, eski alignment kapsamı dışındaki karşılığı almak |
1.624 eksik-bağ adayının, 253 sahiplik çakışması adayının ve bunlardan ayrı kalan 36 özel durumun kararları birleştirilmiştir. Aynı envanteri kullanan kararlar tek pencerede toplanır; aynı kaynak için ikinci bağlantı üretilmez. İnceleme sonucunda zaten doğru olan kayıtlar değiştirilmez.
Tekrarlanan Reminder, Firstly, Secondly gibi ifadeler chapter’daki ilk
eşleşmeye bağlanmaz. Türkçe cümlenin komşuları, doğru İngilizce pasajı belirler.
Örneğin Birisi, bağımsız bir başlık olmasa da One shows... içindeki One
parçasına bağlanabilir. Buna karşılık başka sayfadaki aynı imza veya başlık,
bu kaynak cümlenin karşılığı sayılmaz.
35 kaynak ve 636 hedef parça açık gerekçeli unresolved olarak korunur. 636, çeviri eksikliği sayısı değildir: geniş bir hedef unit bölündüğünde henüz incelenmemiş kalan içerik de bu envanterdedir. Gerçek kaynak yokluğu, henüz incelenmemiş içerik ve zaten doğru ilişki ayrı kararlar olarak raporlanır. Bu paket eski accepted kayıtların tümünün semantik onayı anlamına gelmez.
Yerel kaynak→RPC doğrulaması 1.056 pencerenin tamamında geçti; 41.996 diğer hover parçası ve yedi önceki kontrol chapter’ı korundu. Ham İngilizce metnin okuyucu üzerinden yeniden kurulması da doğrulandı. Türkçe core, cümle/token sıraları, eski release’ler ve ham İngilizce kitaplar değiştirilmedi; reset veya tüm-korpus hash kontrolü yapılmadı.
node --experimental-strip-types scripts/translations/verify-alignment-windows-local.mjs \ --curation data/curated/english/en-alignment-12-window-corrections.json \ --old-descriptor data/releases/en-alignment-11.json \ --new-descriptor data/releases/en-alignment-12.json \ --report .cache/english-source-first/alignment-windows-12-local.jsonKabul edilmiş kararlar ve sayım, data/curated/english/ altındaki
en-alignment-12-window-corrections.json ve eşlik eden .report.json
dosyasındadır. Bu curation, önceki paket, aynı core ve target3 paketiyle
build-alignment-window-release.mjs üzerinden yeniden üretilebilir.
Yerel kurulum ve kaynak→RPC doğrulaması tamamlanmıştır. Web ve Expo-web,
Altıncı Şua’daki kritik karşılığı doğru Türkçe cümleyle gösterir; masaüstü ve
393 px görünümde yatay taşma yoktur. Bu yeni bir fiziksel cihaz testi değildir.
Paketin 16 nesnesi R2’ye yüklenip indirilerek doğrulanmıştır. Canlı API yayını
ayrı bir geçiştir; yerel uygulamalar yerel Supabase’e bağlı kalır.
Uzun Bölüm Sorgusu
Bölüm başlığı “Uzun Bölüm Sorgusu”Yayın üretimi sırasında uzun bir bölümün HTTP hizalama isteği 2,5 saniyelik
sınıra takıldı. 20260906213000_translation_alignment_query_plan migration’ı,
hedef üyeliklerini zaten doğrulanmış source_spans grubundan alır; aynı accepted
grup kümesini tekrar birleştirmez. Yeni indeks, veri kopyası veya timeout artışı yoktur.
Yerel ölçümde uzun istek HTTP 500 / 2,52 saniyeden HTTP 200 / 0,55 saniyeye;
çok parçalı örnek 0,30 saniyeden 0,066 saniyeye indi. Uzun, kısa, null,
çok parçalı ve değişmeyen beş örneğin önceki/yeni JSON’ları birebir aynıdır.
Sahiplik, yetkiler, sıralama ve 2500ms sınırı korunmuştur. Bu ölçümler
yerel makineye aittir; production gecikmesi garantisi değildir.
Canlı Okuyucu Yayını
Bölüm başlığı “Canlı Okuyucu Yayını”7 Eylül 2026 yayını, en-target-render-3 ile en-alignment-12yi birlikte
kullanır. Okuma paketi 1.495 nesne / 121.611.919 byte, aynı bağlama bağlı
haşiye paketi 299 nesne / 1.509.771 byte içerir. Okuma paketinin tamamı
yerel kaynaktan --concurrency 2 ile yaklaşık 65 saniyede üretildi.
| Bağlantı | Kimlik |
|---|---|
| Content context | 973655af-6695-5de4-ba44-776100dded0c |
| Content publication | 5afdedb82d4ce32be51bc00f1ddeb6b8cc09e73c4ed89fd881d993de2823c943 |
| Notes publication | 0f36450f0888cb50b5e04d71b4d54abc03c637de63f98f72f865d72111c7e8d9 |
Paketler R2’de doğrulandıktan sonra test API’si, canlı API ve web yayımlandı.
Canlı API smoke testi katalog, adresler, başlıklar, Latin/Osmanlıca metin,
İngilizce mevcut/yok durumları ve HTTP cache davranışını doğruladı.
Altıncı Şua, Birinci Söz ve Dokuzuncu Şua’nın ham İngilizcesi ve bütün hover
bağlantıları yerel yayın paketiyle birebir karşılaştırıldı; boş ve dolu haşiye
yanıtları da kontrol edildi. Canlı web’de Altıncı Şua’nın not equal to Muhammad
parçası yalnız kendi Türkçe cümlesini gösterir, sonraki aile cümlesini içermez.
Birinci Söz’de hard rock and earth, Dokuzuncu Şua’da from the earth, behold
sayfa kırığı olmadan görünür; her ikisinde kaynak popup’ı açılır. İkinci örneğin
canonical kaynak cümlesi Arapça alıntıdır; popup bunu Türkçe çeviri uydurmadan
aslıyla gösterir.
Bu yayın testi anlam incelemesinin yerine geçmez; incelenmiş paketin gerçekten aynı haliyle sunulduğunu kanıtlar. Canlı API okuma sırasında uzak DB sorgusu çalıştırmaz; sabit R2 yayınını okur. Test API’si ve web’in mevcut erişim koruması değiştirilmedi. Yükleme için açılan geçici R2 anahtarı iş bittikten sonra iptal edildi; anahtar dosyası repoya eklenmedi.
Uzak Supabase’de target-render-3, notes-2, ilgili RPC migration’ları ve alignment-12 kurulumu tamamlandı. Önceki alignment sürümleri insert-only kurulum zinciriyle korunmuştur. Installer’ın sürüm, bağımlılık, üyelik ve aktif yayın doğrulaması geçti. Altıncı Şua, Birinci Söz, Dokuzuncu Şua, 3.085 unit içeren uzun bölüm ve 291 unit içeren çok parçalı bölüm hem SQL hem uzak PostgREST üzerinden yerel RPC ile birebir eşleşti; beş HTTP isteği de 200 döndü.
Kurulum sonrası pg_database_size 7.556.418.707 byte, alignment tablolarının
indeksler dahil toplamı 1.634.066.432 byte, saklanan alignment sürümü sayısı 12’dir.
Çalışma öncesi gerçek DB boyutu 6.228.470.931 byte idi; artış yaklaşık 1,33 GB’dir.
Bunlar veritabanı boyutlarıdır, Supabase’in tahsis ettiği disk kapasitesi
veya WAL/loglar dahil disk kullanım yüzdesi değildir. Reset, disk büyütme,
eski sürüm silme veya Türkçe core üzerinde veri değişikliği yapılmadı.