• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

aelassas / servy / 26686150368

30 May 2026 02:21PM UTC coverage: 70.31% (+0.03%) from 70.277%
26686150368

push

github

aelassas
fix(service): Service.cs ScheduleRecoveryAsync - SAFETY RESET writes _isRecovering outside _healthCheckSemaphore, racing with health-check evaluations
fix(manager): ServiceCommands.Dispose - disposes SemaphoreSlim instances without guarding against concurrent in-flight operations
fix(manager): ConsoleViewModel.cs - RequestScroll and RequestStatePreservation event delegates never unsubscribed on Dispose, retaining the View
fix(core): ServiceDtoHelper.ApplyDefaultsAndResetIdentity silently discards UserAccount/Password from XML/JSON imports with no operator-visible warning
fix(service): Service.cs ExecuteTeardown - finally-block disposal cascade is not exception-safe (sibling of #2109/#2136)
fix(core): Helper.IsValidPath - uses Path.GetInvalidPathChars(), accepting filename-invalid chars like '<', '>', '|', '*', '?' that cause downstream open failures
fix(infra): ServiceRepository.UpsertBatchAsync - does not preserve runtime state, clobbers Pid/ActiveStdoutPath/ActiveStderrPath/Password on batch import
fix(service): ProcessWrapper.cs - Stop(timeoutMs) uses the same value for graceful timeout and post-kill wait
fix(service): StartOptionsParser.SafeResolvePath - only catches InvalidOperationException/ArgumentException; SecurityException, NotSupportedException, PathTooLongException from Path.GetFullPath propagate and crash OnStart
fix(manager): oldCts.Cancel()/Dispose() lack try/catch in 11 additional ViewModel sites
fix(manager): ConsoleViewModel.cs - RequestStatePreservation event raised but never subscribed by any view; the 'preserve UI selection during log updates' contract is silently broken
fix(service): Service.cs - Dead null-conditional on readonly semaphore fields
fix(desktop,manager): AppBootstrapper.cs - Dead null-conditional on readonly _appLifetimeCts field
fix(restarter): Program.cs Main - finally block disposal cascade is not exception-safe; one Dispose() throw skips Logger.Shutdown() and remaining cleanup
fix(cli): Program.cs Main - finally... (continued)

1598 of 2175 branches covered (73.47%)

Branch coverage included in aggregate %.

76 of 111 new or added lines in 17 files covered. (68.47%)

11 existing lines in 5 files now uncovered.

11043 of 15804 relevant lines covered (69.87%)

2900.55 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

62.09
/src/Servy.CLI/Program.cs


Source Not Available

STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc