Merge branch 'feature/core-lifecycle' into main

Reconcile close reason tracking: feature branch's MarkClosed() and
ShouldSkipFlush/FlushAndCloseAsync now use main's ClientClosedReason
enum. ClosedState enum retained for forward compatibility.
This commit is contained in:
Joseph Doherty
2026-02-23 00:09:30 -05:00
12 changed files with 2745 additions and 18 deletions

View File

@@ -38,6 +38,18 @@ public sealed class NatsOptions
// 0 = disabled
public int MonitorHttpsPort { get; set; }
// Lifecycle / lame-duck mode
public TimeSpan LameDuckDuration { get; set; } = TimeSpan.FromMinutes(2);
public TimeSpan LameDuckGracePeriod { get; set; } = TimeSpan.FromSeconds(10);
// File paths
public string? PidFile { get; set; }
public string? PortsFileDir { get; set; }
public string? ConfigFile { get; set; }
// Profiling (0 = disabled)
public int ProfPort { get; set; }
// TLS
public string? TlsCert { get; set; }
public string? TlsKey { get; set; }