{% extends "sinav/reports/base.html" %} {% load l10n %} {% comment %}R8 — Dağıtım Doğrulama Raporu. Tek yaprak: ihlal=0 beyanı (veya adsız ihlal listesi — doğrulayıcı kişisel veri üretmez), dağıtım parametreleri (seed dâhil — "aynı seed → aynı dağıtım" sözleşmesinin yazılı kanıtı), kısıt metrikleri ve salon doluluğu. İdare imza bloğu: oturum onayının dayanağıdır. Bu evrak salona GİTMEZ; idarede dosyalanır — o yüzden gözetmen dili yoktur, sayısal denetim dili vardır. Dil yine de İDARECİ dilidir (18.09.2026): belgeyi okul müdürü imzalar; motorun iç terimleri ("1. halka", "Σ 1/d²", "satranç modu", "sert kısıt") sade karşılıklarıyla yazılır. Dağıtım numarası (seed) sözleşmesi değişmedi: sayı basılır, etiketi Türkçedir.{% endcomment %} {% block extra_style %} {% endblock %} {% block content %}
{% with scope_note="İdare nüshası · oturum onayının dayanağı" %} {% include "sinav/reports/_head.html" %} {% endwith %} {% if report.is_valid %}
KURAL İHLALİ YOKTUR
Aynı sınava giren iki öğrenci hiçbir sırada yan yana oturmamaktadır. Dağıtım bağımsız doğrulamadan geçmiştir; oturum onaya uygundur.
{% else %}
DİKKAT: {{ report.violation_count }} KURAL İHLALİ TESPİT EDİLDİ
İhlaller giderilmeden oturum onaylanmamalıdır.
{% endif %}
A. DAĞITIM BİLGİLERİ {% if report.params.shuffled %}Aynı dağıtım numarası aynı yerleşimi yeniden üretir.{% endif %}
{% if not report.params.shuffled %} {% else %} {% comment %}`unlocalize`: numara kullanıcı tarafından yeniden GİRİLİR; binlik ayraç açılırsa "987.654" basılır ve aynı dağıtım üretilemez.{% endcomment %} {% endif %} {% comment %}Kız/erkek ayrışması: YALNIZ kuralın adı basılır. Öğrenciye özgü hiçbir işaret, sayım ya da cinsiyet bilgisi evraka girmez (tasarım kararı). Django yorumu TEK satırlıktır; bu blok o yüzden {% comment %} ile yazıldı.{% endcomment %}
Dağıtım düzeni{{ report.params.layout_mode_label }}
Yerleşim kuralı Her şube kendi dersliğinde, okul numarası sırasıyla oturur (karıştırma yapılmaz).
Dağıtım numarası (seed){{ report.params.seed|unlocalize }}
Katı dağıtım (yan, ön ve arka komşuluk da yasak) {{ report.params.strict|yesno:"Açık,Kapalı" }}
Dönüşümlü oturma (iki sınavlı salonda satranç düzeni) {{ report.params.checkerboard|yesno:"Uygulandı,Uygulanmadı" }}
Yerleşen öğrenci / yeri kuralla sabitlenen {{ report.params.placed }} / {{ report.params.pinned }}
Kız/erkek ayrışması {{ report.params.separation_label }}
B. YAKINLIK ÖLÇÜLERİ Kural ihlali değildir; dağıtımın kalitesini gösterir.
{% comment %}GROUPS-tipi açık uç — aynı şubeden farklı-grup komşuluğu (kopya riski düşük: farklı kitapçık).{% endcomment %} {% for metric in report.min_distances %} {% endfor %}
Komşu sıralara düşen aynı sınav çifti (yan, ön, arka, çapraz) {{ report.first_ring_pairs }}
Komşu sıralara düşen aynı şube çifti (sınavları farklı) {{ report.cross_section_pairs }}
Toplam yakınlık puanı (düşük olması iyidir) {{ report.proximity_score }}
Aynı sınava giren en yakın iki öğrenci — {{ metric.group_label }} {{ metric.distance }} sıra arayla
{% if report.occupancy %}
C. SALON DOLULUĞU
{% for row in report.occupancy %} {% comment %} `unlocalize` CSS tuzağı için zorunlu (F25/T244 kuralı); tam sayıya yuvarlamak TR metinde "95.0" gibi nokta ayraçlı okuma bırakmaz. NOT: Django'nun `{# #}` yorumu TEK satırlıktır — çok satıra yayılınca metin olarak basılır (18.09.2026'da örnek PDF'te görüldü). {% endcomment %} {% endfor %}
Salon Kapasite Yerleşen Doluluk
{{ row.room_name }} {{ row.capacity }} {{ row.placed }}%{{ row.percent|unlocalize|floatformat:0 }}
{% endif %} {% if report.warnings %}
D. DAĞITIM UYARILARI Kural ihlali değildir; idarenin değerlendirmesine sunulur.
{% endif %} {% comment %}"Sınav Komisyonu" mevzuatta tanımlı bir organ değildir; okul geneli sınavın iş ve işlemleri okul müdürlüğünündür (Yönerge md. 5) — belgeyi düzenleyen müdür yardımcısı, onaylayan okul müdürüdür.{% endcomment %}
…… / …… / 20………… / …… / 20……
Düzenleyen — Müdür Yardımcısı
Ad Soyad / İmza
Okul Müdürü
Ad Soyad / İmza
{% endblock %}