feat(D.2b): run importer-built vitals window under ACDREAM_RETAIL_UI_IMPORTER (A/B)

Adds RuntimeOptions.RetailUiImporter (ACDREAM_RETAIL_UI_IMPORTER=1) — a new
opt-in flag that runs the LayoutImporter-built vitals window ALONGSIDE the
hand-authored vitals panel for pixel-for-pixel A/B comparison. The importer
window is placed at x=200, y=30 so both render simultaneously within the same
ACDREAM_RETAIL_UI=1 session. The hand-authored path is entirely untouched and
remains the default; the importer path is the eventual switch-over target.

Also adds two RuntimeOptionsRetailUiTests covering the new flag: value "1" →
true, unset/other → false.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Erik 2026-06-15 14:18:16 +02:00
parent e8ddb68801
commit ab3ab79380
3 changed files with 57 additions and 0 deletions

View file

@ -41,6 +41,7 @@ public sealed record RuntimeOptions(
bool DumpLiveSpawns,
int? LegacyStreamRadius,
bool RetailUi,
bool RetailUiImporter,
string? AcDir)
{
/// <summary>
@ -85,6 +86,7 @@ public sealed record RuntimeOptions(
// top of the quality preset's radii. Null when unset or invalid.
LegacyStreamRadius: TryParseNonNegativeInt(env("ACDREAM_STREAM_RADIUS")),
RetailUi: IsExactlyOne(env("ACDREAM_RETAIL_UI")),
RetailUiImporter: IsExactlyOne(env("ACDREAM_RETAIL_UI_IMPORTER")),
AcDir: NullIfEmpty(env("ACDREAM_AC_DIR")));
}