@pierre-gilles ,
Tengo un problema con el botón Forzar la actualización de las integraciones externas.
Cuando hago un build manual y subo la imagen de desarrollo a Github, si fuerzo la actualización, funciona bien.
Pero en una versión no de desarrollo desde Github, el botón Forzar la actualización no funciona. Hay que esperar a que se detecte la actualización para instalar la nueva imagen. ¿Es este un comportamiento deseado?
Por ejemplo, hice una versión para la integración Freebox y una hora después, nada. La actualización no se detecta y el botón Forzar no hace nada.
Hola @Will_71 ,
Gracias por el comentario, ya está corregido aquí:
master ← claude/integration-externe-bouton-maj-z6w5gi
ouvert 06:19PM - 04 Aug 26 UTC
### Description
This PR fixes a critical issue where external integration updat… es could fail to detect newly published versions due to relying on stale in-memory cache. The store index is rebuilt hourly and cached client-side for 30 minutes, so an update triggered minutes after a release would resolve to the previous manifest and re-pull the same image tag, making the "Force update" button appear broken.
**Key changes:**
1. **Always refresh the store index on update** — Instead of trusting the in-memory `storeIndex`, the update flow now calls `getIndex({ refresh: true })` to fetch the latest index from the source.
2. **Compare both sources and pick the most recent** — A new `getMostRecentManifest()` function compares the index entry with the repo manifest (the source the indexer mirrors) and returns whichever has the higher semver version. This handles the case where the repo has a newer release not yet reflected in the index.
3. **Validate semver versions** — Non-semver versions from either source are ignored, preventing malformed data from winning over valid releases.
4. **Update `isUpdateAvailable()` logic** — Now prefers the repo manifest when it's ahead of the index, since once the repo manifest has been read (e.g., during an update), its version is the authoritative one to compare against.
5. **Improve user feedback** — The UI now displays whether an update succeeded with a version change or if the integration was already up-to-date (with the image re-pulled and container recreated). Added localized messages in English, French, and German.
### Checklist
- [x] Tests pass: Added 6 comprehensive test cases covering all update scenarios (index refresh, repo fallback, semver validation, version comparison)
- [x] Linter and prettier pass
- [x] No breaking changes
https://claude.ai/code/session_01HdhbQ14TDfWhrwsiwrEKji
## Summary by CodeRabbit
* **New Features**
* Integration updates now compare versions from multiple sources to detect newer releases despite stale indexes.
* Force updates refresh release information before rebuilding containers and can fall back when a source is unavailable.
* Update results indicate whether an integration was updated or already current, including the resulting version.
* Installed integrations can refresh their repository information directly.
* **Localization**
* Added and updated English, French, and German messages for integration update outcomes.
La corrección está en vivo en la 4.84.4:
Salut à tous !
Petite release du soir, suite directe aux retours d’hier : le vrai fix OAuth Spotify (via HTTPS), le bug d’alarme pendant l’armement, et quelques améliorations UX bien concrètes
Intégrations externes : OAuth2 via my.gladysassistant.com
Spotify (et les providers OAuth modernes en général) n’acceptent plus une redirect_uri en HTTP sur une IP locale (http://192.168.x.x). Résultat : la plupart des installs auto-hébergées se prenaient un redirect_uri: Not matching configura…