Scope as first class root charactaristic

This commit is contained in:
2026-04-29 16:25:24 +02:00
parent eb1513e463
commit 8d6a9f7050
10 changed files with 228 additions and 10 deletions

View File

@@ -210,6 +210,15 @@ class Evidence:
reference_id: int | None = None
@dataclass(frozen=True)
class Scope:
id: int
name: str
description: str
confidence: float
confidence_label: str = ""
@dataclass(frozen=True)
class Feature:
id: int
@@ -247,6 +256,7 @@ class Ability:
@dataclass(frozen=True)
class RepositoryAbilityMap:
repository: Repository
scope: Scope
abilities: list[Ability]

View File

@@ -1214,6 +1214,22 @@ class RegistryService:
self.store.delete_evidence(repository_id, evidence_id)
return self.store.get_ability_map(repository_id)
def update_scope(
self,
repository_id: int,
*,
name: str | None = None,
description: str | None = None,
confidence: float | None = None,
) -> RepositoryAbilityMap:
self.store.update_scope(
repository_id,
name=name,
description=description,
confidence=confidence,
)
return self.store.get_ability_map(repository_id)
def ability_map(self, repository_id: int) -> RepositoryAbilityMap:
return self.store.get_ability_map(repository_id)