Files
git.stella-ops.org/src/Cli/StellaOps.Cli/Services/IPromotionAssembler.cs
master d1cbb905f8
Some checks failed
Docs CI / lint-and-preview (push) Has been cancelled
AOC Guard CI / aoc-guard (push) Has been cancelled
AOC Guard CI / aoc-verify (push) Has been cancelled
Concelier Attestation Tests / attestation-tests (push) Has been cancelled
Policy Lint & Smoke / policy-lint (push) Has been cancelled
up
2025-11-28 18:21:46 +02:00

43 lines
1.2 KiB
C#

using System.Threading;
using System.Threading.Tasks;
using StellaOps.Cli.Services.Models;
namespace StellaOps.Cli.Services;
/// <summary>
/// Assembler for promotion attestations.
/// Per CLI-PROMO-70-001/002.
/// </summary>
internal interface IPromotionAssembler
{
/// <summary>
/// Assembles a promotion attestation from the provided request.
/// </summary>
Task<PromotionAssembleResult> AssembleAsync(
PromotionAssembleRequest request,
CancellationToken cancellationToken);
/// <summary>
/// Resolves image digest from registry.
/// </summary>
Task<string?> ResolveImageDigestAsync(
string imageRef,
CancellationToken cancellationToken);
/// <summary>
/// Signs a promotion predicate and produces a DSSE bundle.
/// Per CLI-PROMO-70-002.
/// </summary>
Task<PromotionAttestResult> AttestAsync(
PromotionAttestRequest request,
CancellationToken cancellationToken);
/// <summary>
/// Verifies a promotion attestation bundle offline.
/// Per CLI-PROMO-70-002.
/// </summary>
Task<PromotionVerifyResult> VerifyAsync(
PromotionVerifyRequest request,
CancellationToken cancellationToken);
}