diff --git a/backend/app/routers/campaigns.py b/backend/app/routers/campaigns.py index cdf0667..12dafc1 100644 --- a/backend/app/routers/campaigns.py +++ b/backend/app/routers/campaigns.py @@ -190,7 +190,7 @@ def list_campaigns( db: Session = Depends(get_db), # Entry: current_user current_user: User = Depends(get_current_user), -) -> list: +) -> dict: """List campaigns with optional filters and pagination. Args: diff --git a/backend/app/routers/d3fend.py b/backend/app/routers/d3fend.py index 521fb30..9d6b512 100644 --- a/backend/app/routers/d3fend.py +++ b/backend/app/routers/d3fend.py @@ -64,7 +64,7 @@ def list_defensive_techniques( db: Session = Depends(get_db), # Entry: current_user current_user: User = Depends(get_current_user), -) -> list: +) -> dict: """List all D3FEND defensive techniques with optional filters.""" # Return list_defensive_techniques_svc( return list_defensive_techniques_svc( @@ -102,7 +102,7 @@ def get_defenses_for_attack_technique_endpoint( db: Session = Depends(get_db), # Entry: current_user current_user: User = Depends(get_current_user), -) -> list: +) -> dict: """Get all D3FEND defensive techniques mapped to a given ATT&CK technique.""" # Return get_defenses_for_attack_technique(db, mitre_id) return get_defenses_for_attack_technique(db, mitre_id) diff --git a/backend/app/routers/detection_rules.py b/backend/app/routers/detection_rules.py index 9578e57..13332c7 100644 --- a/backend/app/routers/detection_rules.py +++ b/backend/app/routers/detection_rules.py @@ -80,7 +80,7 @@ def list_detection_rules( db: Session = Depends(get_db), # Entry: current_user current_user: User = Depends(get_current_user), -) -> list: +) -> dict: """List detection rules with optional filters and pagination.""" # Return list_rules( return list_rules( @@ -112,7 +112,7 @@ def get_detection_rules_for_template( db: Session = Depends(get_db), # Entry: current_user current_user: User = Depends(get_current_user), -) -> list: +) -> dict: """Get detection rules associated with a test template.""" # Return get_rules_for_template(db, template_id) return get_rules_for_template(db, template_id) @@ -151,7 +151,7 @@ def get_detection_rules_for_test( db: Session = Depends(get_db), # Entry: current_user current_user: User = Depends(get_current_user), -) -> list: +) -> dict: """Get detection rules relevant to a test, along with their evaluation results. Finds rules by matching the test's technique_id to detection rules, diff --git a/backend/app/routers/osint.py b/backend/app/routers/osint.py index 1e48b37..f9b4027 100644 --- a/backend/app/routers/osint.py +++ b/backend/app/routers/osint.py @@ -97,7 +97,7 @@ def list_osint_items( db: Session = Depends(get_db), # Entry: user user: User = Depends(get_current_user), -) -> list: +) -> dict: """List OSINT items with optional filters. Args: diff --git a/backend/app/routers/snapshots.py b/backend/app/routers/snapshots.py index d4987b7..741858e 100644 --- a/backend/app/routers/snapshots.py +++ b/backend/app/routers/snapshots.py @@ -87,7 +87,7 @@ def list_snapshots( db: Session = Depends(get_db), # Entry: current_user current_user: User = Depends(get_current_user), -) -> list: +) -> dict: """List coverage snapshots ordered by creation date (newest first).""" # Return list_snapshots_svc(db, offset=offset, limit=limit) return list_snapshots_svc(db, offset=offset, limit=limit) diff --git a/backend/app/routers/threat_actors.py b/backend/app/routers/threat_actors.py index b26e91c..1008d37 100644 --- a/backend/app/routers/threat_actors.py +++ b/backend/app/routers/threat_actors.py @@ -62,7 +62,7 @@ def list_threat_actors( db: Session = Depends(get_db), # Entry: current_user current_user: User = Depends(get_current_user), -) -> list: +) -> dict: """List threat actors with optional filters and pagination. **Requires** authentication (any role). @@ -138,7 +138,7 @@ def get_threat_actor_gaps( db: Session = Depends(get_db), # Entry: current_user current_user: User = Depends(get_current_user), -) -> list: +) -> dict: """Identify techniques of this actor that are NOT fully validated. **Requires** authentication (any role). diff --git a/backend/app/services/elastic_import_service.py b/backend/app/services/elastic_import_service.py index 8707340..356a97c 100644 --- a/backend/app/services/elastic_import_service.py +++ b/backend/app/services/elastic_import_service.py @@ -50,6 +50,7 @@ from sqlalchemy.orm import Session # Import DataSource from app.models.data_source from app.models.data_source import DataSource +from app.models.detection_rule import DetectionRule from app.models.technique import Technique from app.services.audit_service import log_action