doctor enhancements, setup, enhancements, ui functionality and design consolidation and , test projects fixes , product advisory attestation/rekor and delta verfications enhancements

This commit is contained in:
master
2026-01-19 09:02:59 +02:00
parent 8c4bf54aed
commit 17419ba7c4
809 changed files with 170738 additions and 12244 deletions

View File

@@ -0,0 +1,70 @@
// -----------------------------------------------------------------------------
// ValidationServiceCollectionExtensions.cs
// Sprint: SPRINT_20260118_031_LIB_input_pinning_trusted_vex_keys
// Task: TASK-031-006 - Implement Adversarial Input Validation
// Description: DI registration for adversarial validation services
// -----------------------------------------------------------------------------
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
namespace StellaOps.DeltaVerdict.Validation;
/// <summary>
/// Extension methods for registering adversarial validation services.
/// </summary>
public static class ValidationServiceCollectionExtensions
{
/// <summary>
/// Adds adversarial input validation to the service collection.
/// </summary>
/// <param name="services">The service collection.</param>
/// <param name="configuration">Optional configuration.</param>
/// <returns>The service collection for chaining.</returns>
public static IServiceCollection AddAdversarialInputValidation(
this IServiceCollection services,
IConfiguration? configuration = null)
{
if (configuration != null)
{
services.Configure<AdversarialValidationPolicy>(
configuration.GetSection(AdversarialValidationPolicy.SectionName));
}
services.AddSingleton<IAdversarialInputValidator, AdversarialInputValidator>();
return services;
}
/// <summary>
/// Adds adversarial input validation with custom policy.
/// </summary>
/// <param name="services">The service collection.</param>
/// <param name="configurePolicy">Policy configuration delegate.</param>
/// <returns>The service collection for chaining.</returns>
public static IServiceCollection AddAdversarialInputValidation(
this IServiceCollection services,
Action<AdversarialValidationPolicy> configurePolicy)
{
services.Configure(configurePolicy);
services.AddSingleton<IAdversarialInputValidator, AdversarialInputValidator>();
return services;
}
/// <summary>
/// Adds adversarial input validation with a predefined policy.
/// </summary>
/// <param name="services">The service collection.</param>
/// <param name="policy">The validation policy to use.</param>
/// <returns>The service collection for chaining.</returns>
public static IServiceCollection AddAdversarialInputValidation(
this IServiceCollection services,
AdversarialValidationPolicy policy)
{
services.AddSingleton(Microsoft.Extensions.Options.Options.Create(policy));
services.AddSingleton<IAdversarialInputValidator, AdversarialInputValidator>();
return services;
}
}