From cfaab74e174ddf1e8999fa5a40781ec9be2e4f2c Mon Sep 17 00:00:00 2001 From: Deepthit-23 Date: Thu, 11 Jun 2026 23:08:23 +0530 Subject: [PATCH] fix: resolve syntax bugs and settings.REDIS_URL attribute errors - Replace em dash (U+2013) with hyphen in tracker.py docstring- Remove duplicate merged __init__ docstring in tracker.py - Fix settings.REDIS_URL -> settings.redis_url across codebase(pydantic BaseSettings normalizes field names to lowercase)Fixes #<149> --- apps/backend/dependencies.py | 2 +- benchmark.py | 4 ++-- scripts/export_finetuning_dataset.py | 2 +- scripts/inspect_tracks.py | 2 +- services/tracking/tracker.py | 12 +----------- tests/test_inspect_tracks.py | 4 ++-- 6 files changed, 8 insertions(+), 18 deletions(-) diff --git a/apps/backend/dependencies.py b/apps/backend/dependencies.py index b6ff0ae..2ec0686 100644 --- a/apps/backend/dependencies.py +++ b/apps/backend/dependencies.py @@ -8,7 +8,7 @@ async def get_redis_client() -> aioredis.Redis: """Get or create Redis client from REDIS_URL env var.""" global _redis_client if _redis_client is None: - redis_url = os.getenv("REDIS_URL", settings.REDIS_URL) + redis_url = os.getenv("REDIS_URL", settings.redis_url) _redis_client = await aioredis.from_url(redis_url, decode_responses=True) return _redis_client diff --git a/benchmark.py b/benchmark.py index d6c22b4..eba451d 100644 --- a/benchmark.py +++ b/benchmark.py @@ -11,7 +11,7 @@ from ultralytics import YOLO # <-- FIX: Loaded successfully class PipelineBenchmark: - def __init__(self, redis_url=settings.REDIS_URL): + def __init__(self, redis_url=settings.redis_url): self.redis_url = redis_url self.metrics = { "detection_times": [], @@ -314,7 +314,7 @@ def run_comparative_benchmark(benchrunner, models, num_frames=100): parser.add_argument("--frames", type=int, default=100, help="Number of frames to benchmark") args = parser.parse_args() - REDIS_ENV_URL = os.getenv("REDIS_URL", settings.REDIS_URL) + REDIS_ENV_URL = os.getenv("REDIS_URL", settings.redis_url) benchrunner = PipelineBenchmark(redis_url=REDIS_ENV_URL) if args.model: diff --git a/scripts/export_finetuning_dataset.py b/scripts/export_finetuning_dataset.py index 5fe4ff9..0c6754d 100644 --- a/scripts/export_finetuning_dataset.py +++ b/scripts/export_finetuning_dataset.py @@ -65,7 +65,7 @@ def parse_args(): parser.add_argument( "--redis-url", - default=os.getenv("REDIS_URL", settings.REDIS_URL), + default=os.getenv("REDIS_URL", settings.redis_url), help="Redis connection URL (default: env REDIS_URL or localhost:6379)" ) parser.add_argument( diff --git a/scripts/inspect_tracks.py b/scripts/inspect_tracks.py index 0c523d5..8c4698a 100644 --- a/scripts/inspect_tracks.py +++ b/scripts/inspect_tracks.py @@ -21,7 +21,7 @@ import redis DEFAULT_CAMERA_ID = "cam_01" -DEFAULT_REDIS_URL = settings.REDIS_URL +DEFAULT_REDIS_URL = settings.redis_url @dataclass diff --git a/services/tracking/tracker.py b/services/tracking/tracker.py index 6d636d4..58d33bb 100644 --- a/services/tracking/tracker.py +++ b/services/tracking/tracker.py @@ -72,16 +72,6 @@ def __init__( reid_similarity_threshold: float = 0.85, max_interpolation_gap: int = 10, # Added with a sensible default ) -> None: - """Initialize the Tracker with DeepSort backend and internal state. - - Args: - fps: Frames per second of the input stream. - max_age: Frames before a lost track is marked DEAD. - n_init: Frames before a track is CONFIRMED. - max_cosine_distance: ReID appearance distance threshold. - camera_id: Identifier for the camera feed. - event_logger: Optional logger for lifecycle events. - reid_similarity_threshold: Cosine similarity cutoff for ReID matching. """Initialize the tracker with DeepSort hyperparameters and interpolation constraints. Args: @@ -139,7 +129,7 @@ def update( Args: det_frame: Output of Phase 1 detector (DetectionFrameSchema). - raw_frame: Original BGR frame – needed for appearance features. + raw_frame: Original BGR frame - needed for appearance features. Returns: A ``TrackedFrame`` containing all confirmed tracks for this frame, diff --git a/tests/test_inspect_tracks.py b/tests/test_inspect_tracks.py index f212c7e..48cbb88 100644 --- a/tests/test_inspect_tracks.py +++ b/tests/test_inspect_tracks.py @@ -170,7 +170,7 @@ def test_json_payload_is_machine_readable(fake_redis): encoded = json.dumps(payload) decoded = json.loads(encoded) - assert decoded["redis_url"] == settings.REDIS_URL + assert decoded["redis_url"] == settings.redis_url assert "secret" not in encoded assert decoded["tracks"][0]["track_id"] == 3 assert decoded["tracks"][0]["events"][0]["event"] == "BORN" @@ -184,7 +184,7 @@ def test_text_render_includes_detail_rows_for_single_track(fake_redis): output = render_text( summaries, camera_id="cam_01", - redis_url=settings.REDIS_URL, + redis_url=settings.redis_url, show_event_rows=True, )