diff --git a/backend/app/models/repository_scan.py b/backend/app/models/repository_scan.py index 976ddda..ce23679 100644 --- a/backend/app/models/repository_scan.py +++ b/backend/app/models/repository_scan.py @@ -8,7 +8,7 @@ class RepoLibrary(BaseModel): library_name: str = Field(..., description='Discovered library name') library_version: str = Field(..., description='Discovered library version') - ecosystem: str = Field(..., description='Ecosystem of the library (e.g., npm, pip, maven, etc.)') + ecosystem: Optional[str] = Field(None, description='Ecosystem of the library (e.g., npm, pip, maven, etc.). May be null for legacy records') model_config = ConfigDict(populate_by_name=True) diff --git a/backend/app/views/library_view.py b/backend/app/views/library_view.py index ef9c42f..7b36a80 100644 --- a/backend/app/views/library_view.py +++ b/backend/app/views/library_view.py @@ -419,7 +419,7 @@ async def handle_repo_scan_highest_risk(payload: dict): lib_entry = { "library_name": d.get('name'), "library_version": normalize_version(d.get('version')) or d.get('version') or "unknown", - "ecosystem": d.get('ecosystem') + "ecosystem": d.get('ecosystem') or 'unknown' } grouped.setdefault(path, []).append(lib_entry)