sprints and audit work
This commit is contained in:
@@ -17,6 +17,7 @@ using StellaOps.Configuration;
|
||||
using StellaOps.Policy.Scoring.Engine;
|
||||
using StellaOps.ExportCenter.Client;
|
||||
using StellaOps.ExportCenter.Core.EvidenceCache;
|
||||
using StellaOps.Verdict;
|
||||
#if DEBUG || STELLAOPS_ENABLE_SIMULATOR
|
||||
using StellaOps.Cryptography.Plugin.SimRemote.DependencyInjection;
|
||||
#endif
|
||||
@@ -247,6 +248,12 @@ internal static class Program
|
||||
client.Timeout = TimeSpan.FromSeconds(60);
|
||||
}).AddEgressPolicyGuard("stellaops-cli", "sbom-api");
|
||||
|
||||
// VRR-021: Rationale client for verdict rationale
|
||||
services.AddHttpClient<IRationaleClient, RationaleClient>(client =>
|
||||
{
|
||||
client.Timeout = TimeSpan.FromSeconds(30);
|
||||
}).AddEgressPolicyGuard("stellaops-cli", "triage-api");
|
||||
|
||||
// CLI-VERIFY-43-001: OCI registry client for verify image
|
||||
services.AddHttpClient<IOciRegistryClient, OciRegistryClient>(client =>
|
||||
{
|
||||
@@ -278,6 +285,32 @@ internal static class Program
|
||||
|
||||
services.AddSingleton<ICvssV4Engine, CvssV4Engine>();
|
||||
|
||||
// RPL-003: VerdictBuilder for replay infrastructure (SPRINT_20260105_002_001_REPLAY)
|
||||
services.AddVerdictBuilderAirGap();
|
||||
|
||||
// RPL-016/017: Timeline and bundle store adapters for stella prove command
|
||||
services.AddHttpClient<StellaOps.Cli.Commands.ITimelineQueryAdapter,
|
||||
StellaOps.Cli.Replay.TimelineQueryAdapter>(client =>
|
||||
{
|
||||
client.Timeout = TimeSpan.FromSeconds(30);
|
||||
if (!string.IsNullOrWhiteSpace(options.BackendUrl) &&
|
||||
Uri.TryCreate(options.BackendUrl, UriKind.Absolute, out var backendUri))
|
||||
{
|
||||
client.BaseAddress = backendUri;
|
||||
}
|
||||
}).AddEgressPolicyGuard("stellaops-cli", "timeline-api");
|
||||
|
||||
services.AddHttpClient<StellaOps.Cli.Commands.IReplayBundleStoreAdapter,
|
||||
StellaOps.Cli.Replay.ReplayBundleStoreAdapter>(client =>
|
||||
{
|
||||
client.Timeout = TimeSpan.FromMinutes(5); // Bundle downloads may take longer
|
||||
if (!string.IsNullOrWhiteSpace(options.BackendUrl) &&
|
||||
Uri.TryCreate(options.BackendUrl, UriKind.Absolute, out var backendUri))
|
||||
{
|
||||
client.BaseAddress = backendUri;
|
||||
}
|
||||
}).AddEgressPolicyGuard("stellaops-cli", "replay-bundle-api");
|
||||
|
||||
// CLI-AIRGAP-56-001: Mirror bundle import service for air-gap operations
|
||||
services.AddSingleton<StellaOps.AirGap.Importer.Repositories.IBundleCatalogRepository,
|
||||
StellaOps.AirGap.Importer.Repositories.InMemoryBundleCatalogRepository>();
|
||||
|
||||
Reference in New Issue
Block a user