fix: compilation errors in Attestor and Policy modules

- Fix PredicateSchemaValidator to use static Lazy initialization
  avoiding JsonSchema.Net global registry conflicts in tests
- Add IContextPolicyGate interface for gates without MergeResult
- Rename ICveGate/IAttestationGate to avoid conflicts with IPolicyGate
- Add static Pass/Fail helper methods to GateResult record
- Unseal PolicyGateContext to allow ExtendedPolicyGateContext
- Add missing Type/Constraint properties to AuthorityScope and Principal
- Fix PolicyBundle to use ConditionDescription instead of Condition func
- Rename ExceptionResult to ExceptionCheckResult to avoid duplicate
- Rename GateResult static helper class to GateResultFactory
- Temporarily exclude 9 incomplete gate files with missing contracts
- Add AttestationContextExtensions for GetAttestation/GetVexSummary etc

All 216 Attestor.Core tests pass.
This commit is contained in:
master
2026-01-19 13:35:21 +02:00
parent 17419ba7c4
commit b34bde89fa
20 changed files with 280 additions and 73 deletions

View File

@@ -169,6 +169,16 @@ public enum PrincipalRole
/// </summary>
public sealed record AuthorityScope
{
/// <summary>
/// Scope type for canonical serialization.
/// </summary>
public string Type { get; init; } = "default";
/// <summary>
/// Constraint expression for the scope.
/// </summary>
public string? Constraint { get; init; }
/// <summary>
/// Product namespace patterns (e.g., "vendor.example/*").
/// Principal is authoritative for these products.
@@ -335,6 +345,11 @@ public sealed record Principal
/// </summary>
public required string Id { get; init; }
/// <summary>
/// Principal type for canonical serialization.
/// </summary>
public string Type { get; init; } = "identity";
/// <summary>
/// Key identifiers for verification.
/// </summary>