chore(claude-do): merge Bind-Churn: DetailsIsland.BindAsync feuert ~1900x/Tag, 91-96

ClaudeDo-Task: 351cacc4-3e11-4b3e-a89e-4efc4bd0448e
This commit is contained in:
Mika Kuns
2026-08-13 09:00:32 +02:00
4 changed files with 46 additions and 2 deletions
+20
View File
@@ -0,0 +1,20 @@
using System.Runtime.CompilerServices;
using ClaudeDo.Ui.Services;
namespace ClaudeDo.Ui.Tests;
internal static class TestSetup
{
// Runs once when this test assembly loads, before any test executes. Without it, every test
// that constructs a real DetailsIslandViewModel/TasksIslandViewModel/WorkerClient and calls a
// method instrumented with OperationTiming.Shared.Record writes straight into the live app's
// ~/.todo-app/logs/operation-timing.ndjson — a single Ui.Tests run added 50-100 cancelled
// "DetailsIsland.BindAsync:?" lines to that file, dwarfing real usage and making the churn
// look like a UI bug.
[ModuleInitializer]
internal static void RedirectOperationTimingAwayFromRealAppData()
{
var path = Path.Combine(Path.GetTempPath(), "claudedo-ui-tests", $"operation-timing-{Environment.ProcessId}.ndjson");
OperationTiming.Shared = new OperationTiming(path);
}
}