tests fixes and sprints work

This commit is contained in:
master
2026-01-22 19:08:46 +02:00
parent c32fff8f86
commit 726d70dc7f
881 changed files with 134434 additions and 6228 deletions

View File

@@ -0,0 +1,63 @@
using System.Collections.Immutable;
using StellaOps.Scanner.AiMlSecurity.Models;
namespace StellaOps.Scanner.AiMlSecurity.Policy;
public sealed record AiGovernancePolicy
{
public string? Version { get; init; }
public string? ComplianceFramework { get; init; }
public ImmutableArray<string> ComplianceFrameworks { get; init; } = [];
public AiModelCardRequirements ModelCardRequirements { get; init; } = new();
public AiTrainingDataRequirements TrainingDataRequirements { get; init; } = new();
public AiRiskCategories RiskCategories { get; init; } = new();
public AiSafetyRequirements SafetyRequirements { get; init; } = new();
public AiProvenanceRequirements ProvenanceRequirements { get; init; } = new();
public bool RequireRiskAssessment { get; init; }
public ImmutableArray<AiGovernanceExemption> Exemptions { get; init; } = [];
}
public sealed record AiModelCardRequirements
{
public AiModelCardCompleteness MinimumCompleteness { get; init; } = AiModelCardCompleteness.Basic;
public ImmutableArray<string> RequiredSections { get; init; } = [];
}
public sealed record AiTrainingDataRequirements
{
public bool RequireProvenance { get; init; } = true;
public bool SensitiveDataAllowed { get; init; }
public bool RequireBiasAssessment { get; init; } = true;
}
public sealed record AiRiskCategories
{
public ImmutableArray<string> HighRisk { get; init; } = [];
}
public sealed record AiSafetyRequirements
{
public bool RequireSafetyAssessment { get; init; } = true;
public AiHumanOversightRequirements HumanOversightRequired { get; init; } = new();
}
public sealed record AiHumanOversightRequirements
{
public bool ForHighRisk { get; init; } = true;
}
public sealed record AiProvenanceRequirements
{
public bool RequireHash { get; init; }
public bool RequireSignature { get; init; }
public ImmutableArray<string> TrustedSources { get; init; } = [];
public ImmutableArray<string> KnownModelHubs { get; init; } = [];
}
public sealed record AiGovernanceExemption
{
public string? ModelPattern { get; init; }
public string? Reason { get; init; }
public bool RiskAccepted { get; init; }
public DateOnly? ExpirationDate { get; init; }
}