Some checks failed
AOC Guard CI / aoc-guard (push) Has been cancelled
AOC Guard CI / aoc-verify (push) Has been cancelled
Concelier Attestation Tests / attestation-tests (push) Has been cancelled
Docs CI / lint-and-preview (push) Has been cancelled
Export Center CI / export-ci (push) Has been cancelled
Mirror Thin Bundle Sign & Verify / mirror-sign (push) Has been cancelled
- Introduced DigestUpsertRequest for handling digest upsert requests with properties like ChannelId, Recipient, DigestKey, Events, and CollectUntil. - Created LockEntity to represent a lightweight distributed lock entry with properties such as Id, TenantId, Resource, Owner, ExpiresAt, and CreatedAt. feat: Implement ILockRepository interface and LockRepository class - Defined ILockRepository interface with methods for acquiring and releasing locks. - Implemented LockRepository class with methods to try acquiring a lock and releasing it, using SQL for upsert operations. feat: Add SurfaceManifestPointer record for manifest pointers - Introduced SurfaceManifestPointer to represent a minimal pointer to a Surface.FS manifest associated with an image digest. feat: Create PolicySimulationInputLock and related validation logic - Added PolicySimulationInputLock record to describe policy simulation inputs and expected digests. - Implemented validation logic for policy simulation inputs, including checks for digest drift and shadow mode requirements. test: Add unit tests for ReplayVerificationService and ReplayVerifier - Created ReplayVerificationServiceTests to validate the behavior of the ReplayVerificationService under various scenarios. - Developed ReplayVerifierTests to ensure the correctness of the ReplayVerifier logic. test: Implement PolicySimulationInputLockValidatorTests - Added tests for PolicySimulationInputLockValidator to verify the validation logic against expected inputs and conditions. chore: Add cosign key example and signing scripts - Included a placeholder cosign key example for development purposes. - Added a script for signing Signals artifacts using cosign with support for both v2 and v3. chore: Create script for uploading evidence to the evidence locker - Developed a script to upload evidence to the evidence locker, ensuring required environment variables are set.
48 lines
1.3 KiB
C#
48 lines
1.3 KiB
C#
using System.Text.Json.Serialization;
|
|
|
|
namespace StellaOps.ExportCenter.RiskBundles;
|
|
|
|
public sealed record RiskBundleProviderInput(
|
|
string ProviderId,
|
|
string SourcePath,
|
|
string Source,
|
|
string? SignaturePath = null,
|
|
bool Optional = false,
|
|
DateOnly? SnapshotDate = null);
|
|
|
|
public sealed record RiskBundleProviderEntry(
|
|
string ProviderId,
|
|
string Source,
|
|
DateOnly? SnapshotDate,
|
|
string Sha256,
|
|
string? SignatureSha256,
|
|
long SizeBytes,
|
|
bool Optional,
|
|
string BundlePath,
|
|
string SourceFilePath,
|
|
string? SignaturePath);
|
|
|
|
public sealed record RiskBundleManifest(
|
|
string Version,
|
|
Guid BundleId,
|
|
DateTimeOffset CreatedAt,
|
|
IReadOnlyList<RiskBundleProviderEntry> Providers,
|
|
string InputsHash);
|
|
|
|
public sealed record RiskBundleBuildRequest(
|
|
Guid BundleId,
|
|
IReadOnlyList<RiskBundleProviderInput> Providers,
|
|
string? BundleFileName = null,
|
|
string BundlePrefix = "risk-bundles",
|
|
string ManifestFileName = "provider-manifest.json",
|
|
string ManifestDsseFileName = "provider-manifest.dsse",
|
|
bool AllowMissingOptional = true,
|
|
bool AllowStaleOptional = true,
|
|
bool IncludeOsv = false);
|
|
|
|
public sealed record RiskBundleBuildResult(
|
|
RiskBundleManifest Manifest,
|
|
string ManifestJson,
|
|
string RootHash,
|
|
MemoryStream BundleStream);
|