laravel-verification
Verification loop for Laravel projects: env checks, linting, static analysis, tests with coverage, security scans, and deployment readiness.
它会碰到什么
逐条看命中(1 条严重或高危)
- 严重
SKILL.md:34cred-paths- `.env`'nin mevcut olduğunu ve gerekli anahtarların var olduğunu doğrulayın
这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。
技能内容
Laravel Doğrulama Döngüsü
PR'lardan önce, büyük değişikliklerden sonra ve deployment öncesi çalıştırın.
Ne Zaman Kullanılır
- Laravel projesi için pull request açmadan önce
- Büyük refactoring'ler veya bağımlılık yükseltmelerinden sonra
- Staging veya production için deployment öncesi doğrulama
- Tam lint -> test -> güvenlik -> deployment hazırlık pipeline'ı çalıştırma
Nasıl Çalışır
- Her katmanın bir öncekinin üzerine inşa edilmesi için fazları sırayla ortam kontrollerinden deployment hazırlığına kadar çalıştırın.
- Ortam ve Composer kontrolleri her şeyi kapsar; başarısız olurlarsa hemen durun.
- Tam testleri ve kapsamı çalıştırmadan önce linting/static analiz temiz olmalıdır.
- Güvenlik ve migration incelemeleri testlerden sonra olur, böylece veri veya yayın adımlarından önce davranışı doğrularsınız.
- Build/deployment hazırlığı ve kuyruk/zamanlayıcı kontrolleri son kapılardır; herhangi bir başarısızlık yayını engeller.
Faz 1: Ortam Kontrolleri
php -v
composer --version
php artisan --version
.env'nin mevcut olduğunu ve gerekli anahtarların var olduğunu doğrulayın- Production ortamları için
APP_DEBUG=falseonaylayın APP_ENV'in hedef deployment'la eşleştiğini onaylayın (production,staging)
Yerel olarak Laravel Sail kullanıyorsanız:
./vendor/bin/sail php -v
./vendor/bin/sail artisan --version
Faz 1.5: Composer ve Autoload
composer validate
composer dump-autoload -o
Faz 2: Linting ve Static Analiz
vendor/bin/pint --test
vendor/bin/phpstan analyse
Projeniz PHPStan yerine Psalm kullanıyorsa:
vendor/bin/psalm
Faz 3: Testler ve Kapsam
php artisan test
Kapsam (CI):
XDEBUG_MODE=coverage php artisan test --coverage
CI örneği (format -> static analiz -> testler):
vendor/bin/pint --test
vendor/bin/phpstan analyse
XDEBUG_MODE=coverage php artisan test --coverage
Faz 4: Güvenlik ve Bağımlılık Kontrolleri
composer audit
Faz 5: Database ve Migration'lar
php artisan migrate --pretend
php artisan migrate:status
- Yıkıcı migration'ları dikkatle inceleyin
- Migration dosya isimlerinin
Y_m_d_His_*formatını takip ettiğinden emin olun (örn.2025_03_14_154210_create_orders_table.php) ve değişikliği net bir şekilde açıklasın - Rollback'lerin mümkün olduğundan emin olun
down()metotlarını doğrulayın ve açık yedeklemeler olmadan geri alınamaz veri kaybından kaçının
Faz 6: Build ve Deployment Hazırlığı
php artisan optimize:clear
php artisan config:cache
php artisan route:cache
php artisan view:cache
- Cache warmup'larının production yapılandırmasında başarılı olduğundan emin olun
- Kuyruk worker'larının ve zamanlayıcının yapılandırıldığını doğrulayın
- Hedef ortamda
storage/vebootstrap/cache/'in yazılabilir olduğunu onaylayın
Faz 7: Kuyruk ve Zamanlayıcı Kontrolleri
php artisan schedule:list
php artisan queue:failed
Horizon kullanılıyorsa:
php artisan horizon:status
queue:monitor mevcutsa, job'ları işlemeden biriktirmeyi kontrol etmek için kullanın:
php artisan queue:monitor default --max=100
Aktif doğrulama (sadece staging): özel bir kuyruğa no-op job dispatch edin ve işlemek için tek bir worker çalıştırın (non-sync kuyruk bağlantısının yapılandırıldığından emin olun).
php artisan tinker --execute="dispatch((new App\\Jobs\\QueueHealthcheck())->onQueue('healthcheck'))"
php artisan queue:work --once --queue=healthcheck
Job'un beklenen yan etkiyi ürettiğini doğrulayın (log girişi, healthcheck tablo satırı veya metrik).
Bunu sadece test job'u işlemenin güvenli olduğu non-production ortamlarında çalıştırın.
Örnekler
Minimal akış:
php -v
composer --version
php artisan --version
composer validate
vendor/bin/pint --test
vendor/bin/phpstan analyse
php artisan test
composer audit
php artisan migrate --pretend
php artisan config:cache
php artisan queue:failed
CI tarzı pipeline:
composer validate
composer dump-autoload -o
vendor/bin/pint --test
vendor/bin/phpstan analyse
XDEBUG_MODE=coverage php artisan test --coverage
composer audit
php artisan migrate --pretend
php artisan optimize:clear
php artisan config:cache
php artisan route:cache
php artisan view:cache
php artisan schedule:list想直接用这个技能?
本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。
同名技能的其他版本
有 5 个不同仓库或目录里都有叫 laravel-verification 的技能。它们内容并不相同,别混用:
- affaan-m/ECC — Bucle de verificación para proyectos Laravel: verificaciones de entorno, linting, análisis
- affaan-m/ECC — 日本語翻訳:このファイルは laravel-verification 用の日本語翻訳が必要です
- affaan-m/ECC — Verification loop for Laravel projects: env checks, linting, static analysis, tests with c
- affaan-m/ECC — Verification loop for Laravel projects: env checks, linting, static analysis, tests with c