chore(profiling): instrument plugin-load hot paths (v1.4.9 R3)
Bump AutoTranslate-warmup and FilterAllTabs log-level from Debug to Information so the xllog tail surfaces them without a Debug filter. Wrap MessageStore.Connect and MessageStore.Migrate in Stopwatches so the SQLite open and migration-chain costs are visible too. Sub-Task 3.4 Befund on v1.4.8-baseline (4 reloads, medians): - MessageStore.Connect: 50.5 ms - MessageStore.Migrate: 2 ms - MessageManager.FilterAllTabs: 68.5 ms - AutoTranslate warmup: 108 ms - UiBuilder HITCH: 108.9 ms Outcome D — none of the three dominates the 200 ms threshold. The ChatTwo "300 ms" comment for AutoTranslate is falsified at ~108 ms; SQLite is not the bottleneck (52.5 ms total); FilterAllTabs runs on the worker thread and only competes for CPU slots. The HITCH is left unexplained by these probes, which keeps Hypothesis c (multi-window WindowSystem.Draw initial pass) as the main R2 suspect to be validated by the R1 lazy-window refactor. Logs stay in as belt-and-suspenders for future plugin-load regressions.
This commit is contained in:
@@ -206,7 +206,10 @@ internal class MessageManager : IAsyncDisposable
|
||||
Plugin.LogProxy.Error(ex, "Error in FilterAllTabs");
|
||||
}
|
||||
|
||||
Plugin.LogProxy.Debug($"FilterAllTabs took {stopwatch.ElapsedMilliseconds}ms");
|
||||
// v1.4.9 R3 profiling: Information so the xllog tail surfaces this
|
||||
// without a Debug filter. Belt-and-suspenders for future plugin-load
|
||||
// regressions; remains in place after Sub-Task 3.4 Befund.
|
||||
Plugin.LogProxy.Information($"FilterAllTabs took {stopwatch.ElapsedMilliseconds}ms");
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user