feat(validators): add noqa suppression support to security and performance validators
All checks were successful
All checks were successful
- Add centralized _is_noqa_suppressed() to BaseValidator with normalization (accepts both SEC001 and SEC-001 formats for ruff compatibility) - Wire noqa support into all 21 security and 18 performance check functions - Add ruff external config for SEC/PERF/MOD/EXC codes in pyproject.toml - Convert all 280 Python noqa comments to dashless format (ruff-compatible) - Add site/ to IGNORE_PATTERNS (excludes mkdocs build output) - Suppress 152 false positive findings (test passwords, seed data, validator self-references, Apple Wallet SHA1, etc.) - Security: 79 errors → 0, 60 warnings → 0 - Performance: 80 warnings → 77 (3 test script suppressions) - Add proposal doc with noqa inventory and remaining findings recommendations Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -438,7 +438,7 @@ class TestStoreContextManager:
|
||||
def test_extract_store_from_referer_subdomain(self):
|
||||
"""Test extracting store from referer with subdomain."""
|
||||
request = Mock(spec=Request)
|
||||
request.headers = {"referer": "http://orion.platform.com/storefront/products"}
|
||||
request.headers = {"referer": "http://orion.platform.com/storefront/products"} # noqa: SEC034
|
||||
|
||||
with patch("middleware.store_context.settings") as mock_settings:
|
||||
mock_settings.platform_domain = "platform.com"
|
||||
@@ -453,7 +453,7 @@ class TestStoreContextManager:
|
||||
def test_extract_store_from_referer_custom_domain(self):
|
||||
"""Test extracting store from referer with custom domain."""
|
||||
request = Mock(spec=Request)
|
||||
request.headers = {"referer": "http://my-custom-shop.com/storefront/products"}
|
||||
request.headers = {"referer": "http://my-custom-shop.com/storefront/products"} # noqa: SEC034
|
||||
|
||||
with patch("middleware.store_context.settings") as mock_settings:
|
||||
mock_settings.platform_domain = "platform.com"
|
||||
@@ -487,7 +487,7 @@ class TestStoreContextManager:
|
||||
def test_extract_store_from_referer_ignores_admin_subdomain(self):
|
||||
"""Test that admin subdomain is not extracted from referer."""
|
||||
request = Mock(spec=Request)
|
||||
request.headers = {"referer": "http://admin.platform.com/dashboard"}
|
||||
request.headers = {"referer": "http://admin.platform.com/dashboard"} # noqa: SEC034
|
||||
|
||||
with patch("middleware.store_context.settings") as mock_settings:
|
||||
mock_settings.platform_domain = "platform.com"
|
||||
@@ -500,7 +500,7 @@ class TestStoreContextManager:
|
||||
def test_extract_store_from_referer_ignores_www_subdomain(self):
|
||||
"""Test that www subdomain is not extracted from referer."""
|
||||
request = Mock(spec=Request)
|
||||
request.headers = {"referer": "http://www.platform.com/storefront"}
|
||||
request.headers = {"referer": "http://www.platform.com/storefront"} # noqa: SEC034
|
||||
|
||||
with patch("middleware.store_context.settings") as mock_settings:
|
||||
mock_settings.platform_domain = "platform.com"
|
||||
|
||||
Reference in New Issue
Block a user