Veri release'leri
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
- 1.0.0
- Şema
- 1
- Veri
- tr-latn-1
tr-latn-1, ilk immutable Türkçe Latin core corpus release’idir:
| Kayıt | Sayı |
|---|---|
| Kitap | 15 |
| Chapter | 298 |
| Paragraf | 47.496 |
| Cümle | 119.149 |
| Token form | 119.089 |
| Token occurrence | 1.696.548 |
Full archive Git’e commit edilmez. Public object storage adresi ve exact SHA-256
değeri repository kökündeki data/releases/tr-latn-1.json manifestinde
yayımlanır.
Canonical release zarfı https://data.munderecat.com/releases/tr-latn-1/
altında yayımlanır. Archive, public provenance sidecar’ları, data notice, lisans,
manifest ve SHA256SUMS aynı immutable release prefix’inin üyeleridir. Prefix
Cloudflare R2 üzerinde süresiz overwrite/delete kilidiyle korunur; r2.dev
erişimi açık değildir.
Archive doğrudan indirilebilir:
curl -fLO https://data.munderecat.com/releases/tr-latn-1/corpus-release-v1.tar.zstprintf '%s %s\n' \ 208bd4be6eece4f2322d954fe33d408946639773dc19f2717ae0dc410c3b337c \ corpus-release-v1.tar.zst | shasum -a 256 -c -Osmanlıca, lexical, heading, haşiye, tekrar ve alignment katmanları core archive’a
gömülmez. Her biri core root ve stable koordinatlara bağlı ayrı immutable package
olarak sürümlenir. Böylece annotation düzeltmesi tr-latn-1 kimliğini değiştirmez.
İlk annotation zinciri şu sıradadır:
tr-latn-1: exact Latin core ve stable occurrence koordinatları.tr-ottoman-1: core koordinatlarına bağlı Osmanlıca reader output ve unit’leri.tr-lexical-1: Osmanlıca release’ine de bağlı terkip, kök, lügat ve hover projection’ları.
| Release | Referans paket | Compiled taşıma | Compiled satır |
|---|---|---|---|
tr-ottoman-1 |
137,6 MB | 221,7 MB | 2.399.720 |
tr-lexical-1 |
748,9 MB | 556,9 MB | 7.260.584 |
Makinece okunabilir zarflar data/releases/tr-ottoman-1.json ve
data/releases/tr-lexical-1.json dosyalarındadır. Bu zarflar paket kökünü,
dosya checksum’larını, exact üst release bağımlılıklarını ve beklenen yayın
envanterini taşır. Referans JSONL package’ları maintainer_archive sınıfındadır;
public ve normal kurulum yüzeyi content-addressed compiled artifact’lerdir.
Exact İngilizce target render
Bölüm başlığı “Exact İngilizce target render”Güncel kurulum varsayılanı en-target-render-3dür: 298 bölümün 189’u okunabilir.
Installer 1 -> 2 -> 3 zincirini takip eder. Aşağıdaki en-target-render-1
tablosu ilk yayının tarihsel envanteridir. Scope düzeltmeleri ve kalan kapsam
için İngilizce okuma kalitesi belgesine bakın.
en-target-render-1, exact İngilizce kaynak kitaplarını canonical Türkçe
chapter kimliklerine bağlayan bağımsız reader release’idir:
| Kayıt | Sayı |
|---|---|
| Kaynak kitap | 10 |
| Chapter envanteri | 298 |
| Exact İngilizce metin | 179 |
| Henüz çevrilmemiş | 12 |
| İngilizce kaynak kapsamında değil | 107 |
Public paket https://data.munderecat.com/releases/en-target-render-1/
altındadır; makinece okunabilir release zarfı
data/releases/en-target-render-1.json dosyasında tutulur. Taşıma paketi iç
filesystem yolları veya legacy çalışma kayıtları taşımaz. Exact metin
gösterilmeden önce UTF-8 byte sayısı, Unicode scalar sayısı ve SHA-256 witness’ı
doğrulanır.
Yerel kurulum:
make db-install-targetHosted kurulum:
make db-remote-install-targetInstaller aynı release kuruluysa veri göndermeden envanteri doğrulayıp çıkar. Target render chapter düzeyinde exact okuma sağlar; cümle düzeyindeki Türkçe-İngilizce ilişki ayrı alignment release’inde yayımlanır.
Türkçe-İngilizce sentence alignment
Bölüm başlığı “Türkçe-İngilizce sentence alignment”Güncel kurulum varsayılanı en-alignment-10dur. Aşağıdaki sayımlar ve adresler
korunan en-alignment-2 tarihsel yayınına aittir; güncel successor
data/releases/en-alignment-10.json dosyasında tanımlanır. Kaynak öncelikli
cümle sınırları, başlık/alıntı ayrımı ve açık karşılık yoklukları
düzeltme notunda belgelenir. Kurulum varsayılanının
okuyucunun seçtiği alignment kimliğiyle eşleşmesi ayrıca test edilir.
en-alignment-2, 52.946 Türkçe source
unit ile 49.770 İngilizce target unit’i 33.937 kabul edilmiş many-to-many
group üzerinden bağlar. 188 aday ve bunlara bağlı kapsam açıkça unresolved
kalır. Exact İngilizce kitap byte’ları pakette çoğaltılmaz; target unit’ler
kurulu en-target-render-1 kaynağındaki byte/scalar aralıklarına ve SHA-256
witness’larına bağlıdır.
Public package ve makinece okunur zarf:
https://data.munderecat.com/releases/en-alignment-2/package-6dd57f826860596e9199cac287e71eaed6ec7bd70d755d182bc8291d2af98756/data/releases/en-alignment-2.jsonSuccessor release UUID’si ce9c424b-13b6-5ea5-b36a-ed80f49fd3fa, DB
publication root’u
b70e5c42642fbb90eaebed1622c3beae51c930d59b842274df603f61754ffdd9
ve bu yayının alignment deployment’ı
c79ff225-559d-5d27-b06c-de359137085b’dir. en-alignment-1 ve deployment’ı
silinmez; explicit deployment ID ile okunabilir. Temiz veritabanında installer
seçilen release’in predecessor descriptor zincirini bulur, eksik sürümleri
sırayla kurar ve kanal pointer’ını seçilen sürüme geçirir. Kurulu sistemde
doğrulanmış predecessor yeniden yüklenmez.
Yerel ve hosted kurulum:
make db-install-alignmentmake db-remote-install-alignmentHeading ve haşiye release’leri
Bölüm başlığı “Heading ve haşiye release’leri”tr-headings-1, 290 chapter içindeki 6.636 kabul edilmiş heading’i; tr-notes-1
ise 353 haşiye ilişkisini ve bunların 1.442 stable span’ini ayrı immutable
paketler olarak yayımlar. İki release de aynı tr-latn-1 core root’una ve
tr-2026-v1/shared-anchors-v1 anchor namespace’ine bağlıdır; core metni
kopyalamaz veya değiştirmez.
Public paketler ve descriptor’lar:
https://data.munderecat.com/releases/tr-headings-1/package-987aeb936edf633cb6be1ce1e25a7e71ef97fa66036189088dc8608c2384a681/https://data.munderecat.com/releases/tr-notes-1/package-b7bbe5518d79ba9eb85f8dedb1b48ad52c11825991ea7619823cfc46bbbc2811/data/releases/tr-headings-1.jsondata/releases/tr-notes-1.jsonYerel ve hosted kurulum:
make db-install-structuremake db-remote-install-structureKimlik, anchor lifecycle, ilişkisel tablolar ve API aktivasyon ayrıntıları Heading ve haşiye release’leri belgesindedir.
Canonical passage reader
Bölüm başlığı “Canonical passage reader”tr-passage-1, kabul edilmiş repetition, exact-display ve passage lineage
authority’sinin compact public projection’ıdır. 18 zstd stream içinde
256.934 satır taşır; transport boyutu 9.657.549 byte’dır. Stable repetition,
exact-display ve lineage kimlikleri değişmez, core metin kopyalanmaz.
Public package ve makinece okunur zarf:
https://data.munderecat.com/releases/tr-passage-1/package-fe2d222cc4220f8484dbff81f803f68100676df8d03414f816463d3c251f7414/data/releases/tr-passage-1.jsonYerel ve hosted kurulum:
make db-install-passagemake db-remote-install-passageModel, source/reader authority ayrımı ve doğrulama sonuçları Canonical passage release belgesindedir.
make db-rebuild-data sırasıyla core, target-render, annotation, alignment,
heading/haşiye ve canonical-passage release’lerini kurar. Veri modeli, RPC ve atıf etkisi
Çok dilli alignment belgesinde açıklanır.
Yeni dil ve successor paket protokolü
Yeni dil release akışında adım adım verilir.
İndirilen artifact yalnız manifestteki checksum doğrulandıktan sonra import edilmelidir. Raw SQLite veya database dump release formatı değildir.
Yerel veritabanına kurulum
Bölüm başlığı “Yerel veritabanına kurulum”Docker ve zstd 1.5+ hazırken public artifact’i doğrudan yerel Supabase’e
kurabilirsiniz:
make db-install-coreInstaller archive boyutunu ve SHA-256 değerini, package manifestini, core stream checksum’larını ve satır sayılarını doğrular. Kayıtları geçici tablolara stream eder; migration içindeki publisher fonksiyonunu tek transaction içinde çalıştırır. Her chapter’ın exact reconstruction sonucu doğrulanmadan transaction commit edilmez. Hata halinde kısmi core yayınlanmaz.
Temiz migration zinciri üzerinde yeniden üretilebilirlik testi için:
make db-rebuild-coreBu komut yalnız munderecat-local veritabanını sıfırlar. Archive .cache/
altında tekrar kullanılabilir. Geliştirici daha önce doğrulanmış yerel archive’ı
özellikle seçmek isterse aynı importer’a açıkça yol verebilir:
MUNDERECAT_CORE_ARCHIVE=/absolute/path/corpus-release-v1.tar.zst \ make db-install-coreCore’dan sonra public annotation paketlerini kurmak için:
make db-install-annotationsInstaller önce Osmanlıca, sonra lexical release’i kurar. Katmanlar ayrı
incelenirken make db-install-ottoman ve make db-install-lexical komutları
kullanılabilir. Varsayılan yol public, content-addressed compiled relational
artifact’leri indirir. Her dosyanın taşıma ve açılmış stream SHA-256 değeri,
kolon sözleşmesi, exact release bağımlılıkları ve beklenen DB envanteri
doğrulanır. İndirme .cache/munderecat/releases/ altında kalır.
Compiled release şu güvenlik sınırında kurulur:
- Tüm import tek transaction’dır; hata kısmi yayın bırakmaz.
- PK, FK, unique, CHECK ve kayıt üreten identity/endpoint trigger’ları çalışır.
- FORCE RLS yalnız transaction içinde tablo sahibi için gevşetilir ve committen önce özgün haline getirilir.
- Referans DB’de zaten kabul edilmiş satır-başı semantic validation ve closure trigger’ları compiled bulk yükte seçili olarak tekrar çalıştırılmaz.
- Bu bypass yalnız checksum ile kilitli compiled artifact formatına aittir; normal SQL yazma yollarını etkilemez.
- Committen sonra sabit release ID’leri, package root’ları, kayıt sayıları ve hover envanteri yeniden okunur.
Temiz local kabul ölçümü (2026-08-27):
| Aşama | Süre |
|---|---|
| Migration reset | 16 sn |
tr-latn-1 core |
2 dk 8 sn |
tr-ottoman-1 compiled |
2 dk 12 sn |
tr-lexical-1 compiled |
5 dk 30 sn |
| Toplam | yaklaşık 10 dk |
Kurulu veritabanında make db-install-annotations idempotent no-op’tur; kabul
ölçümünde 0,78 saniye sürmüştür. Süreler donanıma göre değişir.
Tam Osmanlıca chapter reconstruction witness kontrolü normal geliştirici kurulumundan ayrıdır:
make db-verify-annotationsBu komut release kabulü veya migration değişikliği içindir. UI ve dokümantasyon çalışmalarında çalıştırılmaz.
Hosted Supabase’e yayın
Bölüm başlığı “Hosted Supabase’e yayın”Hosted yayın normal contributor akışı değildir. Maintainer önce boş veya bu
release zinciriyle uyumlu Supabase projesini açar. Veritabanı bağlantısı için
Supabase Dashboard/Management API’nin proje için döndürdüğü güncel pooler URI’si
kullanılmalıdır; port varsayılmamalıdır. Session mode kullanılabiliyorsa tercih
edilir, transaction mode bağlantısı da atomik installer tarafından desteklenir.
URI komut satırına, .env dosyasına veya Git’e yazılmaz:
install -d -m 700 "$HOME/.config/munderecat"umask 077printf '%s\n' 'postgresql://USER:PASSWORD@POOLER:PORT/postgres?sslmode=require' \ > "$HOME/.config/munderecat/remote-database-url"export MUNDERECAT_DATABASE_URL_FILE="$HOME/.config/munderecat/remote-database-url"Migration publisher hosted Supabase’in yönetilen rol sınırı nedeniyle Management
API kullanır. Personal access token da aynı biçimde 0600 dosyada tutulur:
umask 077printf '%s\n' 'SUPABASE_PERSONAL_ACCESS_TOKEN' \ > "$HOME/.config/munderecat/supabase-access-token"export MUNDERECAT_SUPABASE_ACCESS_TOKEN_FILE="$HOME/.config/munderecat/supabase-access-token"export MUNDERECAT_SUPABASE_PROJECT_REF='PROJECT_REF'make db-remote-migratemake db-remote-configdb-remote-config, Data API’de yalnız api_v1 schema’sını açar. public ve
control schema’ları PostgREST yüzeyine eklenmez. Komut Supabase CLI oturumu ister;
maintainer bir kez supabase login ile kimlik doğrular.
Ardından veri release’leri seçilen pooler bağlantısı üzerinden kurulur:
make db-remote-install-datamake db-remote-verify-annotationsdb-remote-migrate yalnız bekleyen migrationları atomik uygular ve Supabase
migration ledger’ına kaydeder. Veri installer’ları da idempotenttir: aynı release
kuruluysa streamleri yeniden göndermez, package root ve yayın envanterini okuyup
çıkar. Hosted postgres rolündeki kısa statement timeout global olarak
değiştirilmez; yalnız kontrollü importer transaction’ında kapatılır.
Tam annotation reconstruction her kurulum veya deploy’da çalıştırılmaz. Yeni bir release’in ilk staging/production kurulumu, restore veya taşıma sonrasında bir kez çalıştırılır. Günlük kabul için hızlı contract kontrolü yeterlidir:
make db-remote-install-annotationsKüçük hosted compute üzerinde ilk büyük yükleme yerel Docker’dan belirgin biçimde yavaştır: artifact indirme yerel cache sayesinde tekrarlanmaz, fakat yüzlerce MB COPY trafiği ve milyonlarca FK/invariant kontrolü sunucuda tamamlanır. Bu maliyet release başına tek seferliktir; normal uygulama başlangıcının parçası değildir.
İlk hosted staging kabulünde gözlenen ölçek ve süreler:
- Veritabanı yaklaşık 5,3 GiB’dır (5,7 GB decimal); core, Osmanlıca ve lexical yayınların toplamıdır.
- İlk annotation yayını küçük hosted compute üzerinde yaklaşık iki saat sürmüştür.
- Kurulu release için idempotent contract kontrolü yaklaşık 11 saniye sürmüştür.
- 298 chapter’ı tek set tabanlı geçişte doğrulayan tam Osmanlıca witness yaklaşık 11 dakika sürmüştür. Eski chapter başına çağrı biçimi kullanılmaz.
- Aynı API deployment’ında core, Osmanlıca ve hover RPC’leri gerçek PostgREST
üzerinden
200 / availablesonucu vermiştir.
Bu değerler kapasite ve ağ koşuluna göre değişir. Hover projection için
sentence-first ve covering erişim indeksleri zorunludur. API v1.10 compact hover
response’u parent Latin/Osmanlıca metnini tekrar taşımaz; frontend bu metni aynı
deployment’ın Ottoman unit’inden unit_id ile alır. İlk hosted kabul ölçümünde:
| Chapter | Binding / child | Response | Süre |
|---|---|---|---|
| Tipik kabul chapter’ı | 1.272 / 660 | 969.351 byte | 1,76 sn |
| Büyük chapter | 5.500 / 3.051 | 4.420.762 byte | 7,27 sn |
Önceki projection aynı chapter’larda yaklaşık 10 ve 17 saniye sürüyordu. Kayıt sayıları değişmemiş, eski pinned v1.3 deployment’ın response şekli korunmuştur. Bu sonuçla chapter-level payload cache zorunlu sonraki adım değildir; gerçek trafik ölçümü yeniden ihtiyaç göstermedikçe ek cache authority’si kurulmaz.
2026-09-01 temiz hosted kabulünde 84 migration ve bütün public reader release
zinciri sıfırdan kuruldu. pg_database_size sonucu 6.226.201.747 byte oldu;
legacy repetition/lineage authority tabloları boş, replication slot sayısı
sıfır kaldı. Tam installer ikinci çalışmada bütün katmanları
already_installed/already_active olarak tanıdı ve hiçbir stream göndermedi.
Supabase panelindeki provisioned veya physical disk yüzdesi bu mantıksal boyutla
aynı ölçüm değildir; WAL ve provider reclaim gecikmesi nedeniyle daha yüksek
görünebilir. Reset kararı yalnız panel yüzdesine göre verilmemelidir.
Maintainer, daha önce kabul edilmiş yerel compiled package dizinlerini açıkça seçebilir:
MUNDERECAT_OTTOMAN_COMPILED_PACKAGE=/absolute/path/tr-ottoman-1 \MUNDERECAT_LEXICAL_COMPILED_PACKAGE=/absolute/path/tr-lexical-1 \ make db-install-annotationsReferans publication package’ları ise yalnız yeni compiled release üretimi ve reproducibility kabulü için kullanılır:
MUNDERECAT_ANNOTATION_MODE=reference \MUNDERECAT_OTTOMAN_PACKAGE=/absolute/path/ottoman-reader-publication-v1 \MUNDERECAT_LEXICAL_PACKAGE=/absolute/path/lexical-publication-v1 \ make db-install-annotationsReference importer gzip streamlerini tek geçişte checksum ve satır sayısıyla
doğrular, geçici tablolara COPY eder ve migration içindeki deterministik
publisher’ı transaction içinde çalıştırır. Bu yol temiz veritabanında
reproducibility ve yeni release kabulü içindir; normal local veya production
dağıtım yolu değildir. İlk lexical referans yayını yaklaşık 130 dakika sürerken
compiled kurulum 5 dakika 30 saniye sürmüştür. Reference publisher compiled
artifact’in doğruluk oracle’ı olarak korunur.