Stufe 4c (#764): Kommentare in C#, WebUI-Skripten, CSS und HTML auf Englisch

Rund 2.600 Kommentarblöcke in 310 C#-Dateien übersetzt, Begründungen vollständig
erhalten: blockweise gleiche Anzahl wie vorher, kein Block unter 60 % seiner
Länge, der Code außerhalb der Kommentare per Tokenizer byte-identisch geprüft.
Zitate deutscher Oberflächentexte und Testdaten bleiben deutsch.

WebUI: Kommentare in JS/CSS/HTML übersetzt, JSDoc-@param an die in 4b
umbenannten Parameter angeglichen.

Dabei behoben:
- 4b hatte "tag" (HTML-Tag) als deutsches "Tag" gelesen und zu "dayValue"
  gemacht (makeElement, svg, Tagesübersicht) - zurück auf tag/day.
- Aufgaben "InProgress" bekamen die Plakettenart "laufend", für die es nie eine
  CSS-Klasse gab - jetzt "success" wie laufende Instanzen.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Richard
2026-10-04 12:45:03 +02:00
co-authored by Claude Opus 5.5
parent da4ceac7d5
commit 837a634a22
311 changed files with 7238 additions and 7252 deletions
@@ -4,15 +4,15 @@ using Shouldly;
namespace ClawdDotNet.Core.Tests.Instances;
/// <summary>
/// Der Nachweis, dass ein lizenzierter Instanzmanager die Instanz gestartet hat (#535).
/// The proof that a licensed instance manager started the instance (#535).
///
/// <para><b>Das Loch, das hier zugeht.</b> Mit E-M3 prüft eine geführte Instanz die Lizenz
/// nicht mehr selbst — der Manager hat es zentral getan. Woran sie „geführt" erkannte, war
/// der Schalter <c>--managed</c>, und ein Schalter ist keine Erkennung.</para>
/// <para><b>The hole this closes.</b> With E-M3 a managed instance no longer checks the license
/// itself — the manager did it centrally. What it recognized "managed" by was
/// the switch <c>--managed</c>, and a switch is no recognition.</para>
///
/// <para>Es geht nicht darum, jemanden abzuwehren, der Werkzeuge mitbringt: Der Schlüssel
/// steht in der Programmdatei. Es geht darum, dass der gewöhnliche Weg an der Lizenz
/// vorbei verschlossen ist.</para>
/// <para>The point is not to fend off someone who brings tools: the key
/// is in the executable. The point is that the ordinary way around the license
/// is closed.</para>
/// </summary>
public sealed class ManagerHandshakeTests
{
@@ -28,7 +28,7 @@ public sealed class ManagerHandshakeTests
}
/// <summary>
/// Der Fall, der überhaupt der Anlass war: <c>--managed</c> ohne Unterschrift.
/// The case that was the occasion in the first place: <c>--managed</c> without a signature.
/// </summary>
[Theory]
[InlineData(null)]
@@ -45,7 +45,7 @@ public sealed class ManagerHandshakeTests
}
/// <summary>
/// Eine erfundene Unterschrift trägt nicht — auch wenn der Aufbau stimmt.
/// A made-up signature does not hold — even if the structure is right.
/// </summary>
[Fact]
public void Eine_erfundene_Unterschrift_traegt_nicht()
@@ -57,10 +57,10 @@ public sealed class ManagerHandshakeTests
}
/// <summary>
/// Geprüft wird gegen das Verzeichnis, in dem die Instanz <b>tatsächlich</b> läuft.
/// The check is against the directory the instance <b>actually</b> runs in.
///
/// <para>Sonst unterschriebe man das Argument statt der Sache: Eine Unterschrift für
/// Alpha ließe Beta starten, indem man beim Prüfen Alpha vorzeigt.</para>
/// <para>Otherwise one would sign the argument instead of the thing: a signature for
/// Alpha would let Beta start by presenting Alpha during the check.</para>
/// </summary>
[Fact]
public void Eine_Unterschrift_gilt_nur_fuer_ihre_eigene_Instanz()
@@ -71,8 +71,8 @@ public sealed class ManagerHandshakeTests
}
/// <summary>
/// Abgelaufen ist abgelaufen — sonst hübe jemand eine Unterschrift auf und startete
/// damit nächste Woche eine Instanz ohne Lizenz.
/// Expired is expired — otherwise someone would keep a signature and start
/// an instance without a license with it next week.
/// </summary>
[Fact]
public void Eine_abgelaufene_Unterschrift_traegt_nicht()
@@ -85,7 +85,7 @@ public sealed class ManagerHandshakeTests
}
/// <summary>
/// Am Ablaufzeitpunkt herumzudrehen hilft nicht: Er geht in die Unterschrift ein.
/// Fiddling with the expiry time does not help: it goes into the signature.
/// </summary>
[Fact]
public void Ein_verlaengerter_Ablauf_macht_die_Unterschrift_ungueltig()
@@ -99,8 +99,8 @@ public sealed class ManagerHandshakeTests
}
/// <summary>
/// Derselbe Pfad in anderer Schreibweise muss dieselbe Unterschrift ergeben — sonst
/// scheitert der Handschlag daran, dass einer einen Schrägstrich mehr geschrieben hat.
/// The same path in a different spelling must yield the same signature — otherwise
/// the handshake fails because one wrote one slash more.
/// </summary>
[Fact]
public void Schreibweisen_desselben_Pfades_ergeben_dieselbe_Unterschrift()