# Pomar Rack — Windows (Legion) install & dogfood

The **beta-tester / dogfood** flow for running Pomar Rack on the Legion (Windows) to validate the TX-6
live-input path (**RACK-99**). The Legion stays a **clean test target** — no Visual Studio, CMake, or dev
tooling. Builds come from **GitHub Actions** (each push to `main` produces both an installer and a
portable ZIP). Download from the repo → **Actions** → the latest green **"Windows build"** run → **Artifacts**.

## Option 1 — Installer (recommended)
1. Download the **`PomarRack-Setup`** artifact → run **`PomarRack-Setup.exe`** (per-user, no admin prompt).
2. Choose a setup type: **App + content library** (also installs the prototype NKS packs) or **App only**.
3. At the end, leave the post-install boxes ticked:
   - **Install content packs into Native Instruments** (if you picked the content library)
   - **Build the library index + write a diagnostics report** — runs the indexer and writes
     `%USERPROFILE%\topo-diagnostics.txt`
   - **Launch Pomar Rack**
4. Start-menu group **Pomar Rack** has shortcuts: *Pomar Rack*, *Refresh Library*, *Diagnostics*, *Quickstart*.

## Option 2 — Portable ZIP
1. Download **`PomarRack-windows`**, unzip anywhere (e.g. `Documents\PomarRack`).
2. Optional — install the prototype presets: **double-click `Install-ContentPacks.cmd`**.
3. **Double-click `Diagnose.cmd`** — it builds the library index *and* writes a diagnostics report.
   (Or just build the index: in PowerShell, `.\topo-refresh.exe` — with **no path argument**, it writes to
   `%USERPROFILE%\TopoLibrary` automatically.)
4. Launch **`Pomar Rack.exe`**.

> The `.cmd` files exist because Windows blocks unsigned `.ps1` scripts by default — they run the PowerShell
> with a per-invocation `-ExecutionPolicy Bypass` (no system change).

## Diagnostics — when something's off
Run **`Diagnose.cmd`** (ZIP) or the **Diagnostics** shortcut (installer). It writes
`%USERPROFILE%\topo-diagnostics.txt` with: your environment, which VST3/NKS roots exist + file counts, the
full `topo-refresh` output, and the resulting library state. **Open that file, copy everything, and paste it
back to the dev** — it's the fastest way to diagnose an empty browser or a missing library.

## Dogfood the TX-6 (RACK-99)
1. Launch **`Pomar Rack.exe`**, plug in the **TX-6**.
2. **Setup → Audio Input** → select it → the discovered pairs appear (`In 1/2 · In 3/4 · In 5/6`).
3. On a track, **`+ source → Live Input`** → assign a pair. Load a plugin on another track and confirm:
   **both audible at once**, your **output device unchanged**, and switching the input device **doesn't glitch**.

## Notes
- **Empty browser after a refresh?** Run **Diagnostics** and send the report — the Windows NKS roots are
  best-guess and tuned from it (`libs/topo-import/src/DiscoveryRoots.cpp`).
- First launch may prompt Windows for **microphone / audio-input** access — accept it, or live input stays silent.
