Skip to content

fix(kiosque): le demarrage a froid cesse de ressembler a une panne - #15

Merged
lostmind84 merged 2 commits into
mainfrom
fix/kiosque-demarrage-a-froid
Jul 29, 2026
Merged

lostmind84 merged 2 commits into
mainfrom
fix/kiosque-demarrage-a-froid

Conversation

@lostmind84

Copy link
Copy Markdown
Owner

Poste redemarre apres l'installation de la v0.6 : ecran blanc pendant deux minutes, puis un redemarrage du navigateur que personne n'avait demande. Rien n'etait casse -- c'est l'addition de deux mecanismes voulus.

Ce qui s'est passe, mesure sur PC-RECEPTION le 29/07/2026

Instant Evenement
17:47:54 demarrage machine
17:48:15 openscale kiosk demarre (tache a l'ouverture de session + 5 s)
17:50:11 le service repond (demarrage automatique differe, AutoStartDelay absent = 120 s par defaut)
17:50:12 le superviseur tue le navigateur et le relance sur l'ecran client

Le « redemarrage » observe etait le mecanisme de retour du superviseur, pas la panne. Mais §15.2 dimensionnait cette attente a ~10 s, pas a 120.

Ce que fait ce lot

  1. AutoStartDelay = 20 pose par install.ps1, sauvegarde dans restore.json, remis par uninstall.ps1. Get-SnapshotValue arrive avec lui : sous Set-StrictMode -Version Latest, lire une section absente d'un restore.json ecrit par une version anterieure echoue, et c'est la desinstallation qui aurait casse.
  2. Delai de grace de 20 s : rien n'est affiche tant que le poste n'a jamais repondu. Cas nominal : un seul lancement du navigateur, directement sur l'ecran client. La grace est servie une fois -- un service qui tombe a midi retrouve sa page en moins de 2 s.
  3. Deux formulations d'attente : « Application en cours de demarrage... » puis « Le poste redemarre... ». Trois points animes en CSS, jamais en JavaScript (page ouverte en file://). La page ERR-KSK-02 reste immobile : elle n'attend rien.
  4. C:\ProgramData\OpenScale\kiosk.log, deux generations de 256 Kio, sous mutex. Ce diagnostic-ci s'est fait a la pince faute de ce fichier.

Verification

go build ./... && go vet ./... && go test -race ./... -count=1

30 paquets ok, aucun FAIL. 3 nouveaux tests de superviseur, 2 de page de secours, 3 de journal, 1 etape ajoutee au banc PowerShell de deploy_test.go.

Reste ouvert

kiosk.log n'est pas dans diagnostic.zip, ce qui oblige TROUBLESHOOTING.md a demander un second fichier alors que la promesse etait « le fichier de diagnostic, et lui seul ». Note dans SUIVI.md.

Poste redemarre apres l'installation de la v0.6 : page blanche pendant deux
minutes, puis un redemarrage du navigateur que personne n'avait demande. Rien
n'etait casse -- c'est l'addition de deux mecanismes voulus. Le service est en
demarrage automatique DIFFERE et Windows fixe ce differe a 120 s par defaut,
valeur que personne n'avait choisie ; la tache du kiosque, elle, part 5 s apres
l'ouverture de session. Mesure sur PC-RECEPTION le 29/07/2026 : demarrage
17:47:54, kiosque 17:48:15, service 17:50:11, navigateur relance sur l'ecran
client 17:50:12. Le « redemarrage » observe ETAIT le mecanisme de retour du
superviseur, pas la panne.

install.ps1 ramene AutoStartDelay a 20 s, sauvegarde dans restore.json et remis
par uninstall.ps1 comme les autres reglages ecrases. Get-SnapshotValue arrive
avec lui : sous Set-StrictMode -Version Latest, lire une section absente d'un
restore.json ecrit par une version anterieure ECHOUE, et restore.json n'est
jamais reecrit -- c'est la desinstallation, le geste qui doit toujours marcher,
qui aurait casse.

Le superviseur accorde 20 s de grace a un poste qui n'a JAMAIS repondu, sans
rien afficher : une machine qui vient de demarrer a de toute facon l'air d'un
ecran noir, et une page montree trois secondes puis remplacee par une relance du
navigateur se lit comme une panne qui s'est reparee toute seule. La grace est
servie une fois -- un service qui tombe a midi retrouve sa page en moins de 2 s,
ce qu'un test mesure sur l'horloge injectee.

La page locale a deux formulations d'attente la ou elle n'en avait qu'une :
« Application en cours de demarrage... » tant que le poste n'a jamais repondu,
« Le poste redemarre... » ensuite. Les deux portent trois points animes en CSS,
jamais en JavaScript -- la page est ouverte en file://, ou un script est la
seule chose qu'une politique de navigateur pourrait refuser. La page ERR-KSK-02
reste immobile : elle n'attend rien.

Enfin kiosk.log, borne a deux generations de 256 Kio. Ce diagnostic-ci s'est
fait a la pince, sur les heures de creation des processus, parce que les lignes
du superviseur partaient sur la sortie standard d'une tache planifiee, qui ne
redirige nulle part. Elles sont ecrites sous mutex : logf est appele depuis la
boucle de supervision ET depuis la goroutine qui renouvelle l'inhibition de
veille.

Reste ouvert, note dans SUIVI.md : kiosk.log n'est pas dans diagnostic.zip, ce
qui oblige TROUBLESHOOTING.md a demander un second fichier alors que la promesse
etait « le fichier de diagnostic, et lui seul ».
@lostmind84
lostmind84 merged commit 59ff897 into main Jul 29, 2026
@lostmind84
lostmind84 deleted the fix/kiosque-demarrage-a-froid branch July 29, 2026 17:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant