# Release Packaging and Behavior Testing (Windows) ## Artifact Layout Current release package type: portable ZIP. Expected contents: - `sprimo-app.exe` - `assets/sprite-packs/default/manifest.json` - `assets/sprite-packs/default/sprite.png` - `README.txt` Generated outputs: - `dist/sprimo-windows-x64-v.zip` - `dist/sprimo-windows-x64-v.zip.sha256` ## Commands Use `just` for command entry: ```powershell just check just test just build-release just package-win just smoke-win ``` `just package-win` calls `scripts/package_windows.py package`. `just smoke-win` calls `scripts/package_windows.py smoke`. ## Behavior Test Checklist (Packaged App) Run tests from an unpacked ZIP folder, not from the workspace run. 1. Launch `sprimo-app.exe`; verify default sprite renders. 2. Verify no terminal window appears when launching release build by double-click. 3. Verify global hotkey recovery (`Ctrl+Alt+P`) forces interactive mode. 4. Verify click-through and always-on-top toggles via API commands. 5. Verify `/v1/health` and `/v1/state` behavior with auth. 6. Verify `SetSpritePack`: - valid pack switches runtime visuals - invalid pack keeps current visuals and sets `last_error` 7. Restart app and verify persisted config behavior. 8. Confirm overlay background is transparent (desktop visible behind non-sprite pixels). 9. Confirm no magenta matte remains around sprite in default pack. ## Test Log Template - Date: - Artifact: - Commit: - Tester: - Result: - Notes: ## Issue Evidence Gate Before release sign-off for a bug fix: 1. Link the issue file (`issues/issueN.md`) in the test log. 2. Ensure before/after screenshot evidence is referenced from the issue: - before: `issues/screenshots/issueN-before-YYYYMMDD-HHMMSS.png` - after: `issues/screenshots/issueN-after-YYYYMMDD-HHMMSS.png` 3. Record verification commands and outcomes in the issue: - `cargo check --workspace` - `cargo test --workspace` - `just qa-validate` Legacy issues may reference `issues/screenshots/issueN.png` as before evidence.