feat: Implement IsolatedReplayContext for deterministic audit replay
- Added IsolatedReplayContext class to provide an isolated environment for replaying audit bundles without external calls. - Introduced methods for initializing the context, verifying input digests, and extracting inputs for policy evaluation. - Created supporting interfaces and options for context configuration. feat: Create ReplayExecutor for executing policy re-evaluation and verdict comparison - Developed ReplayExecutor class to handle the execution of replay processes, including input verification and verdict comparison. - Implemented detailed drift detection and error handling during replay execution. - Added interfaces for policy evaluation and replay execution options. feat: Add ScanSnapshotFetcher for fetching scan data and snapshots - Introduced ScanSnapshotFetcher class to retrieve necessary scan data and snapshots for audit bundle creation. - Implemented methods to fetch scan metadata, advisory feeds, policy snapshots, and VEX statements. - Created supporting interfaces for scan data, feed snapshots, and policy snapshots.
This commit is contained in:
@@ -7,10 +7,16 @@ using StellaOps.Symbols.Client;
|
||||
using StellaOps.Symbols.Core.Models;
|
||||
using StellaOps.Symbols.Ingestor.Cli;
|
||||
|
||||
const string DeprecationDate = "2025-07-01";
|
||||
const string MigrationUrl = "https://docs.stellaops.io/cli/migration";
|
||||
|
||||
return await RunAsync(args).ConfigureAwait(false);
|
||||
|
||||
static async Task<int> RunAsync(string[] args)
|
||||
{
|
||||
// Emit deprecation warning
|
||||
EmitDeprecationWarning();
|
||||
|
||||
// Build command structure
|
||||
var rootCommand = new RootCommand("StellaOps Symbol Ingestor CLI - Ingest and publish symbol manifests");
|
||||
|
||||
@@ -414,3 +420,23 @@ static async Task HealthCheckAsync(string serverUrl, CancellationToken cancellat
|
||||
Environment.ExitCode = 1;
|
||||
}
|
||||
}
|
||||
|
||||
static void EmitDeprecationWarning()
|
||||
{
|
||||
var originalColor = Console.ForegroundColor;
|
||||
Console.ForegroundColor = ConsoleColor.Yellow;
|
||||
Console.Error.WriteLine();
|
||||
Console.Error.WriteLine("================================================================================");
|
||||
Console.Error.WriteLine("[DEPRECATED] stella-symbols is deprecated and will be removed on " + DeprecationDate + ".");
|
||||
Console.Error.WriteLine();
|
||||
Console.Error.WriteLine("Please migrate to the unified stella CLI:");
|
||||
Console.Error.WriteLine(" stella symbols ingest --binary <path> --server <url>");
|
||||
Console.Error.WriteLine(" stella symbols upload --manifest <path> --server <url>");
|
||||
Console.Error.WriteLine(" stella symbols verify --path <manifest>");
|
||||
Console.Error.WriteLine(" stella symbols health --server <url>");
|
||||
Console.Error.WriteLine();
|
||||
Console.Error.WriteLine("Migration guide: " + MigrationUrl);
|
||||
Console.Error.WriteLine("================================================================================");
|
||||
Console.Error.WriteLine();
|
||||
Console.ForegroundColor = originalColor;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user