Skip to content

Commit 5f52e51

Browse files
committed
Fix lint warnings and repository ignores
1 parent bd256aa commit 5f52e51

7 files changed

Lines changed: 14 additions & 9 deletions

File tree

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ __pycache__/
33
*.py[cod]
44
*.so
55
.pytest_cache/
6+
.ruff_cache/
67
.mypy_cache/
78
.coverage
89
htmlcov/
@@ -19,6 +20,7 @@ dist/
1920

2021
# Local generated handbook (large, not intended for GitHub)
2122
MALFORGE_COMPLETE_PROJECT_HANDBOOK.md
23+
.codex-handbook-deps/
2224

2325
# Generated project outputs
2426
output/sigma/*

converters/wazuh_converter.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,12 @@
88
from typing import MutableMapping
99
import xml.etree.ElementTree as ET
1010

11-
from core.constants import SIGMA_TO_WAZUH_LEVEL, WAZUH_CUSTOM_RULE_ID_RANGE, WAZUH_RULE_ID_END, WAZUH_RULE_ID_START
11+
from core.constants import SIGMA_TO_WAZUH_LEVEL, WAZUH_CUSTOM_RULE_ID_RANGE
1212
from core.models import SigmaRule, WazuhRule
1313

1414
DEFAULT_GROUP_NAME = "malware_behavior_detection_generator,"
15+
WAZUH_RULE_ID_START = WAZUH_CUSTOM_RULE_ID_RANGE.start
16+
WAZUH_RULE_ID_END = WAZUH_CUSTOM_RULE_ID_RANGE.stop - 1
1517

1618
WINDOWS_LOGSOURCE_MAPPING = {
1719
"process_creation": {"group": "sysmon,process_creation,", "decoded_as": None, "if_sid": 61603},

quality/validator.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ def validate_sigma_rules(rules: list[SigmaRule] | None) -> list[ValidationResult
9898
rule_list = rules or []
9999
results = [validate_sigma_rule(rule) for rule in rule_list]
100100
duplicate_ids = {rule_id for rule_id, count in Counter(rule.rule_id for rule in rule_list).items() if count > 1}
101-
for rule, result in zip(rule_list, results):
101+
for rule, result in zip(rule_list, results, strict=True):
102102
if rule.rule_id in duplicate_ids:
103103
result.errors.append(f"Duplicate Sigma rule ID: {rule.rule_id}.")
104104
result.is_valid = False
@@ -173,7 +173,7 @@ def validate_wazuh_rules(rules: list[WazuhRule] | None) -> list[ValidationResult
173173
rule_list = rules or []
174174
results = [validate_wazuh_rule(rule) for rule in rule_list]
175175
duplicate_ids = {rule_id for rule_id, count in Counter(rule.rule_id for rule in rule_list).items() if count > 1}
176-
for rule, result in zip(rule_list, results):
176+
for rule, result in zip(rule_list, results, strict=True):
177177
if rule.rule_id in duplicate_ids:
178178
result.errors.append(f"Duplicate Wazuh rule ID: {rule.rule_id}.")
179179
result.is_valid = False

review/reviewer.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
from __future__ import annotations
44

55
from dataclasses import replace
6-
from typing import Any
76

87
from core.models import SigmaRule, WazuhRule
98

review/versioner.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
import hashlib
66
import json
7-
from dataclasses import asdict, replace
7+
from dataclasses import replace
88
from datetime import datetime, timezone
99
from typing import Any
1010

tests/test_reporting.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,6 @@
1313
from generators.sigma_generator import generate_sigma_rules
1414
from ioc.ioc_extractor import extract_all_iocs
1515
from ingestion.anyrun import parse_report as parse_anyrun_report
16-
from ingestion.cape import parse_report as parse_cape_report
17-
from ingestion.cuckoo import parse_report as parse_cuckoo_report
1816
from quality.risk_scorer import score_rule
1917
from quality.validator import validate_sigma_rules, validate_wazuh_rules
2018
from reporting.report_generator import generate_markdown_report
@@ -133,4 +131,4 @@ def test_missing_hashes_are_called_out_in_summary_and_report() -> None:
133131
assert summary["sample"]["hash_status"]["complete"] is False
134132
assert summary["sample"]["hash_status"]["missing"] == ["md5", "sha1", "sha256"]
135133
assert "## Source Data Limitations" in report
136-
assert "Missing payload hashes: md5, sha1, sha256" in report
134+
assert "Missing payload hashes: md5, sha1, sha256" in report

tests/test_repository_metadata.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,11 @@ def test_generated_handbook_is_ignored() -> None:
4949
if line.strip() and not line.lstrip().startswith("#")
5050
}
5151

52-
assert "MALFORGE_COMPLETE_PROJECT_HANDBOOK.md" in ignored_entries
52+
assert {
53+
"MALFORGE_COMPLETE_PROJECT_HANDBOOK.md",
54+
".codex-handbook-deps/",
55+
".ruff_cache/",
56+
} <= ignored_entries
5357

5458

5559
def test_repository_has_an_mit_license() -> None:

0 commit comments

Comments
 (0)