/
/
/
# What does this implement/fix? The Bose SoundTouch provider preset configuration was not functional: a selected search result could disappear before its Music Assistant URI was assigned, making it impossible to configure a physical preset reliably. This fixes the preset assignment flow and replaces the six duplicated search forms with one guided provider-level workflow: 1. Select a media type. 2. Enter search keywords. 3. Select a result. 4. Choose one of the six physical presets. 5. Assign the selected Music Assistant URI to that preset. Dependent fields are reset whenever an earlier search step changes, preventing stale or inconsistent form states. After assignment, the temporary search values are cleared while the six final preset mappings remain stored and manually editable. The change also adds regression tests for search state, cascading resets and preset assignment. The configuration and assignment flow was tested, but not the physical preset button directly on the speaker. This change does not modify the existing preset playback logic. Thanks to @marcelveldt for his help. **Related issue (if applicable):** - https://github.com/orgs/music-assistant/discussions/4766 ## Types of changes - [x] Bugfix (non-breaking change which fixes an issue) — `bugfix` - [ ] New feature (non-breaking change which adds functionality) — `new-feature` - [ ] Enhancement to an existing feature — `enhancement` - [ ] New music/player/metadata/plugin provider — `new-provider` - [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) — `breaking-change` - [ ] Refactor (no behaviour change) — `refactor` - [ ] Documentation only — `documentation` - [ ] Maintenance / chore — `maintenance` - [ ] CI / workflow change — `ci` - [ ] Dependencies bump — `dependencies` ## Checklist - [x] The code change is tested and works locally. - [ ] `pre-commit run --all-files` passes. - [ ] `pytest` passes, and tests have been added/updated under `tests/` where applicable. - [ ] For changes to shared models, the companion PR in `music-assistant/models` is linked. - [ ] For changes affecting the UI, the companion PR in `music-assistant/frontend` is linked. - [x] I have read and complied with the project's [AI Policy](https://github.com/music-assistant/.github/blob/main/AI_POLICY.md) for any AI-assisted contributions. - [ ] I have raised a PR against the documentation repository targeting the main or beta branch as appropriate. --------- Co-authored-by: Fabian Munkes <[email protected]> Co-authored-by: OzGav <[email protected]>