generated from coulomb/repo-seed
Add deterministic quality gate outcomes
This commit is contained in:
@@ -4,6 +4,10 @@ from collections.abc import Sequence
|
||||
from dataclasses import asdict, replace
|
||||
from typing import Any
|
||||
|
||||
from repo_registry.acceptance import (
|
||||
blocking_quality_gate_outcomes,
|
||||
evaluate_candidate_capability_quality,
|
||||
)
|
||||
from repo_registry.core.models import (
|
||||
AbilitySummary,
|
||||
AnalysisRunDiff,
|
||||
@@ -609,6 +613,13 @@ class RegistryService:
|
||||
self,
|
||||
capability: CandidateCapability,
|
||||
) -> tuple[bool, str]:
|
||||
gate_outcomes = evaluate_candidate_capability_quality(capability)
|
||||
blocking_outcomes = blocking_quality_gate_outcomes(gate_outcomes)
|
||||
if blocking_outcomes:
|
||||
criteria = ", ".join(
|
||||
sorted({outcome.criterion_id for outcome in blocking_outcomes})
|
||||
)
|
||||
return False, f"quality gates require review ({criteria})"
|
||||
has_source_refs = bool(capability.source_refs) or any(
|
||||
feature.source_refs for feature in capability.features
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user