Files
ersatztv/ErsatzTV.Core/Interfaces/Troubleshooting/ITroubleshootingPlaybackStatusStore.cs
T
timothyandClaude Fable 5 cf33af4572 feat(troubleshoot): add troubleshooting playback status store
Add a singleton ITroubleshootingPlaybackStatusStore (Core, alongside
TroubleshootingNotifier) that records the exit code + speed of the most
recent troubleshooting playback session. A new MediatR notification
handler writes to it on PlaybackTroubleshootingCompletedNotification, and
PrepareTroubleshootingPlaybackHandler resets it when a new session starts
(both the channel and media-item lock paths).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-08 23:46:25 +02:00

17 lines
652 B
C#

using ErsatzTV.Core.Troubleshooting;
namespace ErsatzTV.Core.Interfaces.Troubleshooting;
// Records the outcome of the most recent troubleshooting playback session so the SPA can poll
// for completion (the legacy Blazor page instead subscribed to an in-process notification). The
// store is reset when a new session starts (see PrepareTroubleshootingPlaybackHandler) and written
// by the PlaybackTroubleshootingCompletedNotification handler.
public interface ITroubleshootingPlaybackStatusStore
{
Option<TroubleshootingPlaybackResult> CurrentResult { get; }
void Reset();
void RecordCompletion(int exitCode, Option<double> speed);
}