advanced the review workflow

This commit is contained in:
2026-04-25 23:27:28 +02:00
parent aa18dfc8f2
commit 5503b9761e
6 changed files with 208 additions and 2 deletions

View File

@@ -130,6 +130,8 @@ class RegistryService:
confidence=ability.confidence,
)
for capability in ability.capabilities:
if capability.status != "candidate":
continue
approved_capability_id = self.store.create_capability(
repository_id,
approved_ability_id,
@@ -140,6 +142,8 @@ class RegistryService:
confidence=capability.confidence,
)
for feature in capability.features:
if feature.status != "candidate":
continue
self.store.create_feature(
repository_id,
approved_capability_id,
@@ -149,6 +153,8 @@ class RegistryService:
confidence=feature.confidence,
)
for evidence in capability.evidence:
if evidence.status != "candidate":
continue
self.store.create_evidence(
repository_id,
approved_capability_id,
@@ -172,6 +178,28 @@ class RegistryService:
self.store.update_repository_status(repository_id, "indexed")
return self.store.get_ability_map(repository_id)
def reject_candidate_ability(
self,
repository_id: int,
analysis_run_id: int,
candidate_ability_id: int,
*,
notes: str = "",
) -> CandidateGraph:
self.store.reject_candidate_ability(
repository_id,
analysis_run_id,
candidate_ability_id,
)
self.store.create_review_decision(
repository_id,
analysis_run_id,
action="reject_candidate_ability",
notes=notes,
)
self.store.update_repository_status(repository_id, "reviewing")
return self.store.get_candidate_graph(repository_id, analysis_run_id)
def add_ability(
self,
repository_id: int,