Files
kolaytercih/docs/ekip-raporlari/2026-10-07/yazilimci-ui-duzeltmeleri.md
bilalgursen da0e9dff7a docs(ekip): 7–10 Ekim raporları, eval sonuçları, seslendirme betiği
- docs/ekip-raporlari/2026-10-07, 2026-10-09, 2026-10-10 raporları ve ekran görüntüleri
  (ses/ altındaki mp3 dosyaları depoya alınmadı, 38 MB)
- BACKLOG #38: rehber yazılarına "Dinle" düğmesi adayı
- scripts/seslendir.py (Türkçe TTS) ve .gitignore'a .venv-tts/
- scripts/eval/sonuc: 8–10 Ekim revizyon eval çıktıları

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-11 00:33:39 +03:00

55 lines
5.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Yazılımcı raporu — UI düzeltmeleri (tasarımcı B1/B3/B4/B5/B6 + QA B3)
Dal `v2`, ana checkout, başlangıç HEAD `129c839` → bitiş `f955a76`. Push yok. Tarayıcı açılmadı; görsel etkiler **koddan çıkarım**.
## Özet
1. **B1 — önbellekli açılışta sahne atlanıyor.** `AcilisSahnesi` artık `hazir` verilmişse sahneyi yalnız `false → true` geçişinde oynatıyor; `hazir={true}` ile monte olursa (çekmece yeniden açıldı, veri önbellekte) logo kabı gizlenir, içerik 0,25 s solmayla gelir. `hazir` verilmeyen akademik göstergeler çekmecesi (kartlı mod) eskisi gibi her açılışta oynar.
2. **B3 — kartsız sahne ≈2 s → ≈1,2 s.** Kare ve blok aralığı 0,05 s, netleşme 0,35 s, logo belir/dur/sön 0,28/0,16/0,3 s. Hesap: son kare 0,2 s'de başlar, sönme 0,94 s'de biter, ilk blok 0,95 s'de net, 8 blokla sonuncusu 1,30 s'de. DESIGN.md §4.19 gerçek değerlerle güncellendi. Kartlı mod sabitleri (`ICERIK_BASI`, `SLOT_ADIMI`, 0,5 s netleşme) dokunulmadı.
3. **B4 — gövde üst kenar maskesi.** `AltSayfaGovde`'ye `[mask-image:linear-gradient(to_bottom,transparent,black_1.25rem)]`; tek kaynak, tüm çekmeceler. Tutamaç şeridine `bg-card` vermedim: şerit `rounded-t-3xl` kabın içinde kırpılmadan durduğu için köşeleri perdenin üstüne taşardı (koddan çıkarım); kap zaten `bg-card`.
4. **B5, B6 — trivial.** İstihdam paragrafı `toLocaleUpperCase("tr-TR")` ile büyük harfle başlıyor (hangi parçanın başa geldiği veriye bağlı, o yüzden sabit metin değil). `QuestionnaireProgress` render'ında spread'den sonra `aria-label="Soru ilerlemesi"`.
5. **QA B3 — iç içe bağlantı.** `baglanti-denetimi.ts`'e `icIceBaglantiyiDuzlestir` (`[[x](y)](y)` → `[x](y)`, her adres, derin sarmada yinelenir) rehber eşlemesinden önce; tampon `)`'den sonra `](` gelip gelmediğine bakıyor (bir karakterlik ek bekleme). Farklı adresli `[[a](/x)](/y)` bilerek dokunulmuyor. Eval 56/56.
## Commit'ler
| Hash | Mesaj | Dosyalar |
|---|---|---|
| `fce7ab8` | fix(ui): alt sayfa gövdesi üst kenarda maskeli | `src/components/ui/alt-sayfa.tsx` |
| `2ec9ecd` | fix(ui): program ayrıntı çekmecesi — önbellekli açılışta sahne atlanır, sahne ≈1,2 s, istihdam cümlesi büyük harfle | `src/components/ui/acilis-sahnesi.tsx`, `src/features/katalog/components/program-ayrinti.tsx`, `docs/tasarim/DESIGN.md` |
| `00e0a8a` | fix(sohbet): soru formu ilerleme göstergesi Türkçe aria-label | `src/features/rapor/components/sohbet-anketi.tsx` |
| `f955a76` | fix(sohbet): iç içe markdown bağlantısı düzleştiriliyor | `src/lib/ai/baglanti-denetimi.ts`, `scripts/eval/baglanti-denetim.ts` |
Sürüm artırılmadı: `v2` dalındaki önceki `fix` commit'leri (`129c839`, `91e2859`) de artırmıyor; dal `main`'e girince 2.0.0 olacak (AGENTS.md sürümleme).
## Kabul kriterleri
| Kriter | Sonuç | Nasıl |
|---|---|---|
| `pnpm tsx --conditions=react-server scripts/eval/baglanti-denetim.ts` çıkış 0 | ✔ | Çalıştırıldı: 56/56 (eski 44 + 2 senaryo × 6) |
| `pnpm exec next typegen && pnpm exec tsc --noEmit` | ✔ | Çalıştırıldı, çıkış 0 |
| `pnpm lint` (tasarım denetimi 0 hata) | ✔ | Çalıştırıldı, çıkış 0; 0 hata, 12 uyarı (hepsi önceden var: `secimlerim-paneli.tsx`, `meraklisina-demo.tsx`) |
| B1: önbellekli açılışta boş beyaz gövde yok | ✔ koddan çıkarım | Önbellekli yol = hareketi-azalt yolu: `kap` 0→1 opaklık 0,25 s, logo `display:none`; iskelet `hazir=false`yken zaten görünür |
| B1: sahne yalnız false→true'da | ✔ koddan çıkarım | `onbellekli = useRef(hazir === true)`; effect bağımlılığı `oynat` |
| B3: ≈1,2 s | ✔ hesapla | Sabitlerden; 7 blokta 1,25 s, 8 blokta 1,30 s |
| B4: içerik tutamaç/çarpının altından maskesiz geçmiyor | ✔ koddan çıkarım | Maske 20 px + 24 px şerit = sayfa üstünden 44 px; çarpı 12–48 px, zemini `bg-popover` opak |
| B5, B6 | ✔ koddan | `grep` ile tek yer |
| QA B3 | ✔ | Eval senaryosu QA'nın ham çıktısıyla (`[[/paket](/paket)](/paket)`) |
## Sapmalar
- Tutamaç şeridine `bg-card` zemin verilmedi (yukarıda gerekçe); yalnız maske.
- Süre hedefi "≈1,2 s" sahneyi ilk blok için tutuyor, son blok 1,3 s. Logo duruşunu daha kısaltmadım; belgeye gerçek sayıları yazdım.
- `icIceBaglantiyiDuzlestir` düzeltmeyi `duzeltmeler` listesine yazmıyor (tip `slug`/`sonuc` rehber odaklı); loga düşmesi istenirse ayrı iş.
## Merge sonrası doğrulanması gerekenler (tarayıcıda, Bilal ya da tasarımcı)
1. `/bolum/tip` → Başkent satırı → ayrıntı, kapat, **tekrar aç**: ikinci açılışta kare yok, içerik hemen solarak geliyor mu; ilk açılışta sahne ≈1,2 s'de bitiyor mu (375 ve 1280).
2. Çekmece gövdesini kaydır: üst satır tutamaç altında sönüyor mu; en üstteyken başlığın üst kenarı soluk görünüyor mu (maske 20 px, başlık `pt-3`'ten sonra — görünmemeli). Liste çekmecesinde (`py-2`) ilk satır.
3. Akademik göstergeler çekmecesi değişmemiş olmalı (kartlı mod).
4. Safari'de `mask-image` (prefixsiz) — iOS 15.4+ destekliyor; eski cihazda maske yoksa yalnız eski davranış kalır, kırılma yok.
## Bilal'den istenen
1. Yukarıdaki 1–2'yi gözle kontrol (≈2 dk).
2. Yok.