acces distant : remplacer un worker de tunnel issu d'une autre copie de l'app

Le worker est detache expres pour survivre a la fermeture de Jean.app : un
worker lance par une ancienne copie (translocatee ou version precedente)
continue donc de servir l'UI distante avec du code perime — l'alerte App
Translocation s'affichait sur app.ajean.link alors que l'app locale tournait
bien depuis /Applications.

Le fichier PID porte desormais le binaire d'origine en 2e ligne ; au
demarrage, un worker dont le binaire differe du notre est redemarre.
This commit is contained in:
nathaninline committed 2026-07-25 13:29:33 +02:00
1 parent 43ea4ad6c7
commit f8e856ed7c
2 files changed
+55 -2

No files matched your search

+11 -1
View File
@@ -47,7 +47,17 @@ func cmdApp(args []string) error {
// fait : sans ça le token reste enregistré et le panneau affiche « service
// arrêté » à chaque démarrage de l'app.
go func() {
if readLinkToken() != "" && !linkServiceActive() {
if readLinkToken() == "" {
return
}
// Worker rescapé d'une AUTRE copie de l'app (ancienne version, copie
// translocatée…) : il tourne toujours — le tunnel est détaché exprès — et
// continue de servir l'UI distante avec du code périmé. On le remplace.
if linkWorkerIsStale() {
_ = linkServiceCtl("restart")
return
}
if !linkServiceActive() {
_ = linkServiceCtl("start")
}
}()