• v1.9.5 Stable

    Siphonight released this 2026-09-20 12:55:51 +02:00 | 8 commits to main since this release

    Corrigé — revue de code post-v1.9.4 (audit lecture-seule des deux dépôts)

    • Garde de cutoffHours pour ESE (parité du Kotlin) : la branche ESE ne
      vérifiait pas hasModel(ester) — un traitement IMPORTÉ (le backup accepte
      toute string de pkModel/ester) avec un ester non couvert (ex. ECS/PEP en
      ESE) levait TypeError et laissait un écran vide. Retombe maintenant sur
      la garde Bateman (≥ 24 h), comme TFS/WHS le faisaient déjà.
    • min/max en UNE passe : les spreads Math.min(...allPoints) (≈ 5 par
      frame) lèvent RangeError au-delà de ~10⁵ arguments — atteignable avec
      le Nuage actif × zoom max (≈ 230 000 points) — et allouaient un tableau
      intermédiaire par appel. Remplacés par une boucle (chart.js +
      chart-canvas.js).
    • Init MCMC non bloquante : le démarrage n'attend plus le fetch de
      l'asset (seul le nuage lit le posterior, qui renvoie [] proprement) ;
      l'init re-rend à la fin et pose data-ready — la garantie E2E
      « data-ready ⇒ asset chargé » est maintenant RÉELLE (le commentaire
      antérieur était faux : le marqueur était posé avant le fetch).
    • Portage des optimisations Android v1.8.2 (la dérive de miroir était
      réelle) : contexte moteur pré-calculé (prepareE2Context/e2AtCtx —
      doses groupées, cutoffs par traitement, Bateman paresseux),
      computeCurve ne recalcule plus cutoffHours PAR POINT × traitement ni
      le scan complet de doseLogs. Résultats identiques (175 tests verts).
    • E2E version paramétrée : les asserts lisent data-version posé par
      l'app au lieu de strings codées en dur à bump à chaque release (l'oubli a
      produit le bug v1.9.3).

    Documenté — miroir nettoyé

    • En-tête de pk-engine.js à jour (ESE analytique v1.9.0, plus de tables
      ODS) ; JSDoc « troncature » de pk-calibration.js alignée sur
      Math.round (fix v1.9.2) ; dialogs.js (ESE=6) ; import mort et JSDoc
      orpheline de lab-timing.js retirés ; couleurs de l'accueil via
      COLORS (source unique avec le canvas).
    • pk_profiles.json exclu du zip de release (.gitattributes
      export-ignore, −548 Ko livrés) : plus fetché au runtime depuis v1.9.0 —
      l'asset ne survit que pour le test de fidélité RMS (miroir Android),
      pk-profile-store.js documenté test-only.
    Downloads