Kurallar

Project Doctor'ın çalıştırdığı 95 kuralın listesi. Her kural için kanıt durumu, tarayıcıda çalışıp çalışmadığı ve varsayılan durumu yazılı.

Doğrulanmadı ne demek

Bir kural yalnız kendi örnek dosyasında, örnek uygulamada ya da bu aracın kendi kaynağında ateşlendiyse doğrulanmamış sayılır; gerçek bir projede ya da dış bir örneklemde hiç ateşlenmediyse. Bunlardan 44 kural var ve hepsi aşağıda işaretli.

Doğrulandı, hatasız demek değildir; kuralın en az bir gerçek projede çalıştığını söyler.

Tarayıcıda

93 kural varsayılan olarak açık. Bunların 4 tanesi .git klasörü olmadan çalışmaz; kalanların hepsi tarayıcıda çalışır. 2 kural varsayılan olarak kapalı: biri ağ ister, biri ölçümde hiçbir şey yakalamadığı için kapatıldı. 7 deneysel ölçek kuralı bu sitede yok.

95 kural
KuralGrupKanıtTarayıcıdaVarsayılan
ai-risk/assistant-config-trackedYapay zekâyla geliştirme riskiDoğrulandıYalnız .git klasörüyleAçık
ai-risk/comment-code-imbalanceYapay zekâyla geliştirme riskiDoğrulanmadıÇalışırAçık
ai-risk/competing-patternsYapay zekâyla geliştirme riskiDoğrulanmadıÇalışırAçık
ai-risk/inconsistent-error-shapeYapay zekâyla geliştirme riskiDoğrulanmadıÇalışırAçık
ai-risk/orphaned-fileYapay zekâyla geliştirme riskiDoğrulandıÇalışırAçık
ai-risk/placeholder-in-production-pathYapay zekâyla geliştirme riskiDoğrulanmadıÇalışırAçık
ai-risk/redundant-implementationYapay zekâyla geliştirme riskiDoğrulandıÇalışırAçık
ai-risk/unfinished-work-accumulationYapay zekâyla geliştirme riskiDoğrulanmadıÇalışırAçık
architecture/circular-dependencyMimariDoğrulanmadıÇalışırAçık
architecture/db-in-client-layerMimariDoğrulanmadıÇalışırAçık
architecture/god-moduleMimariDoğrulandıÇalışırAçık
architecture/hub-moduleMimariDoğrulanmadıÇalışırAçık
dependencies/floating-versionBağımlılıklarDoğrulanmadıÇalışırAçık
dependencies/known-vulnerabilityBağımlılıklarDoğrulanmadıÇalışırKapalı (--online)
dependencies/missing-lockfileBağımlılıklarDoğrulandıÇalışırAçık
dependencies/unusedBağımlılıklarDoğrulandıÇalışırAçık
devops/docker-runs-as-rootDağıtım ve ayarDoğrulandıÇalışırAçık
devops/docker-unpinned-base-imageDağıtım ve ayarDoğrulanmadıÇalışırAçık
devops/error-details-leakedDağıtım ve ayarDoğrulandıÇalışırAçık
devops/production-source-mapsDağıtım ve ayarDoğrulanmadıÇalışırAçık
documentation/incomplete-readmeBelgelerDoğrulandıÇalışırAçık
documentation/missing-readmeBelgelerDoğrulandıÇalışırAçık
missing/authorization-checkEksik önlemlerDoğrulandıÇalışırAçık
missing/ci-pipelineEksik önlemlerDoğrulandıYalnız .git klasörüyleAçık
missing/ci-security-scanEksik önlemlerDoğrulandıÇalışırAçık
missing/database-indexEksik önlemlerDoğrulandıÇalışırAçık
missing/env-exampleEksik önlemlerDoğrulandıÇalışırAçık
missing/error-handlingEksik önlemlerDoğrulandıÇalışırAçık
missing/input-validationEksik önlemlerDoğrulandıÇalışırAçık
missing/network-timeoutEksik önlemlerDoğrulandıÇalışırAçık
missing/rate-limitingEksik önlemlerDoğrulandıÇalışırAçık
missing/security-headersEksik önlemlerDoğrulandıÇalışırAçık
performance/async-foreachPerformansDoğrulanmadıÇalışırAçık
performance/blocking-sync-ioPerformansDoğrulandıÇalışırAçık
performance/n-plus-one-queryPerformansDoğrulanmadıÇalışırAçık
performance/sequential-awaitsPerformansDoğrulanmadıÇalışırAçık
performance/unawaited-mapPerformansDoğrulanmadıÇalışırAçık
performance/unbounded-cachePerformansDoğrulandıÇalışırAçık
performance/unbounded-queryPerformansDoğrulandıÇalışırAçık
quality/duplicated-blockKod kalitesiDoğrulandıÇalışırAçık
quality/hardcoded-fallback-connectionKod kalitesiDoğrulanmadıÇalışırAçık
quality/hardcoded-user-pathKod kalitesiDoğrulanmadıÇalışırAçık
quality/high-cognitive-complexityKod kalitesiDoğrulandıÇalışırAçık
quality/large-fileKod kalitesiDoğrulandıÇalışırAçık
quality/long-functionKod kalitesiDoğrulandıÇalışırAçık
quality/tangled-functionKod kalitesiDoğrulandıÇalışırAçık
quality/too-many-parametersKod kalitesiDoğrulandıÇalışırAçık
secrets/anthropic-keyGizli bilgilerDoğrulanmadıÇalışırAçık
secrets/aws-access-keyGizli bilgilerDoğrulandıÇalışırAçık
secrets/aws-secret-keyGizli bilgilerDoğrulandıÇalışırAçık
secrets/database-urlGizli bilgilerDoğrulanmadıÇalışırAçık
secrets/env-fallback-literalGizli bilgilerDoğrulandıÇalışırAçık
secrets/env-file-committedGizli bilgilerDoğrulanmadıYalnız .git klasörüyleAçık
secrets/env-not-ignoredGizli bilgilerDoğrulanmadıYalnız .git klasörüyleAçık
secrets/github-tokenGizli bilgilerDoğrulandıÇalışırAçık
secrets/google-api-keyGizli bilgilerDoğrulanmadıÇalışırAçık
secrets/hardcoded-credentialGizli bilgilerDoğrulandıÇalışırAçık
secrets/npm-tokenGizli bilgilerDoğrulanmadıÇalışırAçık
secrets/openai-keyGizli bilgilerDoğrulanmadıÇalışırAçık
secrets/private-keyGizli bilgilerDoğrulanmadıÇalışırAçık
secrets/public-env-prefix-on-secretGizli bilgilerDoğrulanmadıÇalışırAçık
secrets/sendgrid-keyGizli bilgilerDoğrulanmadıÇalışırAçık
secrets/server-secret-in-client-fileGizli bilgilerDoğrulanmadıÇalışırAçık
secrets/slack-tokenGizli bilgilerDoğrulanmadıÇalışırAçık
secrets/slack-webhookGizli bilgilerDoğrulanmadıÇalışırAçık
secrets/stripe-restricted-keyGizli bilgilerDoğrulanmadıÇalışırAçık
secrets/stripe-secret-keyGizli bilgilerDoğrulandıÇalışırAçık
secrets/supabase-service-roleGizli bilgilerDoğrulanmadıÇalışırAçık
secrets/twilio-keyGizli bilgilerDoğrulanmadıÇalışırAçık
secrets/vercel-tokenGizli bilgilerDoğrulanmadıÇalışırAçık
security/command-injectionGüvenlikDoğrulandıÇalışırAçık
security/cors-credentials-wildcardGüvenlikDoğrulandıÇalışırAçık
security/csrf-missingGüvenlikDoğrulanmadıÇalışırAçık
security/dangerous-evalGüvenlikDoğrulandıÇalışırAçık
security/debug-enabledGüvenlikDoğrulanmadıÇalışırAçık
security/file-uploadGüvenlikDoğrulandıÇalışırAçık
security/idor-unscoped-queryGüvenlikDoğrulanmadıÇalışırKapalı (--experimental-idor)
security/insecure-cookieGüvenlikDoğrulandıÇalışırAçık
security/insecure-randomnessGüvenlikDoğrulandıÇalışırAçık
security/insecure-transportGüvenlikDoğrulanmadıÇalışırAçık
security/jwt-decode-without-verifyGüvenlikDoğrulanmadıÇalışırAçık
security/path-traversalGüvenlikDoğrulandıÇalışırAçık
security/sensitive-loggingGüvenlikDoğrulandıÇalışırAçık
security/sql-injectionGüvenlikDoğrulandıÇalışırAçık
security/ssrfGüvenlikDoğrulandıÇalışırAçık
security/supabase-rlsGüvenlikDoğrulanmadıÇalışırAçık
security/unsafe-deserializationGüvenlikDoğrulanmadıÇalışırAçık
security/verify-disabledGüvenlikDoğrulanmadıÇalışırAçık
security/weak-hashGüvenlikDoğrulandıÇalışırAçık
security/xss-dangerous-htmlGüvenlikDoğrulandıÇalışırAçık
security/xss-inner-htmlGüvenlikDoğrulandıÇalışırAçık
security/xss-reflectedGüvenlikDoğrulandıÇalışırAçık
testing/critical-path-untestedTestDoğrulandıÇalışırAçık
testing/no-testsTestDoğrulandıÇalışırAçık
testing/weak-assertionsTestDoğrulanmadıÇalışırAçık