Coverage for src/secchi/workflows/show.py: 45%
11 statements
« prev ^ index » next coverage.py v7.15.2, created at 2026-08-14 23:28 +0000
« prev ^ index » next coverage.py v7.15.2, created at 2026-08-14 23:28 +0000
1"""Package summary workflow."""
3from secchi.models import PackageRef
4from secchi.services.intelligence import IntelligenceResult, PackageIntelligenceService
5from secchi.services.resolver import parse_package_spec
6from secchi.workflows.common import require_package
9async def run(
10 package: str | PackageRef,
11 *,
12 registry: str | None = None,
13 refresh: bool = False,
14 security_refresh: bool = False,
15 service: PackageIntelligenceService | None = None,
16) -> IntelligenceResult:
17 ref = parse_package_spec(package, registry) if isinstance(package, str) else package
18 if security_refresh:
19 return await require_package(
20 ref, refresh, security_refresh=True, service=service
21 )
22 if service is None:
23 return await require_package(ref, refresh)
24 return await require_package(ref, refresh, service=service)