Ana içeriğe geç
L
LeopardoIK Platformu
Urun

Surum gunlugu

Onemli platform guncellemeleri (ozet).

İlk genel sürüm — güvenlik, CI ve kalite

v4.24.0·
  • Tam güvenlik sıkılaştırması: beklemede şifreli SAML/OIDC SSO, kısıtlı yükleme, httpOnly web auth çerezi, kiosk XSS'i giderildi, Hive dışında mobil JWT.
  • CI'da ölçülen %71 backend kapsamı (modül başına kapı, Payroll ≥ %80 hedef); 1.917 test, 424 belgelenmiş API uç noktası.
  • Sayfalama ve yanıt sözleşmeleri standartlaştırıldı (Growth, Cameras, DeviceToken, CabinetShare).
  • CI: SHA sabitlenmiş 69 aksiyon, engelleyici dependency-review, anti-stale-SHA kapısı, gerçekten çalışan A-2 gizli taraması.

Üretim düzeltmeleri — cold start, E2E ve bordro

v4.23.5·
  • Staging E2E için Render anti-cold-start ısıtması (Playwright 15 sn zaman aşımı).
  • Vercel sağlamlığı: önceki SHA yedeğiyle ignoreCommand.
  • Bordro düzeltmeleri: fatura numarası gerçekten kalıcılaştırıldı, Render worker/scheduler başlatıldı, salary_advances FK indeksi.

3 mobil uygulamada Dart derlemesi düzeltildi + CI güçlendirildi

v4.23.4·
  • leopardo_employee, leopardo_manager ve leopardo_hr main.dart'ları, gövde SentryFlutter.init beklerken async olmadan main() bildiriyordu — Future<void> main() async ile uyumlu hale getirildi (main'deki Flutter işini engelliyordu).
  • CI/CD: tedarik zinciri güçlendirmesi (üçüncü taraf aksiyonların SHA sabitlenmesi) ve yeniden kullanılabilir kompozit aksiyonlarla PHP/Flutter kurulumunun tekilleştirilmesi (~360 satır daha az).

34 Dependabot uyarısı çözüldü (11 yüksek, 16 orta, 7 düşük)

v4.23.3·
  • api (composer): symfony/yaml 8.0.8 → 8.1.1 (ReDoS Parser::cleanup); form-data düzeltildi (CRLF enjeksiyonu).
  • Vitrin ve admin: npm audit fix (form-data, ws, js-yaml), postcss düzeltildi, vite 6.4.3 (dev-server SSRF, path traversal).
  • web-offline: Next.js 16.2.10 + ESLint 9 (SSRF, XSS, cache poisoning); npm/composer denetimi 0 artık açık.

CI güvenliği: workflow_run enjeksiyonu düzeltildi, açık izinler

v4.23.2·
  • deploy-main.yml: head_branch artık run: shell bloğuna enterpole edilmiyor (ortam değişkeni) + head_repository == github.repository doğrulaması.
  • Eksik workflow'larda açık GITHUB_TOKEN izinleri (contents: read); phpstan-modules.neon artık Larastan'ı yüklüyor (36 undefined method hatası çözüldü).

Marketing Modülü (Faz 1): temel şema ve modeller

v4.23.1·
  • tenant migration'ları social_accounts ve social_posts içeren yeni DDD modülü api/app/Modules/Marketing/.
  • Ham OAuth token saklanmıyor (toplayıcı profile şifreli referans); tenant kapsamlı Eloquent modeller, Feature testleri dahil.

API tarafından kabul edilen marketing yönetici rolü (Marketing Modülü — Faz 0)

v4.23.0·
  • StoreEmployeeRequest/UpdateEmployeeRequest, manager_role'u marketing değeri olmadan doğruluyordu — izinli listeye eklendi (POST/PATCH /employees).

Onboarding drip e-postası: 3 otomatik besleme e-postası

v4.22.8·
  • SendTrialDripEmailJob, trial sağlandıktan sonra G+1, G+3, G+7 gönderir (sınırlı yeniden denemeler, trial durumu doğrulanır).
  • company_id + employee_id kapsamında yeni OnboardingProgress modeli; mobil onboarding sihirbazı yeniden düzenlendi (ilerleme çubuğu, zorunlu/hata durumları).

Bordro ParseError düzeltildi + mola, çalışılan saatlerden düşülüyor

v4.22.7·
  • 7 CountryRules dosyasındaki PHP ParseError düzeltildi (main CI açıldı).
  • Mola dakikaları (break_minutes) artık çalışılan saatlerden düşülüyor (AttendanceLog).

PHPStan Modules Architecture düzeltildi (Absence Eloquent scope)

v4.22.6·
  • AbsenceService::request() ve LeavePolicyController::balances() bilinmeyen Eloquent scope'lara erişiyordu — tipler düzeltildi, CI kapısı yeşil.

Kuyruktaki işlerin çok kiracılı izolasyonu

v4.22.5·
  • TenantMiddleware artık işler için PostgreSQL search_path'ini ve current_company bağlamasını doğru ayarlıyor.
  • Yeni App\Contracts\Queue\TenantScopedJob arayüzü: kiracı bağlamı gerektiren her iş tenantCompanyId() bildirir.

CI: kalan 136 hata çözüldü (eksik company_id)

v4.22.4·
  • AbsenceType'taki 4.22.3 ile aynı hata sınıfı: company_id (NOT NULL), kanonik modelin $fillable/casts'inde yoktu — düzeltildi, 899 yeşil test.

CI: kalan 160 hata çözüldü (kanonik modeller)

v4.22.3·
  • Kanonik Absence modeli (App\Models\Absence shim'i aracılığıyla) ne $fillable'da company_id (NOT NULL) ne de uygun cast bildiriyordu — uyumlu hale getirildi, 899 yeşil test.

CI: app/Models shim'leri düzeltildi (class_alias + üretim)

v4.22.2·
  • v4.22.0'da üretilen 75 shim dosyası app/Models/*.php: class_alias yanlış bir sınıf adı çözüyordu — yeniden üretildi, Backend + Coverage yeniden yeşil.

Dokümantasyon temizliği — mojibake ve tutarlılık

v4.22.1·
  • UML diyagramlarında ve diğer dokümanlarda bozuk kodlamalar (mojibake) düzeltildi — işlevsel değişiklik yok.

CI açıldı: kaçışlı kesme işaretli migration

v4.21.1·
  • employee_attendance_preferences migration'ının SQL yorumunda PHP tarzı kaçışlı kesme işaretleri — tüm merge'leri engelleyen CI yeniden yeşil.

Mimari temizlik Faz 2 — modeller, servisler, FormRequest'ler

v4.22.0·
  • 17 sahipsiz model Core/Tenant/Domain/Models ve Core/Auth/Domain/Models'a taşındı; servisler ve FormRequest'ler modüle göre yeniden düzenlendi.

API mimari temizliği — legacy kopyalar kaldırıldı

v4.21.0·
  • app/Http/Controllers/Api/V1'den 90 kopya kontrolör silindi (app/Modules/*/Interfaces/Api/V1'e taşındı).

EdgeSync: EdgeController DDD modülüne taşındı

v4.17.4·
  • EdgeController ve EdgeDownloadController, app/Http/Controllers/Api/V1'den App\Modules\EdgeSync\Interfaces\Api\V1'e taşındı.
  • Modüller PHPStan'ı, geçiş halindeki modüller için hedefli bastırmalarla seviye 3 → 5'e yükseltildi.

Tam gecmis: depodaki CHANGELOG.md dosyasi.