Files
git.stella-ops.org/src/__Libraries/StellaOps.DeltaVerdict/Bundles/IVerdictBundleBuilder.cs

41 lines
1.6 KiB
C#

// SPDX-License-Identifier: AGPL-3.0-or-later
// Copyright (c) 2026 StellaOps
// Sprint: SPRINT_20260118_030_LIB_verdict_rekor_gate_api
// Task: TASK-030-002 - Implement VerdictBundleBuilder
using StellaOps.Signals.EvidenceWeightedScore;
namespace StellaOps.DeltaVerdict.Bundles;
/// <summary>
/// Builder that assembles verdict bundles from EWS results.
/// </summary>
public interface IVerdictBundleBuilder
{
/// <summary>
/// Builds a verdict bundle from an EWS result.
/// </summary>
/// <param name="ewsResult">Evidence-weighted score result.</param>
/// <param name="input">Original EWS input for source metadata extraction.</param>
/// <param name="policy">Evidence weight policy used for scoring.</param>
/// <param name="gateConfig">Gate configuration for action determination.</param>
/// <returns>Assembled verdict bundle with bundle digest.</returns>
VerdictBundle Build(
EvidenceWeightedScoreResult ewsResult,
EvidenceWeightedScoreInput input,
EvidenceWeightPolicy policy,
GateConfiguration gateConfig);
/// <summary>
/// Builds a verdict bundle from an EWS result using default gate configuration.
/// </summary>
/// <param name="ewsResult">Evidence-weighted score result.</param>
/// <param name="input">Original EWS input for source metadata extraction.</param>
/// <param name="policy">Evidence weight policy used for scoring.</param>
/// <returns>Assembled verdict bundle with bundle digest.</returns>
VerdictBundle Build(
EvidenceWeightedScoreResult ewsResult,
EvidenceWeightedScoreInput input,
EvidenceWeightPolicy policy);
}