- ClawdDotNet.Web: Kestrel im Prozess der Anwendung, Token-Absicherung (TokenGate mit FixedTimeEquals), Endpunkte unter /api, Ereignisstrom unter /events (Server-Sent Events) und fortlaufendes Log-Streaming. - Weboberflaeche (wwwroot/): Vollstaendiges Single-Page-Frontend mit nativem HTML5, CSS3 und ES-Modulen ohne Buildschritt (strikt textContent, #-Routing, sofortiger Login-Sprung bei fehlendem Token, Light/Dark-Theme, lokale Barlow-Schriften). - ClawdDotNet.App: Fachlogik aus den Avalonia-ViewModels in Dienste herausgeloest (AgentAdministration, JobAdministration, ServiceAdministration, RunCoordinator) und ueber InstanceChange synchronisiert. - Tests: ClawdDotNet.Web.Tests und ClawdDotNet.App.Tests hinzugefuegt, alle 684 Tests erfolgreich.
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
namespace ClawdDotNet.App;
|
||||
|
||||
/// <summary>Welcher Teil der Instanzkonfiguration sich geändert hat.</summary>
|
||||
public enum InstanceChangeKind
|
||||
{
|
||||
/// <summary>Ein Agent kam dazu, fiel weg oder wurde bearbeitet.</summary>
|
||||
Agents,
|
||||
|
||||
/// <summary>Ein Dienst kam dazu, fiel weg oder wurde umgeschaltet.</summary>
|
||||
Services,
|
||||
|
||||
/// <summary>Ein geplanter Lauf (Agent-Wakeup oder Tool-Job) hat sich geändert.</summary>
|
||||
Jobs,
|
||||
|
||||
/// <summary>Etwas an der Instanz selbst — Budget, Grenzen, Weboberfläche.</summary>
|
||||
Settings
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Eine Änderung an der Instanzkonfiguration, so grob, wie eine Oberfläche sie braucht,
|
||||
/// um den richtigen Bereich neu zu laden.
|
||||
///
|
||||
/// <para>Bewusst ohne die geänderten Werte: Beide Oberflächen lesen ohnehin aus
|
||||
/// <c>AppHost.Instance</c>, und ein zweiter Übertragungsweg für dieselben Daten wäre
|
||||
/// eine zweite Wahrheit. <see cref="Id"/> ist ein Hinweis, keine Zusage — wer ihn nicht
|
||||
/// auswerten will, lädt den ganzen Bereich neu.</para>
|
||||
/// </summary>
|
||||
/// <param name="Kind">Welcher Bereich betroffen ist.</param>
|
||||
/// <param name="Id">Agent-, Dienst- oder Job-Kennung, sofern es genau eine gibt.</param>
|
||||
public readonly record struct InstanceChange(InstanceChangeKind Kind, string? Id = null);
|
||||
Reference in New Issue
Block a user