@omerrgocmen/crewctl 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +182 -0
- package/orchestrator/LICENSE +21 -0
- package/orchestrator/README.md +452 -0
- package/orchestrator/config.default.json +65 -0
- package/orchestrator/roles/executor.md +49 -0
- package/orchestrator/roles/operator-chat.md +25 -0
- package/orchestrator/roles/operator.md +75 -0
- package/orchestrator/roles/planner.md +53 -0
- package/orchestrator/roles/reviewer.md +54 -0
- package/orchestrator/skills/acceptance-criteria.md +18 -0
- package/orchestrator/skills/accessibility-audit.md +16 -0
- package/orchestrator/skills/accessible-forms.md +16 -0
- package/orchestrator/skills/api-design.md +27 -0
- package/orchestrator/skills/api-documentation.md +16 -0
- package/orchestrator/skills/architecture-decision-record.md +18 -0
- package/orchestrator/skills/authentication-design.md +16 -0
- package/orchestrator/skills/authorization-review.md +16 -0
- package/orchestrator/skills/backward-compatibility.md +17 -0
- package/orchestrator/skills/changelog-writing.md +16 -0
- package/orchestrator/skills/ci-pipeline-design.md +16 -0
- package/orchestrator/skills/cli-design.md +16 -0
- package/orchestrator/skills/code-review.md +27 -0
- package/orchestrator/skills/configuration-management.md +16 -0
- package/orchestrator/skills/container-review.md +16 -0
- package/orchestrator/skills/contract-testing.md +16 -0
- package/orchestrator/skills/dashboard-design.md +16 -0
- package/orchestrator/skills/database-migration.md +16 -0
- package/orchestrator/skills/database-schema-design.md +16 -0
- package/orchestrator/skills/debugging.md +26 -0
- package/orchestrator/skills/dependency-review.md +16 -0
- package/orchestrator/skills/design-review.md +29 -0
- package/orchestrator/skills/design-system.md +16 -0
- package/orchestrator/skills/docs-api-reference.md +16 -0
- package/orchestrator/skills/docs-troubleshooting.md +16 -0
- package/orchestrator/skills/docs-tutorial.md +16 -0
- package/orchestrator/skills/docs-writing.md +25 -0
- package/orchestrator/skills/empty-error-loading-states.md +16 -0
- package/orchestrator/skills/end-to-end-testing.md +16 -0
- package/orchestrator/skills/error-handling.md +16 -0
- package/orchestrator/skills/frontend-design.md +28 -0
- package/orchestrator/skills/git-commit-writing.md +16 -0
- package/orchestrator/skills/graphql-design.md +16 -0
- package/orchestrator/skills/incident-runbook.md +18 -0
- package/orchestrator/skills/input-validation.md +16 -0
- package/orchestrator/skills/integration-testing.md +16 -0
- package/orchestrator/skills/interaction-design.md +16 -0
- package/orchestrator/skills/landing-page-design.md +16 -0
- package/orchestrator/skills/observability-design.md +16 -0
- package/orchestrator/skills/openapi-contract.md +16 -0
- package/orchestrator/skills/performance-profiling.md +16 -0
- package/orchestrator/skills/privacy-review.md +16 -0
- package/orchestrator/skills/property-based-testing.md +16 -0
- package/orchestrator/skills/pull-request-writing.md +16 -0
- package/orchestrator/skills/refactoring.md +16 -0
- package/orchestrator/skills/release-readiness.md +16 -0
- package/orchestrator/skills/responsive-design.md +16 -0
- package/orchestrator/skills/secrets-management.md +16 -0
- package/orchestrator/skills/secure-file-upload.md +16 -0
- package/orchestrator/skills/security-review.md +26 -0
- package/orchestrator/skills/semantic-versioning.md +17 -0
- package/orchestrator/skills/seo-on-page.md +16 -0
- package/orchestrator/skills/seo-structured-data.md +16 -0
- package/orchestrator/skills/seo-technical-audit.md +16 -0
- package/orchestrator/skills/sql-query-review.md +16 -0
- package/orchestrator/skills/supply-chain-security.md +16 -0
- package/orchestrator/skills/test-strategy.md +16 -0
- package/orchestrator/skills/threat-modeling.md +16 -0
- package/orchestrator/skills/unit-testing.md +16 -0
- package/orchestrator/skills/write-tests.md +28 -0
- package/orchestrator/src/checkpoints.js +187 -0
- package/orchestrator/src/cli-registry.js +579 -0
- package/orchestrator/src/cli.js +135 -0
- package/orchestrator/src/doctor.js +64 -0
- package/orchestrator/src/engine.js +1364 -0
- package/orchestrator/src/schedule.js +126 -0
- package/orchestrator/src/server.js +706 -0
- package/orchestrator/src/skill-registry.js +272 -0
- package/orchestrator/src/store.js +364 -0
- package/orchestrator/web/OrbitControls.js +1417 -0
- package/orchestrator/web/app.css +116 -0
- package/orchestrator/web/app.js +70 -0
- package/orchestrator/web/board.html +141 -0
- package/orchestrator/web/code.html +208 -0
- package/orchestrator/web/flow.html +736 -0
- package/orchestrator/web/index.html +539 -0
- package/orchestrator/web/jsm/postprocessing/EffectComposer.js +231 -0
- package/orchestrator/web/jsm/postprocessing/MaskPass.js +104 -0
- package/orchestrator/web/jsm/postprocessing/Pass.js +95 -0
- package/orchestrator/web/jsm/postprocessing/RenderPass.js +99 -0
- package/orchestrator/web/jsm/postprocessing/ShaderPass.js +77 -0
- package/orchestrator/web/jsm/postprocessing/UnrealBloomPass.js +415 -0
- package/orchestrator/web/jsm/shaders/CopyShader.js +45 -0
- package/orchestrator/web/jsm/shaders/LuminosityHighPassShader.js +66 -0
- package/orchestrator/web/three.module.min.js +6 -0
- package/package.json +51 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: dashboard-design
|
|
3
|
+
description: Karar vermeyi hızlandıran hiyerarşik, yoğun ama okunabilir dashboard tasarla; metrik ve yönetim ekranlarında kullan.
|
|
4
|
+
category: design
|
|
5
|
+
appliesTo: [plan, implement, review]
|
|
6
|
+
match: [dashboard, admin panel, yönetim paneli, analytics ui, metrics, kpi, data dashboard]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Dashboard Tasarımı
|
|
10
|
+
|
|
11
|
+
- Kullanıcının vereceği kararları ve bu kararlar için gereken 3–7 birincil sinyali belirle.
|
|
12
|
+
- Özet → eğilim → ayrıntı hiyerarşisi kur; her kartı aynı görsel ağırlığa getirme.
|
|
13
|
+
- Değerlerde birim, dönem, karşılaştırma temeli, güncellik ve veri kalitesi göster.
|
|
14
|
+
- Tablo/grafik türünü karşılaştırma amacına göre seç; dekoratif görselleştirmeden kaçın.
|
|
15
|
+
- Filtreleri paylaşılabilir duruma bağla, aktif filtreyi görünür kıl ve boş/yükleniyor/hata durumlarını tasarla.
|
|
16
|
+
- Küçük ekran, klavye, renk körlüğü ve gerçek uzun veriyle düzeni doğrula.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: database-migration
|
|
3
|
+
description: Üretimde güvenli, geri alınabilir ve aşamalı veri tabanı geçişi uygula; şema veya veri migration işlerinde kullan.
|
|
4
|
+
category: software
|
|
5
|
+
appliesTo: [plan, implement, review]
|
|
6
|
+
match: [database migration, db migration, veri tabanı geçişi, schema migration, backfill, ddl, rollback]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Veri Tabanı Geçişi
|
|
10
|
+
|
|
11
|
+
- Önce mevcut şema, veri hacmi, kilit süresi ve eski uygulama sürümüyle uyumu incele.
|
|
12
|
+
- Expand/contract uygula: uyumlu alanı ekle, çift okuma/yazmayı geçir, veriyi doldur, sonra eskisini kaldır.
|
|
13
|
+
- Büyük backfill'i küçük, tekrar çalıştırılabilir partilere böl; ilerleme ve hata kaydı tut.
|
|
14
|
+
- Uzun tablo kilidi ve tam tablo yeniden yazımını üretim hacminde değerlendir.
|
|
15
|
+
- İleri geçiş, geri dönüş ve kısmi başarısızlık davranışını prova et.
|
|
16
|
+
- Veri kaybı riski olan adımı açık onay ve doğrulanmış yedek olmadan çalıştırma.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: database-schema-design
|
|
3
|
+
description: Bütünlük, sorgu biçimi ve evrim maliyetine göre veri şeması tasarla; tablo ve ilişki işlerinde kullan.
|
|
4
|
+
category: software
|
|
5
|
+
appliesTo: [plan, implement, review]
|
|
6
|
+
match: [database schema, veri tabanı şeması, table, tablo, relation, ilişki, index, constraint, normalization]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Veri Şeması Tasarımı
|
|
10
|
+
|
|
11
|
+
1. Varlıkları, kimlikleri, kardinaliteyi, sahipliği ve yaşam döngüsünü çıkar.
|
|
12
|
+
2. Null, varsayılan, unique, foreign key ve check kurallarıyla bütünlüğü veriye yakın uygula.
|
|
13
|
+
3. Normalizasyonu başlangıç noktası al; denormalizasyonu ölçülmüş sorgu ihtiyacıyla gerekçelendir.
|
|
14
|
+
4. İndeksleri gerçek filtre, sıralama ve join kalıplarına göre tasarla; yazma maliyetini hesaba kat.
|
|
15
|
+
5. Saat dilimi, para, hassasiyet, Unicode ve silme politikasını açık seç.
|
|
16
|
+
6. Şemayı örnek sorgular ve evrim/migration senaryosuyla doğrula.
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: debugging
|
|
3
|
+
description: Kök neden bulma disiplini — belirtiyi değil nedeni düzelt
|
|
4
|
+
category: software
|
|
5
|
+
appliesTo: [implement]
|
|
6
|
+
match: [hata, bug, debug, hata ayikla, ayıkla, crash, cokme, çökme, exception, fix, duzelt, düzelt, sorun, patlama]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Beceri: Hata Ayıklama
|
|
10
|
+
|
|
11
|
+
Rastgele deneme yerine hipotez–kanıt döngüsü yürüt.
|
|
12
|
+
|
|
13
|
+
## Yöntem
|
|
14
|
+
|
|
15
|
+
1. **Yeniden üret:** Hatayı tetikleyen en küçük, deterministik adımı bul. Üretilemeyen hata düzeltilemez.
|
|
16
|
+
2. **Daralt:** Hatanın olduğu ve olmadığı yeri ikiye bölerek (log, ara değer, git bisect mantığı) izole et.
|
|
17
|
+
3. **Kök nedeni bul:** "Neden?" diye zincirle sor. İlk gördüğün belirtiyi değil, onu üreten nedeni hedefle.
|
|
18
|
+
4. **En küçük düzeltme:** Kök nedeni gideren minimal değişikliği yap; ilgisiz refactor ekleme.
|
|
19
|
+
5. **Regresyona karşı test:** Mümkünse hatayı yakalayan bir test ekle; düzeltme öncesi kırmızı, sonrası yeşil olsun.
|
|
20
|
+
6. **Yan etkiyi kontrol et:** Düzeltmenin başka bir davranışı bozmadığını doğrula.
|
|
21
|
+
|
|
22
|
+
## Kurallar
|
|
23
|
+
|
|
24
|
+
- Belirtiyi maskeleyen çözümlerden (boş `catch`, kontrolü kapatma, sihirli bekleme) kaçın.
|
|
25
|
+
- Bulduğun kök nedeni ve neden bu düzeltmenin doğru olduğunu kısaca raporla.
|
|
26
|
+
- Düzeltilemiyorsa (yeniden üretilemiyor, erişim yok) bunu somut kanıtla `BLOCKED` olarak bildir.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: dependency-review
|
|
3
|
+
description: Yeni veya güncellenen bağımlılığın güvenlik, lisans, bakım ve paket boyutu etkisini incele; paket değişimlerinde kullan.
|
|
4
|
+
category: software
|
|
5
|
+
appliesTo: [plan, implement, review]
|
|
6
|
+
match: [dependency, bağımlılık, package, paket, lockfile, npm, pip, cargo, license, lisans, upgrade]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Bağımlılık İncelemesi
|
|
10
|
+
|
|
11
|
+
- Önce ihtiyacın mevcut standart kütüphane veya kurulu paketle çözülüp çözülemeyeceğini kontrol et.
|
|
12
|
+
- Manifest ve lockfile farkında doğrudan/dolaylı paketleri, kaynak ve bütünlük değişimlerini incele.
|
|
13
|
+
- Bakım etkinliği, sürüm politikası, lisans, bilinen açık ve çalışma zamanı ayrıcalıklarını değerlendir.
|
|
14
|
+
- İstemci tarafında paket/bundle maliyetini; sunucuda başlangıç ve tedarik zinciri etkisini ölç.
|
|
15
|
+
- Minimum uyumlu sürümü seç, sürümü kilitle ve kullanım yüzeyini küçük tut.
|
|
16
|
+
- Güncellemeden sonra test, build ve güvenlik taramasını çalıştır; körlemesine büyük lockfile farkı kabul etme.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: design-review
|
|
3
|
+
description: UI/UX ve tasarım sistemi incelemesi — hiyerarşi, erişilebilirlik, tutarlılık ve tema uyumu
|
|
4
|
+
category: design
|
|
5
|
+
appliesTo: [review, implement]
|
|
6
|
+
match: [tasarim, tasarım, design, ui, ux, arayuz, arayüz, layout, renk, color, tema, theme, erisilebilir, erişilebilir, accessibility, responsive]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Beceri: Tasarım İncelemesi
|
|
10
|
+
|
|
11
|
+
Bir arayüzü tek bir tasarım sistemi gibi okunacak biçimde değerlendir. Estetik yorumdan çok
|
|
12
|
+
gözlemlenebilir kurallara dayan.
|
|
13
|
+
|
|
14
|
+
## Kontrol listesi
|
|
15
|
+
|
|
16
|
+
- **Görsel hiyerarşi:** Başlık/gövde/aksiyon ayrımı net mi? Birincil eylem sayfada tek ve baskın mı?
|
|
17
|
+
- **Boşluk ve ritim:** Tutarlı bir aralık ölçeği (4/8 px) var mı? Rastgele margin/padding sıçramaları var mı?
|
|
18
|
+
- **Tipografi:** En fazla 2 font ailesi, sınırlı boyut/ağırlık ölçeği; satır uzunluğu 45–90 karakter.
|
|
19
|
+
- **Renk ve kontrast:** Metin/arka plan kontrastı WCAG AA (normal 4.5:1, büyük 3:1). Renk tek başına anlam taşımasın.
|
|
20
|
+
- **Tutarlılık:** Aynı işlevin bileşenleri (buton, kart, input) her yerde aynı görünsün; tek seferlik istisnalar işaretlensin.
|
|
21
|
+
- **Durumlar:** hover / focus / active / disabled / hata / boş / yükleniyor durumları tanımlı mı?
|
|
22
|
+
- **Erişilebilirlik:** Klavyeyle gezilebilir mi, görünür focus halkası var mı, etiketler/alt metinler eksik mi?
|
|
23
|
+
- **Tema:** Açık ve koyu temada da okunur mu? Sabit renk yerine tema değişkenleri kullanılmış mı?
|
|
24
|
+
- **Responsive:** Dar ve geniş ekranda taşma/kırılma var mı?
|
|
25
|
+
|
|
26
|
+
## Teslimat
|
|
27
|
+
|
|
28
|
+
Bulguları önem sırasıyla (HIGH/MEDIUM/LOW) ve mümkünse dosya:satır ile ver. Her bulgu için somut,
|
|
29
|
+
minimal düzeltme öner. Estetik tercihleri "kural" gibi sunma; gerekçesini yaz.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: design-system
|
|
3
|
+
description: Token, bileşen, varyant ve dokümantasyonla tutarlı bir arayüz sistemi kur; tekrar eden UI ve tema işlerinde kullan.
|
|
4
|
+
category: design
|
|
5
|
+
appliesTo: [plan, implement, review]
|
|
6
|
+
match: [design system, tasarım sistemi, token, component library, bileşen kütüphanesi, theme, tema]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Tasarım Sistemi
|
|
10
|
+
|
|
11
|
+
1. Mevcut ürün dilini ve tekrar eden kararları envanterle; ihtiyaç kanıtı olmadan sistem kurma.
|
|
12
|
+
2. Renk, tipografi, boşluk, radius, elevation ve motion için anlamsal token katmanı oluştur.
|
|
13
|
+
3. Bileşenin anatomy, varyant, boyut, durum, erişilebilirlik ve içerik kurallarını açık tanımla.
|
|
14
|
+
4. Composition'ı tek seferlik prop çoğalmasına tercih et; kaçış noktalarını kontrollü bırak.
|
|
15
|
+
5. Görsel örnek, kullanım/kullanma örneği ve değişiklik/migration notu sağla.
|
|
16
|
+
6. Açık-koyu tema, responsive, klavye ve görsel regresyon testleriyle sistemi doğrula.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: docs-api-reference
|
|
3
|
+
description: Kod veya sözleşmeden eksiksiz ve taranabilir API referansı üret; fonksiyon, sınıf, config ve endpoint belgelerinde kullan.
|
|
4
|
+
category: documentation
|
|
5
|
+
appliesTo: [implement, review]
|
|
6
|
+
match: [api reference, referans dokümanı, function docs, class docs, configuration reference, endpoint reference]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# API Referansı
|
|
10
|
+
|
|
11
|
+
- Kaynak gerçek olarak kodu, şemayı ve çalışan davranışı kullan; tahminden alan üretme.
|
|
12
|
+
- Öğeleri kararlı ad ve hiyerarşiyle sırala; kısa amaç cümlesinden sonra imza/söz dizimi ver.
|
|
13
|
+
- Parametre türü, zorunluluk, varsayılan, sınır, dönüş, hata ve yan etkiyi açıkla.
|
|
14
|
+
- Her öğeye minimal çalışan örnek ekle; örneğin çıktısını ve ön koşulunu göster.
|
|
15
|
+
- Ortak kavramı tek yerde belgeleyip bağla; referansta uzun öğretici anlatı kullanma.
|
|
16
|
+
- Eksik/deprecated öğeleri ve sürüm farkını işaretle, örnekleri test veya doğrulama ile senkron tut.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: docs-troubleshooting
|
|
3
|
+
description: Belirtiyi tanı, nedeni doğrula ve güvenli çözüm sunan sorun giderme belgesi yaz; hata ve destek dokümanında kullan.
|
|
4
|
+
category: documentation
|
|
5
|
+
appliesTo: [implement, review]
|
|
6
|
+
match: [troubleshooting, sorun giderme, common errors, yaygın hatalar, diagnosis, hata belgesi, faq]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Sorun Giderme Belgesi
|
|
10
|
+
|
|
11
|
+
- Bölümü kullanıcının gördüğü tam belirti, hata kodu veya davranışla adlandır.
|
|
12
|
+
- Hızlı güvenli kontrollerden başlayıp ayırt edici tanı adımlarını sırala; beklenen çıktıyı yaz.
|
|
13
|
+
- Her dalda olası neden, doğrulama kanıtı ve en dar çözümü eşleştir.
|
|
14
|
+
- Veri silen, izin değiştiren veya güvenliği gevşeten komutu varsayılan çözüm yapma; risk ve geri dönüşü belirt.
|
|
15
|
+
- Sırları maskeleyen log toplama ve destek escalation bilgisi ekle.
|
|
16
|
+
- Komut, dosya yolu ve hata metnini güncel üründe yeniden üretip doğrula.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: docs-tutorial
|
|
3
|
+
description: Yeni kullanıcıyı çalışan ve anlamlı bir sonuca adım adım ulaştıran öğretici yaz; onboarding ve başlangıç rehberinde kullan.
|
|
4
|
+
category: documentation
|
|
5
|
+
appliesTo: [implement, review]
|
|
6
|
+
match: [tutorial, öğretici, quickstart, getting started, başlangıç, onboarding, walkthrough]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Öğretici Yazımı
|
|
10
|
+
|
|
11
|
+
1. Tek öğrenme hedefi ve görünür nihai ürün seç; kavramsal kapsamı dar tut.
|
|
12
|
+
2. Temiz ortam için ön koşul, kurulum ve yaklaşık süreyi başta belirt.
|
|
13
|
+
3. Küçük, sıralı ve kopyalanabilir adımlar ver; her adımın beklenen sonucunu göster.
|
|
14
|
+
4. Okuyucunun başarı hissini erken üret, sonra bir kavramı uygulama içinde açıklayarak ilerle.
|
|
15
|
+
5. Alternatifler ve tam referansla ana akışı bölme; ilgili belgeye bağla.
|
|
16
|
+
6. Öğreticiyi sıfırdan aynen çalıştır, sürüm/yol/çıktı doğruluğunu kontrol et ve temizleme adımı ekle.
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: docs-writing
|
|
3
|
+
description: Net, doğru ve bakımı kolay dokümantasyon/README yazma rehberi
|
|
4
|
+
category: documentation
|
|
5
|
+
appliesTo: [implement]
|
|
6
|
+
match: [dokuman, doküman, docs, readme, belge, documentation, aciklama, açıklama, guide, kilavuz, kılavuz, yorum]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Beceri: Dokümantasyon Yazma
|
|
10
|
+
|
|
11
|
+
Okuyucunun hedefine en kısa yoldan ulaşmasını sağla. Doğruluk, kısalıktan önce gelir.
|
|
12
|
+
|
|
13
|
+
## İlkeler
|
|
14
|
+
|
|
15
|
+
- **Önce okuyucu:** Kim, ne yapmaya çalışıyor? Önvarsayımı ve gerekli ön koşulları baştan söyle.
|
|
16
|
+
- **Çalıştırılabilir örnek:** Kopyala-çalıştır komutları ve gerçek girdi/çıktı ver; sözde koddan kaçın.
|
|
17
|
+
- **Yapı:** Kısa giriş → hızlı başlangıç → yaygın görevler → başvuru → sorun giderme. Taranabilir başlıklar kullan.
|
|
18
|
+
- **Doğruluk:** Yalnızca kod tabanında gerçekten var olan komut, bayrak, yol ve davranışı yaz; uydurma.
|
|
19
|
+
- **Kısalık:** Gereksiz sıfat ve tekrar yok. Bir cümle bir iş yapsın.
|
|
20
|
+
- **Bakım:** Kırılgan ayrıntıyı (sürüm numarası, iç yol) tek yerde tut; kodla dokümanı senkron bırak.
|
|
21
|
+
|
|
22
|
+
## Kurallar
|
|
23
|
+
|
|
24
|
+
Mevcut dokümanın dilini, tonunu ve biçimini koru. Var olan bir belgeyi güncelliyorsan üslubu değiştirme.
|
|
25
|
+
Yalnızca doğruladığın bilgiyi yaz; emin olmadığın davranışı "kesin" gibi sunma.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: empty-error-loading-states
|
|
3
|
+
description: Boş, hata, yükleniyor ve kısmi başarı durumlarını eyleme dönük tasarla; veri getiren arayüzlerde kullan.
|
|
4
|
+
category: design
|
|
5
|
+
appliesTo: [plan, implement, review]
|
|
6
|
+
match: [empty state, boş durum, error state, hata durumu, loading, yükleniyor, skeleton, retry, partial]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Arayüz Durumları
|
|
10
|
+
|
|
11
|
+
- İlk kullanım boşluğu, filtre sonucu boşluğu, izin yokluğu ve gerçek veri yokluğunu farklı ele al.
|
|
12
|
+
- Yüklenirken düzeni sabit tut; bilinmeyen süre için ilerleme/skeleton, uzun işlem için durum ve iptal sun.
|
|
13
|
+
- Hata metninde ne olduğunu, kullanıcı etkisini ve güvenli sonraki eylemi söyle; teknik ayrıntıyı sızdırma.
|
|
14
|
+
- Retry yalnız güvenliyse göster; girilmiş veri ve önceki başarılı içeriği mümkünse koru.
|
|
15
|
+
- Kısmi başarıyı tüm ekran hatası gibi sunma; güncellik ve eksik bölümü açık işaretle.
|
|
16
|
+
- Durumları gerçek gecikme, offline, 401/403/404/429/5xx ve dar ekran koşullarında test et.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: end-to-end-testing
|
|
3
|
+
description: Kritik kullanıcı yolunu gerçek sistem sınırları boyunca güvenilir E2E testle doğrula; UI ve tam akış testlerinde kullan.
|
|
4
|
+
category: testing
|
|
5
|
+
appliesTo: [implement, review]
|
|
6
|
+
match: [e2e, end to end, uçtan uca, playwright, cypress, browser test, kullanıcı akışı]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Uçtan Uca Test
|
|
10
|
+
|
|
11
|
+
1. İş değeri yüksek, katmanlar arası tek bir kullanıcı yolunu seç; her ayrıntıyı E2E'ye taşıma.
|
|
12
|
+
2. Testi erişilebilir rol, etiket ve görünen sonuçlarla sür; kırılgan CSS veya zamanlama seçicilerinden kaçın.
|
|
13
|
+
3. Veriyi API/fixture ile deterministik kur, testler arasında benzersizleştir ve temizle.
|
|
14
|
+
4. Sabit sleep yerine gözlemlenebilir koşulu bekle; retry ile gerçek flakiness'i gizleme.
|
|
15
|
+
5. Başarısızlıkta ekran görüntüsü, trace, ağ ve uygulama logunu sakla.
|
|
16
|
+
6. En az bir hata/izin yolunu ekleyip testi temiz ortamda tekrarlı çalıştır.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: error-handling
|
|
3
|
+
description: Hataları kaybetmeden sınıflandır, bağlam ekle ve güvenli biçimde kullanıcıya taşı; hata yolu tasarımında kullan.
|
|
4
|
+
category: software
|
|
5
|
+
appliesTo: [plan, implement, review]
|
|
6
|
+
match: [error handling, hata yönetimi, exception, istisna, retry, timeout, fallback, failure]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Hata Yönetimi
|
|
10
|
+
|
|
11
|
+
1. Beklenen iş hatası, geçici altyapı hatası ve programlama hatasını ayır.
|
|
12
|
+
2. Hatayı yakaladığın yerde çözebiliyorsan çöz; aksi halde özgün nedeni koruyarak bağlam ekleyip ilet.
|
|
13
|
+
3. Kullanıcı mesajını uygulanabilir ve güvenli, log ayrıntısını tanılama için yeterli yap.
|
|
14
|
+
4. Retry'ı yalnızca idempotent ve geçici hatalarda, sınırlı exponential backoff ile uygula.
|
|
15
|
+
5. Timeout, iptal, kısmi başarı ve temizleme yollarını birinci sınıf davranış olarak ele al.
|
|
16
|
+
6. Boş `catch`, sessiz fallback ve hassas veri içeren stack trace kullanma; hata yollarını test et.
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: frontend-design
|
|
3
|
+
description: Cilalı, tutarlı ve erişilebilir arayüz kurma rehberi — tasarım token'ları, bileşen ve durum disiplini
|
|
4
|
+
category: design
|
|
5
|
+
appliesTo: [implement]
|
|
6
|
+
match: [ui, arayuz, arayüz, frontend, react, css, html, component, bilesen, bileşen, sayfa, landing, dashboard, tasarla]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Beceri: Ön Yüz Tasarımı
|
|
10
|
+
|
|
11
|
+
Arayüzü tek seferlik stiller yerine yeniden kullanılabilir bir sistemle kur.
|
|
12
|
+
|
|
13
|
+
## İlkeler
|
|
14
|
+
|
|
15
|
+
- **Token'lardan başla:** Renk, aralık, yarıçap, gölge ve tipografi için değişken/token tanımla; ham
|
|
16
|
+
hex ve sihirli piksel değerlerini bileşenlere serpme.
|
|
17
|
+
- **Aralık ölçeği:** 4/8 px tabanlı tutarlı bir ölçek kullan.
|
|
18
|
+
- **Bileşen bazlı:** Buton, input, kart gibi tekrar edenleri tek bir bileşene indir; kopyalama yapma.
|
|
19
|
+
- **Tüm durumları uygula:** hover, focus-visible, active, disabled, hata, boş ve yükleniyor.
|
|
20
|
+
- **Erişilebilirlik varsayılan olsun:** Anlamlı HTML, `label`/`aria`, klavye erişimi, görünür focus, AA kontrast.
|
|
21
|
+
- **Responsive:** Akışkan düzen; sabit genişlik yerine min/max ve `clamp`. Küçük ekranı da test et.
|
|
22
|
+
- **Tema uyumu:** Açık/koyu tema varsa iki temada da doğrula; sabit renk yerine token kullan.
|
|
23
|
+
- **Hareket ölçülü:** Kısa, amaçlı geçişler; `prefers-reduced-motion` desteğini unutma.
|
|
24
|
+
|
|
25
|
+
## Sınırlar
|
|
26
|
+
|
|
27
|
+
Mevcut tasarım dilini ve bileşen kütüphanesini koru; gerekçesiz yeni bir stil sistemi ya da ağır
|
|
28
|
+
bağımlılık ekleme. Değişikliği tarayıcıda görünür biçimde doğrula ve ne test ettiğini raporla.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: git-commit-writing
|
|
3
|
+
description: Küçük ve açıklayıcı git commit kapsamı ile mesajı hazırla; commit planlama veya yazımında kullan.
|
|
4
|
+
category: software
|
|
5
|
+
appliesTo: [plan, implement, review]
|
|
6
|
+
match: [git commit, commit message, conventional commit, commit mesajı, squash, değişiklik kaydı]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Git Commit Yazımı
|
|
10
|
+
|
|
11
|
+
- Tek bir mantıksal değişikliği seç; ilgisiz dosyaları veya kullanıcıya ait değişiklikleri dahil etme.
|
|
12
|
+
- Proje convention'ını kontrol et; yoksa kısa, emir kipinde ve sonucu anlatan bir başlık yaz.
|
|
13
|
+
- Conventional Commits kullanılıyorsa doğru tür ve yalnızca yararlı scope seç.
|
|
14
|
+
- Gövdede ne değiştiğini tekrarlamak yerine nedenini, davranış etkisini ve önemli ödünleşimi açıkla.
|
|
15
|
+
- Kırıcı değişiklik ve issue bağlantısını projenin beklediği biçimde belirt.
|
|
16
|
+
- Commit öncesi staged farkı yeniden oku ve ilgili doğrulamayı çalıştır; test edilmemiş iddiada bulunma.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: graphql-design
|
|
3
|
+
description: İstemci odaklı, evrilebilir ve maliyeti denetlenebilir GraphQL şeması tasarla; query, mutation ve resolver işlerinde kullan.
|
|
4
|
+
category: software
|
|
5
|
+
appliesTo: [plan, implement, review]
|
|
6
|
+
match: [graphql, query, mutation, resolver, schema, federation, dataloader]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# GraphQL Tasarımı
|
|
10
|
+
|
|
11
|
+
- Şemayı veri tablosuna değil alan diline göre adlandır; nullability sözleşmesini bilinçli seç.
|
|
12
|
+
- Query'leri yan etkisiz, mutation sonuçlarını hata ve güncel nesneyle kullanılabilir yap.
|
|
13
|
+
- Liste alanlarında kararlı cursor sayfalama ve açık filtre/sıralama girdileri kullan.
|
|
14
|
+
- N+1 sorguyu batching/caching ile önle; resolver maliyeti, derinlik ve karmaşıklık sınırı koy.
|
|
15
|
+
- Yetkiyi yalnızca UI veya üst resolver'a bırakma; veri erişim sınırında doğrula.
|
|
16
|
+
- Alan kaldırmak yerine deprecate et, şema değişimini tüketici sorguları ve entegrasyon testleriyle doğrula.
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: incident-runbook
|
|
3
|
+
description: Bir üretim olayını güvenle teşhis edip sınırlandıracak uygulanabilir runbook yaz; operasyon ve sorun giderme işlerinde kullan.
|
|
4
|
+
category: documentation
|
|
5
|
+
appliesTo: [plan, implement, research]
|
|
6
|
+
match: [incident, runbook, olay, outage, kesinti, production issue, operasyon, on-call, müdahale]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Olay Runbook'u
|
|
10
|
+
|
|
11
|
+
1. Tetikleyici belirtiyi, etkiyi ve ilk güvenlik kontrolünü açıkla.
|
|
12
|
+
2. Komutları salt okunur teşhis adımlarından başlayarak sırala; beklenen çıktıyı ve karar dalını yaz.
|
|
13
|
+
3. Sınırlandırma, geri alma ve servis azaltma seçeneklerinde kullanıcı/veri etkisini belirt.
|
|
14
|
+
4. Her riskli adım için yetki, ön koşul, onay ve geri dönüş noktası ekle.
|
|
15
|
+
5. İletişim sahibi, güncelleme sıklığı ve escalation eşiğini tanımla.
|
|
16
|
+
6. Kurtarma sonrası bütünlük doğrulaması, izleme süresi ve postmortem girdilerini listele.
|
|
17
|
+
|
|
18
|
+
Sır, gerçek müşteri verisi veya doğrulanmamış yıkıcı komut ekleme.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: input-validation
|
|
3
|
+
description: Güvenilmeyen girdiyi tür, biçim, boyut ve iş kuralıyla sınırda doğrula; form, API ve parser işlerinde kullan.
|
|
4
|
+
category: security
|
|
5
|
+
appliesTo: [plan, implement, review]
|
|
6
|
+
match: [input validation, girdi doğrulama, sanitize, doğrula, schema validation, parser, untrusted input]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Girdi Doğrulama
|
|
10
|
+
|
|
11
|
+
- Her girdinin kaynağını ve ulaşacağı hassas sink'i belirle; istemci kontrolünü güvenlik sınırı sayma.
|
|
12
|
+
- Tür, uzunluk, aralık, kodlama ve izin verilen biçimi allowlist yaklaşımıyla sunucuda doğrula.
|
|
13
|
+
- Önce kanonikleştir, sonra doğrula; Unicode, çift kodlama ve boşluk varyantlarını düşün.
|
|
14
|
+
- İş kurallarını ve alanlar arası koşulları şema doğrulamasından ayrı ama aynı sınırda uygula.
|
|
15
|
+
- SQL/komut/HTML/URL güvenliği için doğrulamaya ek olarak bağlama uygun güvenli API veya çıktı kodlama kullan.
|
|
16
|
+
- Hatalı, aşırı büyük ve sınır girdileri test et; kullanıcıya alan odaklı, sır sızdırmayan hata ver.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: integration-testing
|
|
3
|
+
description: Bileşen sınırları ve gerçek adaptörler arasındaki sözleşmeleri doğrula; servis, veri tabanı ve entegrasyon testlerinde kullan.
|
|
4
|
+
category: testing
|
|
5
|
+
appliesTo: [implement, review]
|
|
6
|
+
match: [integration test, entegrasyon testi, database test, service test, adapter, repository, boundary]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Entegrasyon Testi
|
|
10
|
+
|
|
11
|
+
- En yüksek riskli sınırı seç: veri tabanı, dosya sistemi, kuyruk, HTTP istemcisi veya servis adaptörü.
|
|
12
|
+
- Üretime benzeyen gerçek bileşeni kullan; yalnızca kontrol edemediğin dış uçları fake et.
|
|
13
|
+
- Şema, serileştirme, transaction, hata çevirisi ve timeout davranışını gözlemlenebilir sonuçla doğrula.
|
|
14
|
+
- Test verisini her test için yalıt; sıra, saat, ağ ve önceki koşudan bağımsız çalıştır.
|
|
15
|
+
- Başlangıç/temizleme kodunu güvenilir kıl ve başarısızlıkta tanılama çıktısını koru.
|
|
16
|
+
- Mutlu yol yanında kopuk bağlantı, çakışma ve kısmi başarısızlık senaryosu ekle.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: interaction-design
|
|
3
|
+
description: Kullanıcı eylemlerini görünür geri bildirim, güvenli geri alma ve tutarlı durum geçişleriyle tasarla; etkileşim işlerinde kullan.
|
|
4
|
+
category: design
|
|
5
|
+
appliesTo: [plan, implement, review]
|
|
6
|
+
match: [interaction design, etkileşim tasarımı, ux flow, user flow, modal, feedback, undo, state transition]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Etkileşim Tasarımı
|
|
10
|
+
|
|
11
|
+
1. Kullanıcı hedefini, başlangıç durumunu, eylemleri ve başarı/hata son durumlarını akış olarak çıkar.
|
|
12
|
+
2. Birincil eylemi belirgin, ikincil eylemi sakin tut; aynı ekranda rekabet eden CTA üretme.
|
|
13
|
+
3. Her eyleme anlık ve doğru geri bildirim ver; optimistic UI'da başarısızlığı geri al.
|
|
14
|
+
4. Geri döndürülebilir işlemde undo'yu, yıkıcı işlemde kapsam özeti ve bilinçli onayı tercih et.
|
|
15
|
+
5. Klavye, focus, escape/back, çift tıklama ve eşzamanlı güncelleme davranışını tanımla.
|
|
16
|
+
6. Akışı ilk kullanım, uzman kullanım, hata ve kesinti senaryolarıyla doğrula.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: landing-page-design
|
|
3
|
+
description: Net değer önerisi, güven ve tek birincil eylem etrafında yüksek kaliteli landing page tasarla; pazarlama sayfalarında kullan.
|
|
4
|
+
category: design
|
|
5
|
+
appliesTo: [plan, implement, review]
|
|
6
|
+
match: [landing page, pazarlama sayfası, marketing page, hero, cta, conversion, dönüşüm, homepage]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Landing Page Tasarımı
|
|
10
|
+
|
|
11
|
+
- Hedef kitleyi, problemi, değer önerisini ve tek birincil dönüşümü bir cümlede netleştir.
|
|
12
|
+
- İlk ekranda somut başlık, destekleyici kanıt ve açık CTA kur; soyut slogan yığını yapma.
|
|
13
|
+
- Akışı problem → çözüm → nasıl çalışır → kanıt → itiraz → CTA sırasıyla düzenle.
|
|
14
|
+
- Gerçek ürün görseli, ölçülebilir sonuç ve doğrulanabilir sosyal kanıt kullan; uydurma testimonial ekleme.
|
|
15
|
+
- Tipografi, boşluk ve sınırlı renk paletiyle özgün hiyerarşi kur; erişilebilirlik ve performansı koru.
|
|
16
|
+
- Mobil, yavaş ağ, uzun çeviri ve form hata durumlarında sayfayı doğrula.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: observability-design
|
|
3
|
+
description: Log, metrik ve trace sinyallerini kullanıcı etkisi ve tanılama sorularına göre tasarla; gözlemlenebilirlik işlerinde kullan.
|
|
4
|
+
category: software
|
|
5
|
+
appliesTo: [plan, implement, review]
|
|
6
|
+
match: [observability, gözlemlenebilirlik, telemetry, metric, metrik, trace, tracing, logging, monitoring]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Gözlemlenebilirlik Tasarımı
|
|
10
|
+
|
|
11
|
+
1. Önce yanıtlanacak operasyon sorularını yaz: ne bozuldu, kim etkilendi, nerede yavaşladı?
|
|
12
|
+
2. Trafik, hata, gecikme ve doygunluk için az sayıda anlamlı metrik seç.
|
|
13
|
+
3. İstek/iş kimliğini log ve trace boyunca taşı; yapılandırılmış, aranabilir alanlar kullan.
|
|
14
|
+
4. Yüksek kardinaliteli kullanıcı/veri alanlarını metrik etiketi yapma; hassas veriyi kaydetme.
|
|
15
|
+
5. Başarı kadar reddedilen, timeout olan ve retry edilen yolları da ölç.
|
|
16
|
+
6. Sinyali dashboard/uyarı tüketicisiyle ve kontrollü hata senaryosuyla uçtan uca doğrula.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: openapi-contract
|
|
3
|
+
description: HTTP API davranışını doğrulanabilir OpenAPI sözleşmesine dönüştür; API şeması, istemci üretimi ve contract işlerinde kullan.
|
|
4
|
+
category: software
|
|
5
|
+
appliesTo: [plan, implement, review]
|
|
6
|
+
match: [openapi, swagger, api contract, api sözleşmesi, spec, schema, endpoint documentation]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# OpenAPI Sözleşmesi
|
|
10
|
+
|
|
11
|
+
- Uygulamanın desteklediği OpenAPI sürümünü ve mevcut düzenini koru.
|
|
12
|
+
- Her operation için kararlı kimlik, özet, parametre, istek gövdesi, başarı ve hata yanıtı tanımla.
|
|
13
|
+
- Required, nullable, format, enum, sınır ve örnekleri gerçek çalışma zamanı doğrulamasıyla eşleştir.
|
|
14
|
+
- Ortak şemaları yeniden kullan; aşırı kalıtım ve belirsiz serbest nesnelerden kaçın.
|
|
15
|
+
- Kimlik doğrulama, sayfalama, idempotency ve hata modelini açıkça göster.
|
|
16
|
+
- Spec'i linter/validator ile doğrula ve uygulama testleriyle sözleşme sapmasını yakala.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: performance-profiling
|
|
3
|
+
description: Performans sorununu ölçüm ve profil kanıtıyla bulup en dar darboğazı düzelt; yavaşlık ve optimizasyon işlerinde kullan.
|
|
4
|
+
category: software
|
|
5
|
+
appliesTo: [plan, implement, review, research]
|
|
6
|
+
match: [performance, performans, profiling, profile, yavaş, slow, latency, cpu, memory, benchmark]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Performans Profilleme
|
|
10
|
+
|
|
11
|
+
1. Kullanıcı etkisini ve başarı eşiğini tanımla; süre, throughput, bellek veya kaynak metriğini seç.
|
|
12
|
+
2. Temsilî veri ve ısınma koşuluyla tekrarlanabilir baseline ölç.
|
|
13
|
+
3. CPU, allocation, I/O, sorgu veya ağ profilinden baskın maliyeti bul; tahmine göre kod değiştirme.
|
|
14
|
+
4. En dar nedeni hedefleyen küçük optimizasyon yap ve davranışı koruyan testleri çalıştır.
|
|
15
|
+
5. Aynı koşulda önce/sonra dağılımını karşılaştır; tek ölçümü sonuç sayma.
|
|
16
|
+
6. Kazanç, ödünleşim, veri boyutu ve kalan darboğazı raporla; ölçülmeyen “hızlandı” iddiası kurma.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: privacy-review
|
|
3
|
+
description: Kişisel veri akışını minimizasyon, amaç, saklama ve kullanıcı kontrolü açısından incele; analytics ve veri özelliğinde kullan.
|
|
4
|
+
category: security
|
|
5
|
+
appliesTo: [plan, implement, review]
|
|
6
|
+
match: [privacy, gizlilik, personal data, kişisel veri, pii, gdpr, kvkk, consent, analytics, telemetry]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Gizlilik İncelemesi
|
|
10
|
+
|
|
11
|
+
- Toplanan veriyi, kaynağı, amacı, alıcıyı, saklama süresini ve silme yolunu haritala.
|
|
12
|
+
- Özellik için gerekmeyen alanı toplama; kimlik bağını mümkün olan en erken yerde azalt.
|
|
13
|
+
- İzin/hukuki dayanak ve kullanıcı beklentisini ürün sahibinden doğrula; hukuki sonuç uydurma.
|
|
14
|
+
- Log, telemetry, URL, cache, export ve üçüncü taraf aktarımında sızıntı yüzeyini incele.
|
|
15
|
+
- Erişim, düzeltme, dışa aktarma, silme ve izin geri çekme akışlarının gerçekten çalıştığını test et.
|
|
16
|
+
- Bulguları veri türü, etki, kanıt ve teknik azaltımla raporla; hukuki inceleme gereğini ayır.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: property-based-testing
|
|
3
|
+
description: Çok sayıda üretilmiş girdide değişmezleri ve sınırları doğrula; parser, dönüşüm ve algoritma testlerinde kullan.
|
|
4
|
+
category: testing
|
|
5
|
+
appliesTo: [implement, review]
|
|
6
|
+
match: [property based testing, property test, özellik tabanlı test, quickcheck, hypothesis, fast-check, invariant, fuzz]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Özellik Tabanlı Test
|
|
10
|
+
|
|
11
|
+
- Örnek çıktılar yerine değişmezi tanımla: round-trip, idempotency, sıralama, korunum veya referans model.
|
|
12
|
+
- Üreticiyi geçerli alanı temsil edecek şekilde kur; boş, uç, Unicode ve büyük değerleri ağırlıklandır.
|
|
13
|
+
- Geçersiz girdiyi ayrı özellikte ve beklenen hata sınıfıyla test et.
|
|
14
|
+
- Küçültmenin anlaşılır minimal karşı örnek ürettiğini kontrol et.
|
|
15
|
+
- Seed ve başarısız örneği kaydet; regresyon için sabit örneğe dönüştür.
|
|
16
|
+
- Sonsuz/çok pahalı vakaları boyut sınırıyla denetle ve özelliğin hatalı uygulamayı gerçekten yakaladığını sınayarak doğrula.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: pull-request-writing
|
|
3
|
+
description: İncelenebilir kapsam, gerekçe ve doğrulama içeren pull request açıklaması hazırla; PR açma veya güncellemede kullan.
|
|
4
|
+
category: documentation
|
|
5
|
+
appliesTo: [implement, review]
|
|
6
|
+
match: [pull request, pr description, merge request, değişiklik özeti, reviewer, inceleme açıklaması]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Pull Request Yazımı
|
|
10
|
+
|
|
11
|
+
- Başlığı kullanıcı etkisini anlatan tek bir değişikliğe odakla.
|
|
12
|
+
- Özette sorunu, çözüm yaklaşımını ve neden bu kapsamın seçildiğini kısa yaz.
|
|
13
|
+
- Davranış değişikliklerini, önemli dosyaları ve özellikle incelenmesi gereken riskli noktaları belirt.
|
|
14
|
+
- Çalıştırılan testleri gerçek komut ve sonuçla listele; çalıştırılmayan kontrolü açıkça söyle.
|
|
15
|
+
- UI değişiminde görsel kanıtı, veri/API değişiminde migration ve uyumluluk notunu ekle.
|
|
16
|
+
- İlgili issue'yu bağla; büyük log, dosya listesi veya commit mesajlarını aynen tekrarlama.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: refactoring
|
|
3
|
+
description: Dış davranışı koruyarak kod yapısını küçük ve kanıtlanabilir adımlarla iyileştir; sadeleştirme işlerinde kullan.
|
|
4
|
+
category: software
|
|
5
|
+
appliesTo: [plan, implement, review]
|
|
6
|
+
match: [refactor, refactoring, yeniden düzenleme, sadeleştir, simplify, cleanup, clean code, duplication]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Refactoring
|
|
10
|
+
|
|
11
|
+
1. Korunacak gözlemlenebilir davranışı ve mevcut test güvenlik ağını belirle.
|
|
12
|
+
2. Somut kokuyu seç: tekrar, uzun işlev, yanlış sorumluluk, örtük bağımlılık veya gereksiz soyutlama.
|
|
13
|
+
3. Her adımda tek yapısal değişiklik yap; özellik ekleme ve davranış düzeltmesini ayrı tut.
|
|
14
|
+
4. Önce mevcut kavram ve yardımcıları yeniden kullan; spekülatif katman ekleme.
|
|
15
|
+
5. Her küçük adım sonrası ilgili test ve statik kontrolleri çalıştır.
|
|
16
|
+
6. Diff büyüdükçe kapsamı yeniden değerlendir; daha az kod ve daha açık bağımlılık hedefle.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: release-readiness
|
|
3
|
+
description: Bir sürümün kalite, güvenlik, geçiş ve geri dönüş hazırlığını kanıtlarla denetle; yayın öncesinde kullan.
|
|
4
|
+
category: software
|
|
5
|
+
appliesTo: [plan, review]
|
|
6
|
+
match: [release readiness, sürüm hazırlığı, go live, production release, yayın, deploy checklist, rollout]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Sürüm Hazırlığı
|
|
10
|
+
|
|
11
|
+
- Kapsamı ve kabul kriterlerini sürüm adayındaki gerçek commit/artefaktla eşleştir.
|
|
12
|
+
- Zorunlu test, build, güvenlik ve uyumluluk kontrollerinin güncel kanıtını doğrula.
|
|
13
|
+
- Yapılandırma, sır, migration, veri yedeği ve bağımlı servis ön koşullarını kontrol et.
|
|
14
|
+
- Kademeli rollout, sağlık metriği, gözlem süresi, durdurma eşiği ve geri alma adımını tanımla.
|
|
15
|
+
- Changelog, kullanıcı iletişimi, runbook ve destek sahipliğini doğrula.
|
|
16
|
+
- Bilinmeyenleri risk/etki/sahip ile kaydet ve sonunda READY, CONDITIONAL veya NOT READY kararı ver.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: responsive-design
|
|
3
|
+
description: İçeriğe göre akışkan, mobile-first ve zoom dayanıklı düzen kur; responsive CSS ve çoklu ekran işlerinde kullan.
|
|
4
|
+
category: design
|
|
5
|
+
appliesTo: [plan, implement, review]
|
|
6
|
+
match: [responsive, duyarlı tasarım, mobile first, breakpoint, media query, viewport, tablet, reflow]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Responsive Tasarım
|
|
10
|
+
|
|
11
|
+
- En dar anlamlı görünümden başla; içerik önceliğini koruyarak progressive enhancement uygula.
|
|
12
|
+
- Sabit genişlik yerine grid/flex, min/max, `clamp()` ve doğal wrapping kullan.
|
|
13
|
+
- Breakpoint'i cihaz adına değil içeriğin bozulduğu noktaya koy; gereksiz varyant üretme.
|
|
14
|
+
- Dokunma hedefi, okuma genişliği, görsel oranı, tablo ve navigasyon davranışını ayrı çöz.
|
|
15
|
+
- Yatay kaydırmayı yalnız gerçekten iki boyutlu içerikte kontrollü kullan.
|
|
16
|
+
- 320px'den geniş ekrana, %400 zoom'a, uzun metne, RTL'ye ve ekran klavyesine kadar test et.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: secrets-management
|
|
3
|
+
description: Anahtar, token ve parolaları koddan ayırıp en az yetkiyle döndür; secret veya credential işlerinde kullan.
|
|
4
|
+
category: security
|
|
5
|
+
appliesTo: [plan, implement, review]
|
|
6
|
+
match: [secret, sır, api key, token, credential, kimlik bilgisi, password, parola, vault, rotation]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Sır Yönetimi
|
|
10
|
+
|
|
11
|
+
- Sır envanterini, sahibini, tüketicisini ve gereken en dar yetkiyi belirle.
|
|
12
|
+
- Sırrı kod, git geçmişi, örnek config, log, hata, build artefaktı veya istemci paketinde tutma.
|
|
13
|
+
- Çalışma ortamının güvenli secret store/enjeksiyon mekanizmasını kullan; dosya ve process görünürlüğünü sınırla.
|
|
14
|
+
- Kısa ömürlü kimlik ve otomatik rotation'ı statik uzun ömürlü anahtara tercih et.
|
|
15
|
+
- Eksik/bozuk sırda güvenli biçimde fail et ve değeri maskeleyerek tanıla.
|
|
16
|
+
- Sızıntıda iptal, döndürme, geçmiş temizliği ve etki incelemesi adımlarını tanımlayıp test et.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: secure-file-upload
|
|
3
|
+
description: Dosya yüklemeyi tür, boyut, ad, depolama ve sunum sınırlarıyla güvenli kur; upload ve attachment işlerinde kullan.
|
|
4
|
+
category: security
|
|
5
|
+
appliesTo: [plan, implement, review]
|
|
6
|
+
match: [file upload, dosya yükleme, attachment, multipart, mime, image upload, path traversal]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Güvenli Dosya Yükleme
|
|
10
|
+
|
|
11
|
+
1. İzin verilen iş amaçlı türleri, dosya/adet boyutunu ve kullanıcı kotasını allowlist ile sınırla.
|
|
12
|
+
2. Uzantı, MIME ve magic byte'ı birlikte kontrol et; istemci adına veya Content-Type'a güvenme.
|
|
13
|
+
3. Sunucu tarafında rastgele dosya adı üret, yolu kanonikleştir ve web root dışında depola.
|
|
14
|
+
4. İçeriği mümkünse yeniden kodla/tara; arşiv açmada oran, derinlik ve yol sınırı uygula.
|
|
15
|
+
5. İndirmeyi güvenli header, ayrı origin ve yetki kontrolüyle sun; aktif içeriği inline çalıştırma.
|
|
16
|
+
6. Eksik, sahte, büyük, çift uzantılı ve eşzamanlı yükleme vakalarını test et.
|