candidates can now be edited before approval

This commit is contained in:
2026-04-25 23:32:18 +02:00
parent 5503b9761e
commit d5869bcaeb
6 changed files with 357 additions and 5 deletions

View File

@@ -441,6 +441,72 @@ class RegistryStore:
(capability_id, repository_id, analysis_run_id),
)
def update_candidate_ability(
self,
repository_id: int,
analysis_run_id: int,
candidate_ability_id: int,
*,
name: str,
description: str,
confidence: float,
) -> None:
with self.connect() as connection:
cursor = connection.execute(
"""
UPDATE candidate_abilities
SET name = ?, description = ?, confidence = ?
WHERE id = ? AND repository_id = ? AND analysis_run_id = ?
""",
(
name,
description,
confidence,
candidate_ability_id,
repository_id,
analysis_run_id,
),
)
if cursor.rowcount == 0:
raise NotFoundError(
"candidate ability "
f"{candidate_ability_id} was not found for repository "
f"{repository_id} analysis run {analysis_run_id}"
)
def update_candidate_capability(
self,
repository_id: int,
analysis_run_id: int,
candidate_capability_id: int,
*,
name: str,
description: str,
confidence: float,
) -> None:
with self.connect() as connection:
cursor = connection.execute(
"""
UPDATE candidate_capabilities
SET name = ?, description = ?, confidence = ?
WHERE id = ? AND repository_id = ? AND analysis_run_id = ?
""",
(
name,
description,
confidence,
candidate_capability_id,
repository_id,
analysis_run_id,
),
)
if cursor.rowcount == 0:
raise NotFoundError(
"candidate capability "
f"{candidate_capability_id} was not found for repository "
f"{repository_id} analysis run {analysis_run_id}"
)
def create_review_decision(
self,
repository_id: int,