LiveRun
ConsoleMonster.Live
Monitors an existing runner without scheduling its work or changing its results. Completed items are appended once to scrollback; a bounded dashboard shows active work and problems. All update methods are safe from worker threads.
Inheritance
- object
- LiveRun
Constructors
public LiveRun(IEnumerable<RunItem> items, LiveRunOptions? options = null) #Starts monitoring the declared work. No item is executed by this constructor.
Parameters
- items System.Collections.Generic.IEnumerable<ConsoleMonster.Live.RunItem>
- Names, targets and optional categories in input order.
- options ConsoleMonster.Live.LiveRunOptions? = null
- Display configuration, or null for defaults.
Methods
public void Cancel() #Signals cooperative cancellation while leaving completion output open.
public RunSnapshot Complete() #Marks unfinished items skipped, flushes held completion lines and prints the full final summary. Idempotent.
Returns
RunSnapshot The final structured state. The runner's own results and exit code are unaffected.Exceptions
InvalidOperationException– Output failed. The complete structured state is retained by Snapshot.
public void Dispose() #Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
public void Finished(int index, StatusKind outcome, string? message = null, TimeSpan? duration = null) #Completes an item once. Repeated completion notifications are ignored.
Parameters
- index int
- Zero-based input position.
- outcome ConsoleMonster.Styling.StatusKind
- Pass, Fail, Warn or Skip.
- message string? = null
- Full literal result detail.
- duration System.TimeSpan? = null
- Explicit elapsed time, or null to use the item's running clock.
public bool Flush(TimeSpan timeout) #Waits for previously posted output to reach the target. After Complete, waits for final output and restoration, including deferred cleanup. Hosts can then drain their output on their pipeline thread.
Parameters
- timeout System.TimeSpan
- Maximum wait.
Returns
bool Whether output was flushed.public bool HandleKey(char key) #Applies an optional dashboard key. This changes display only; work continues.
Parameters
- key char
- p, f, g or ?.
Returns
bool Whether the key was handled.public RunSnapshot Snapshot() #A consistent immutable observation of the run.
public void Started(int index, string? phase = null) #Starts one item or changes its running phase. Duplicate starts preserve its original start time.
Parameters
- index int
- Zero-based input position.
- phase string? = null
- Literal phase text.
Inherited Methods
Properties
public RunDashboard Dashboard { get; } #The live presentation; its log retains only its configured capacity, while scrollback receives every completion.
public CancellationToken Cancellation { get; } #Cancelled by Ctrl+C or LiveRun.Cancel. Producers should observe it and report their last results before Complete.
public Exception? OutputFailure { get; } #A fatal rendering or output failure, including final summary and flushing failures. Worker results remain in the structured snapshot.