From c8029527659e89e966223548a9e59b189cc443f4 Mon Sep 17 00:00:00 2001 From: Viswamedha Nalabotu Date: Sun, 8 Mar 2026 13:10:49 +0000 Subject: [PATCH] Fixed imports to pep 8 conventions --- apps/accounts/admin.py | 4 ++-- .../management/commands/reset_passwords.py | 2 +- apps/accounts/managers.py | 3 ++- apps/accounts/migrations/0001_initial.py | 4 ++-- apps/accounts/models.py | 8 ++++---- apps/accounts/serializers.py | 3 ++- apps/accounts/viewsets.py | 4 +--- apps/knowledge/admin.py | 3 ++- apps/knowledge/migrations/0001_initial.py | 4 ++-- apps/knowledge/models.py | 9 ++++----- apps/knowledge/serializers.py | 2 +- apps/knowledge/tasks.py | 19 ++++++++----------- apps/knowledge/viewsets.py | 4 +--- apps/onboarding/admin.py | 2 +- apps/onboarding/mcp.py | 1 - apps/onboarding/migrations/0001_initial.py | 3 ++- apps/onboarding/models.py | 5 +++-- apps/onboarding/routing.py | 1 + apps/onboarding/serializers.py | 4 ++-- apps/onboarding/tests/test_consumers.py | 1 - 20 files changed, 41 insertions(+), 45 deletions(-) diff --git a/apps/accounts/admin.py b/apps/accounts/admin.py index 8e3269d..a5a66e8 100644 --- a/apps/accounts/admin.py +++ b/apps/accounts/admin.py @@ -1,9 +1,9 @@ from django.contrib import admin -from django.contrib.admin import ModelAdmin, TabularInline +from django.contrib.admin import ModelAdmin from django.contrib.auth.admin import UserAdmin as DjangoUserAdmin from django.contrib.auth.models import Group -from apps.accounts.models import User, Role, Organization, Invite +from apps.accounts.models import Invite, Organization, Role, User admin.site.unregister(Group) diff --git a/apps/accounts/management/commands/reset_passwords.py b/apps/accounts/management/commands/reset_passwords.py index 9a54dff..ed864c4 100644 --- a/apps/accounts/management/commands/reset_passwords.py +++ b/apps/accounts/management/commands/reset_passwords.py @@ -1,5 +1,5 @@ -from django.core.management.base import BaseCommand from django.contrib.auth import get_user_model +from django.core.management.base import BaseCommand User = get_user_model() diff --git a/apps/accounts/managers.py b/apps/accounts/managers.py index 43ce87a..6dacc21 100644 --- a/apps/accounts/managers.py +++ b/apps/accounts/managers.py @@ -1,6 +1,7 @@ +from typing import TYPE_CHECKING + from django.contrib.auth.hashers import make_password from django.contrib.auth.models import BaseUserManager -from typing import TYPE_CHECKING if TYPE_CHECKING: from apps.accounts.models import User diff --git a/apps/accounts/migrations/0001_initial.py b/apps/accounts/migrations/0001_initial.py index 1c12339..e0e8477 100644 --- a/apps/accounts/migrations/0001_initial.py +++ b/apps/accounts/migrations/0001_initial.py @@ -1,8 +1,8 @@ -import uuid +import uuid +import django.db.models.deletion from django.conf import settings from django.db import migrations, models -import django.db.models.deletion class Migration(migrations.Migration): diff --git a/apps/accounts/models.py b/apps/accounts/models.py index 482d557..28428c0 100644 --- a/apps/accounts/models.py +++ b/apps/accounts/models.py @@ -1,14 +1,14 @@ -from typing import ClassVar from datetime import timedelta +from typing import ClassVar from django.contrib.auth.models import AbstractBaseUser, PermissionsMixin from django.core.exceptions import ValidationError from django.db import transaction -from django.db.models import BooleanField, CASCADE, CharField, DateField, DateTimeField, EmailField, ForeignKey, IntegerField, ManyToManyField, Model, TextField +from django.db.models import CASCADE, BooleanField, CharField, DateField, DateTimeField, EmailField, ForeignKey, IntegerField, ManyToManyField, Model, TextField from django.db.models.signals import m2m_changed, post_delete, post_save from django.dispatch import receiver -from django.utils.translation import gettext_lazy as _ from django.utils import timezone +from django.utils.translation import gettext_lazy as _ from apps.accounts.managers import UserManager from apps.accounts.mixins import IdentifierMixin, TimeStampMixin @@ -111,7 +111,7 @@ class Role(IdentifierMixin, TimeStampMixin, Model): @receiver(post_save, sender=Role) def create_default_agents_for_role(sender, instance: Role, created: bool, **kwargs): if created: - from apps.onboarding.models import AgentConfig # L: circular import :( + from apps.onboarding.models import AgentConfig # L: circular import :( default_agents = [ { diff --git a/apps/accounts/serializers.py b/apps/accounts/serializers.py index e477df4..ac362cb 100644 --- a/apps/accounts/serializers.py +++ b/apps/accounts/serializers.py @@ -1,5 +1,6 @@ from rest_framework.serializers import ModelSerializer, SerializerMethodField -from apps.accounts.models import Role, User, Organization, Invite + +from apps.accounts.models import Invite, Organization, Role, User class UserSerializer(ModelSerializer): diff --git a/apps/accounts/viewsets.py b/apps/accounts/viewsets.py index 02a837b..c292fa2 100644 --- a/apps/accounts/viewsets.py +++ b/apps/accounts/viewsets.py @@ -2,12 +2,11 @@ from django.contrib.auth import authenticate, login, logout from django.core.exceptions import ValidationError as DjangoValidationError from django.db import IntegrityError, transaction from django.db.models import Q - from rest_framework.decorators import action from rest_framework.exceptions import NotFound, PermissionDenied, ValidationError from rest_framework.permissions import AllowAny, IsAuthenticated, IsAuthenticatedOrReadOnly from rest_framework.response import Response -from rest_framework.status import HTTP_204_NO_CONTENT, HTTP_400_BAD_REQUEST, HTTP_401_UNAUTHORIZED, HTTP_403_FORBIDDEN, HTTP_404_NOT_FOUND, HTTP_200_OK, HTTP_201_CREATED +from rest_framework.status import HTTP_200_OK, HTTP_201_CREATED, HTTP_204_NO_CONTENT, HTTP_400_BAD_REQUEST, HTTP_401_UNAUTHORIZED, HTTP_403_FORBIDDEN, HTTP_404_NOT_FOUND from rest_framework.viewsets import ModelViewSet, ReadOnlyModelViewSet from apps.accounts.models import Invite, Organization, Role, User @@ -273,7 +272,6 @@ class InviteViewSet(ModelViewSet): 'organization': OrganizationSerializer(organization).data, }, status=HTTP_200_OK) - class RoleViewSet(ModelViewSet): queryset = Role.objects.all() serializer_class = RoleSerializer diff --git a/apps/knowledge/admin.py b/apps/knowledge/admin.py index 2fca5d5..12d0015 100644 --- a/apps/knowledge/admin.py +++ b/apps/knowledge/admin.py @@ -1,6 +1,7 @@ from django.contrib import admin from django.utils.translation import gettext_lazy as _ -from apps.knowledge.models import TrainingFile, RoleRagDocument + +from apps.knowledge.models import RoleRagDocument, TrainingFile @admin.register(TrainingFile) class TrainingFileAdmin(admin.ModelAdmin): diff --git a/apps/knowledge/migrations/0001_initial.py b/apps/knowledge/migrations/0001_initial.py index e6ca4c4..27378a2 100644 --- a/apps/knowledge/migrations/0001_initial.py +++ b/apps/knowledge/migrations/0001_initial.py @@ -1,9 +1,9 @@ import uuid -from django.conf import settings -from django.db import migrations, models import django.db.models.deletion import pgvector.django.vector +from django.conf import settings +from django.db import migrations, models class Migration(migrations.Migration): diff --git a/apps/knowledge/models.py b/apps/knowledge/models.py index eff553a..acb08b4 100644 --- a/apps/knowledge/models.py +++ b/apps/knowledge/models.py @@ -1,14 +1,14 @@ import os -from django.db.models import CASCADE, CharField, ForeignKey, IntegerField, TextField, BooleanField, FileField, JSONField, Model +from django.db import transaction +from django.db.models import CASCADE, BooleanField, CharField, FileField, ForeignKey, IntegerField, JSONField, Model, TextField from django.db.models.signals import post_delete, post_save from django.dispatch import receiver -from django.db import transaction from django.utils.translation import gettext_lazy as _ from pgvector.django import VectorField from apps.accounts.mixins import IdentifierMixin, TimeStampMixin -from apps.accounts.models import User, Role +from apps.accounts.models import Role, User class TrainingFile(IdentifierMixin, TimeStampMixin, Model): STATUS_CHOICES = [ @@ -38,7 +38,6 @@ class TrainingFile(IdentifierMixin, TimeStampMixin, Model): def __str__(self) -> str: return f"{self.file_name} ({self.role.name})" - class RoleRagDocument(IdentifierMixin, TimeStampMixin, Model): role = ForeignKey(Role, on_delete=CASCADE, related_name='rag_documents') @@ -70,6 +69,6 @@ def delete_physical_file(sender, instance, **kwargs): def trigger_ingestion(sender, instance, created, **kwargs): if created: def _enqueue(): - from apps.knowledge.tasks import ingest_training_file_task # L: circular import :( + from apps.knowledge.tasks import ingest_training_file_task # L: circular import :( ingest_training_file_task.delay(str(instance.uuid)) transaction.on_commit(_enqueue) \ No newline at end of file diff --git a/apps/knowledge/serializers.py b/apps/knowledge/serializers.py index bd02601..8dda7fd 100644 --- a/apps/knowledge/serializers.py +++ b/apps/knowledge/serializers.py @@ -1,7 +1,7 @@ from rest_framework.serializers import ModelSerializer, SerializerMethodField from apps.accounts.serializers import RoleSerializer, UserSerializer -from apps.knowledge.models import TrainingFile, RoleRagDocument +from apps.knowledge.models import RoleRagDocument, TrainingFile class TrainingFileSerializer(ModelSerializer): uploaded_by = UserSerializer(read_only=True) diff --git a/apps/knowledge/tasks.py b/apps/knowledge/tasks.py index 8f9f113..ffac9fe 100644 --- a/apps/knowledge/tasks.py +++ b/apps/knowledge/tasks.py @@ -1,14 +1,13 @@ -import httpx import hashlib -from pypdf import PdfReader -from docx import Document from celery import shared_task -from django.db import transaction from django.conf import settings +from django.db import transaction +from docx import Document +from httpx import Client, Timeout +from pypdf import PdfReader -from .models import TrainingFile, RoleRagDocument - +from apps.knowledge.models import RoleRagDocument, TrainingFile def _decode_text_bytes(raw_bytes: bytes) -> str: try: @@ -16,7 +15,6 @@ def _decode_text_bytes(raw_bytes: bytes) -> str: except UnicodeDecodeError: return raw_bytes.decode('latin-1', errors='ignore') - def _extract_text_from_training_file(file_obj: TrainingFile) -> str: file_name = (file_obj.file_name or '').lower() @@ -58,11 +56,10 @@ def ingest_training_file_task(self, file_uuid): all_documents = [] chunk_counter = 0 + + timeout = Timeout(60.0) - - timeout = httpx.Timeout(60.0) - - with httpx.Client(timeout=timeout) as client: + with Client(timeout=timeout) as client: for text_segment in _get_text_chunks(raw_text): response = client.post( diff --git a/apps/knowledge/viewsets.py b/apps/knowledge/viewsets.py index 540fd07..b37a5d2 100644 --- a/apps/knowledge/viewsets.py +++ b/apps/knowledge/viewsets.py @@ -1,6 +1,6 @@ from django.db.models import Q -from rest_framework.parsers import FormParser, MultiPartParser from rest_framework.exceptions import NotFound, PermissionDenied, ValidationError +from rest_framework.parsers import FormParser, MultiPartParser from rest_framework.permissions import IsAuthenticated from rest_framework.viewsets import ModelViewSet, ReadOnlyModelViewSet @@ -9,7 +9,6 @@ from apps.accounts.permissions import can_manage_organization from apps.knowledge.models import RoleRagDocument, TrainingFile from apps.knowledge.serializers import RoleRagDocumentSerializer, TrainingFileSerializer - class TrainingFileViewSet(ModelViewSet): queryset = TrainingFile.objects.all() serializer_class = TrainingFileSerializer @@ -75,7 +74,6 @@ class TrainingFileViewSet(ModelViewSet): return super().destroy(request, *args, **kwargs) - class RoleRagDocumentViewSet(ReadOnlyModelViewSet): queryset = RoleRagDocument.objects.all() serializer_class = RoleRagDocumentSerializer diff --git a/apps/onboarding/admin.py b/apps/onboarding/admin.py index b7592bf..188a706 100644 --- a/apps/onboarding/admin.py +++ b/apps/onboarding/admin.py @@ -1,7 +1,7 @@ from django.contrib import admin from django.utils.translation import gettext_lazy as _ -from apps.onboarding.models import AgentConfig, OnboardingSession, AgentInteractionLog, OnboardingFlow +from apps.onboarding.models import AgentConfig, AgentInteractionLog, OnboardingFlow, OnboardingSession class AgentInteractionLogInline(admin.TabularInline): model = AgentInteractionLog diff --git a/apps/onboarding/mcp.py b/apps/onboarding/mcp.py index 5eb84ca..38a1220 100644 --- a/apps/onboarding/mcp.py +++ b/apps/onboarding/mcp.py @@ -45,7 +45,6 @@ class MCPRouter: return {"error": f"Tool {name} not found"} async def _get_embedding(self, text): - """Fetch embedding from the GPU node.""" async with httpx.AsyncClient() as client: response = await client.post( f"{settings.INFERENCE_URL}/v1/embeddings", diff --git a/apps/onboarding/migrations/0001_initial.py b/apps/onboarding/migrations/0001_initial.py index c949469..1684fcb 100644 --- a/apps/onboarding/migrations/0001_initial.py +++ b/apps/onboarding/migrations/0001_initial.py @@ -1,5 +1,6 @@ -import django.db.models.deletion import uuid + +import django.db.models.deletion from django.conf import settings from django.db import migrations, models diff --git a/apps/onboarding/models.py b/apps/onboarding/models.py index d7baac8..4b82ac5 100644 --- a/apps/onboarding/models.py +++ b/apps/onboarding/models.py @@ -1,7 +1,8 @@ -from django.db.models import CASCADE, CharField, ForeignKey, JSONField, TextField, Model, DateTimeField, BooleanField +from django.db.models import CASCADE, BooleanField, CharField, DateTimeField, ForeignKey, JSONField, Model, TextField from django.utils.translation import gettext_lazy as _ + from apps.accounts.mixins import IdentifierMixin, TimeStampMixin -from apps.accounts.models import User, Role, Organization +from apps.accounts.models import Organization, Role, User class AgentConfig(IdentifierMixin, TimeStampMixin, Model): AGENT_TYPES = [ diff --git a/apps/onboarding/routing.py b/apps/onboarding/routing.py index 2554819..38343af 100644 --- a/apps/onboarding/routing.py +++ b/apps/onboarding/routing.py @@ -1,4 +1,5 @@ from django.urls import path + from .consumers import OnboardingConsumer websocket_urlpatterns = [ diff --git a/apps/onboarding/serializers.py b/apps/onboarding/serializers.py index 28234c0..d8cdc6c 100644 --- a/apps/onboarding/serializers.py +++ b/apps/onboarding/serializers.py @@ -1,7 +1,7 @@ from rest_framework.serializers import CharField, ModelSerializer, SerializerMethodField -from apps.accounts.serializers import UserSerializer, RoleSerializer, OrganizationSerializer -from apps.onboarding.models import AgentConfig, OnboardingSession, AgentInteractionLog, OnboardingFlow +from apps.accounts.serializers import OrganizationSerializer, RoleSerializer, UserSerializer +from apps.onboarding.models import AgentConfig, AgentInteractionLog, OnboardingFlow, OnboardingSession class AgentConfigSerializer(ModelSerializer): organization = OrganizationSerializer(read_only=True) diff --git a/apps/onboarding/tests/test_consumers.py b/apps/onboarding/tests/test_consumers.py index 707d38a..769ad3b 100644 --- a/apps/onboarding/tests/test_consumers.py +++ b/apps/onboarding/tests/test_consumers.py @@ -8,7 +8,6 @@ from apps.onboarding.models import AgentConfig User = get_user_model() - class OnboardingConsumerConfigSelectionTests(TestCase): def setUp(self): self.user = User.objects.create_user(