41 lines
1.6 KiB
C#
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);
|
|
}
|