diff --git a/docs/usage.md b/docs/usage.md index a0ac06ddc..7c7894768 100644 --- a/docs/usage.md +++ b/docs/usage.md @@ -636,6 +636,13 @@ Create a loose layout package from a build output folder, register it with Windo - **Folder mode** — the input is a build-output folder (contains a `Package.appxmanifest`/`AppxManifest.xml`). - **Project mode** — the input is a `.csproj`, a `.sln`/`.slnx` solution, or a directory containing one. `winapp run` builds the project and launches it, supporting both **packaged** and **unpackaged** WinUI apps. See [Project mode](#project-mode-net-sdk-projects) below. +> [!TIP] +> Mode selection is silent by default. If a directory was treated as a build-output folder when you +> expected it to be built as a project, re-run with `--verbose` — folder mode reports why it was +> chosen (`No .csproj/.sln/.slnx with a runnable app found in '' — running it as a +> build-output folder.`). A directory is only built as a project when a `.csproj`/`.sln`/`.slnx` +> with a runnable app sits at its **top level**; it is not searched recursively. + > **This is the preferred command for debugging with package identity** for most frameworks (.NET, C++, Rust, Flutter, Tauri). Unlike [`create-debug-identity`](#create-debug-identity) which registers a sparse package for a single exe, `winapp run` registers the entire folder as a loose layout package, just like a real MSIX install. See the [Debugging Guide](debugging.md) for common debugging workflows. ```bash diff --git a/src/winapp-CLI/WinApp.Cli.Tests/RunCommandTests.cs b/src/winapp-CLI/WinApp.Cli.Tests/RunCommandTests.cs index 02f915e29..97c1e5121 100644 --- a/src/winapp-CLI/WinApp.Cli.Tests/RunCommandTests.cs +++ b/src/winapp-CLI/WinApp.Cli.Tests/RunCommandTests.cs @@ -25,7 +25,7 @@ public class RunCommandTests : BaseCommandTests private static readonly string[] SupportedArchitectures = ["x64", "arm64", "x86"]; private static readonly string[] ForcedUnpackagedProperties = ["WindowsPackageType=None", "Foo=Bar"]; - private const string TestManifestContent = """ + internal const string TestManifestContent = """