Skip to content

fix(welcome): inline tema script'ini harici dosyaya al (CI düzeltmesi)#45

Merged
Ohualtex merged 1 commit into
mainfrom
fix/tema-init-script
Jun 8, 2026
Merged

fix(welcome): inline tema script'ini harici dosyaya al (CI düzeltmesi)#45
Ohualtex merged 1 commit into
mainfrom
fix/tema-init-script

Conversation

@Ohualtex

@Ohualtex Ohualtex commented Jun 8, 2026

Copy link
Copy Markdown
Owner

Sorun

PR #44 (welcome) merge'ünden sonra SFDAP CI Pipeline kırmızı oldu:
tests/test_frontend_a11y.py::TestAssetSplit::test_no_inline_script_block fail.

Welcome'ın <head>'ine eklenen inline anti-FOUC tema script'i, projenin
"inline <script> yok" (asset-split / CSP) kuralını ihlal ediyordu. Coverage iyiydi
(%94.9); fail eden tek test buydu (A11y + Security job'ları geçti).

Çözüm

Testi gevşetmek yerine standarda uyduk: tema script'i frontend/src/theme-init.js'e taşındı.

  • harici → asset-split/CSP kuralına uyar
  • render-blocking KLASİK script (type=module değil) → boyamadan önce çalışır → FOUC önleme korundu
  • index.html: inline blok → <script src="src/theme-init.js"></script>

Doğrulama

  • tests/test_frontend_a11y.py34/34 passed (kırılan test dahil, regresyon yok)
  • Runtime: gündüz/gece temaları doğru uygulanıyor, flash yok (gündüzde data-theme="light" boyamadan önce yazılıyor)

…I düzeltmesi)

- welcome'ın head'deki inline anti-FOUC tema script'i TestAssetSplit::
  test_no_inline_script_block'u kırıyordu (proje kuralı: inline <script> yok — asset-split/CSP)
- script → frontend/src/theme-init.js (harici + render-blocking KLASİK script);
  index.html'de inline blok → <script src="src/theme-init.js">
- type=module DEĞİL → boyamadan önce çalışır → FOUC önleme korundu (davranış birebir)
- doğrulandı: test_frontend_a11y.py 34/34 passed; gündüz/gece runtime'da doğru, flash yok

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@Ohualtex Ohualtex merged commit eab6e8d into main Jun 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant