using System.CommandLine; using System.Text.Json; using StellaOps.Aoc.Cli.Commands; namespace StellaOps.Aoc.Cli; public static class Program { private const string DeprecationDate = "2025-07-01"; private const string MigrationUrl = "https://docs.stellaops.io/cli/migration"; public static async Task Main(string[] args) { // Emit deprecation warning EmitDeprecationWarning(); var rootCommand = new RootCommand("StellaOps AOC CLI - Verify append-only contract compliance") { VerifyCommand.Create() }; return await rootCommand.InvokeAsync(args); } private static void EmitDeprecationWarning() { var originalColor = Console.ForegroundColor; Console.ForegroundColor = ConsoleColor.Yellow; Console.Error.WriteLine(); Console.Error.WriteLine("================================================================================"); Console.Error.WriteLine("[DEPRECATED] stella-aoc 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 aoc verify --since --postgres "); Console.Error.WriteLine(); Console.Error.WriteLine("Migration guide: " + MigrationUrl); Console.Error.WriteLine("================================================================================"); Console.Error.WriteLine(); Console.ForegroundColor = originalColor; } }