Commit Graph

  • 6aa7265147 Les macros arrivent au poignet — affichage, pas saisie feat/watch-outdoor Sylvain Bettinelli 2026-09-25 07:46:32 +00:00
  • d41e8a457b Premier build : deux dialogues Siri refusés, la faute à une concaténation Sylvain Bettinelli 2026-09-25 07:15:37 +00:00
  • 0d34908f4f Runbook : la cible watchOS s'appelle CoachWatchWidgetsExtension, pas CoachWatchWidgets Sylvain Bettinelli 2026-09-25 07:02:29 +00:00
  • 98b1cd0c89 Siri connaît enfin l'app, et la montre sait noter un verre Sylvain Bettinelli 2026-09-25 06:58:11 +00:00
  • 3b5b61268c Les quatre constats restants, corrigés — dont deux sur le chemin qu'il fallait éviter Sylvain Bettinelli 2026-09-24 08:27:17 +00:00
  • a794323314 Le snapshot arrive à la montre, et on peut enfin le dire Sylvain Bettinelli 2026-09-24 08:20:52 +00:00
  • 7e7be4a1d1 Les bornes cardiaques partaient vers la montre sans que rien ne dise si elles arrivaient Sylvain Bettinelli 2026-09-24 08:08:02 +00:00
  • 8e0c2738ce Les cinq constats natifs de l'audit, vérifiés ligne à ligne — sans rien corriger Sylvain Bettinelli 2026-09-24 08:00:30 +00:00
  • 6031be8c1c CLAUDE.md : Capgo ne déplie pas les séries condensées, getStepSamples si Sylvain Bettinelli 2026-09-22 20:00:11 +00:00
  • 8973a26e47 Les pas d'une séance sont lus en dépliant les séries condensées par HealthKit Sylvain Bettinelli 2026-09-22 19:55:48 +00:00
  • b15867273c Le détail natif expose les activités HealthKit de la séance, en lecture seule Sylvain Bettinelli 2026-09-22 19:32:40 +00:00
  • 31467851d9 Séances perdues en silence, et succès journalisés sur des requêtes refusées Sylvain Bettinelli 2026-09-22 09:20:43 +00:00
  • 2c9af6c684 Chaque pause effaçait jusqu'à 24 points de trace déjà parcourus Sylvain Bettinelli 2026-09-22 09:20:30 +00:00
  • a5cbb70210 Les deux extensions étaient restées au build 22, l'app était passée à 23 Sylvain Bettinelli 2026-09-22 09:18:45 +00:00
  • adb8177f2f Écran noir au lancement : la fenêtre n'était jamais rendue visible Sylvain Bettinelli 2026-09-22 09:16:08 +00:00
  • 157250b3eb Package.resolved régénéré pour capacitor-swift-pm 8.5.2 Sylvain 2026-09-22 11:09:53 +02:00
  • bb1261dfd8 Le Package.swift généré était invalide : la faute à une variable Xcode Sylvain Bettinelli 2026-09-22 08:53:46 +00:00
  • 316a35f33b Merge branch 'feat/watch-outdoor' of https://git.nexus.hypnotruck.ch/sylvain/coach-ios into feat/watch-outdoor Sylvain 2026-09-22 10:33:27 +02:00
  • 446b611afd Intégration Xcode du chantier Polar BLE : SDK SPM et sources au target Sylvain 2026-09-22 10:31:52 +02:00
  • e5c8967ea9 SceneDelegate.swift enregistré dans le target App Sylvain Bettinelli 2026-09-22 08:15:41 +00:00
  • 3bd90c8bb7 CLAUDE.md : la règle du cookie ne suffit plus, le SceneDelegate en porte la moitié Sylvain Bettinelli 2026-09-22 08:05:25 +00:00
  • 3755cafa1f Adoption du cycle de vie UIScene : sans lui, l'app ne démarre plus Sylvain Bettinelli 2026-09-22 08:04:14 +00:00
  • d5330b8f1a La FC ne reste plus affichée quand le capteur a décroché Sylvain Bettinelli 2026-09-22 07:48:07 +00:00
  • c16b92ce29 Correction : les rappels SONT natifs, j'avais cherché le mauvais plugin Sylvain Bettinelli 2026-09-22 07:00:49 +00:00
  • a29569c05c Les push natives ne sont branchées nulle part, et le README affirme l'inverse Sylvain Bettinelli 2026-09-22 06:58:17 +00:00
  • b1e7cf6d47 Audit complet de l'app mobile : natif, conformité Apple, ergonomie Sylvain Bettinelli 2026-09-22 06:55:20 +00:00
  • e6cdc67451 Revert "iOS 27 compat: VMA test — rendre startKmh éditable au lieu de figé à 8" Sylvain Bettinelli 2026-09-20 15:54:35 +00:00
  • 263a8f694f iOS 27 compat: VMA test — rendre startKmh éditable au lieu de figé à 8 Sylvain Bettinelli 2026-09-20 15:46:57 +00:00
  • 150e78efa0 Checklist pré-build Mac : feat/watch-outdoor prêt, 4 vérifications device Sylvain Bettinelli 2026-09-20 15:35:23 +00:00
  • 3d939b8c3c Le build de ce soir tient sur une page, et l'import ne peut plus surprendre Sylvain Bettinelli 2026-09-03 07:16:50 +00:00
  • 9903424235 Le plugin affirmait l'envoi sans jamais relire ce que la montre avait reçu Sylvain Bettinelli 2026-09-03 06:24:08 +00:00
  • 0a721c249b La réinitialisation du 31/08 était un choix, pas une nécessité constatée Sylvain Bettinelli 2026-09-01 10:42:50 +00:00
  • 2a4274b1ad Déconnecter Flow automatiquement est impossible, et le mode avion est le raccourci Sylvain Bettinelli 2026-09-01 09:34:13 +00:00
  • 422b6ac3e6 « Fermer l'app Polar Flow » était un conseil faux, et mesuré tel dès le 31/08 Sylvain Bettinelli 2026-09-01 08:30:48 +00:00
  • 7d68605e83 « errorcode 104 » n'était pas un refus : mkdir sur un dossier déjà là Sylvain Bettinelli 2026-09-01 08:25:26 +00:00
  • 474afce348 Le BLE marche sur montre réinitialisée, et ANCS ne portera jamais un .BPB Sylvain Bettinelli 2026-09-01 08:21:00 +00:00
  • 5fc19bf095 L'essai BLE a désactivé l'USB de la montre : il a fallu une réinitialisation Sylvain Bettinelli 2026-08-31 16:11:34 +00:00
  • adcf4088f3 La Vantage refuse la connexion tierce : la question de fond est tranchée Sylvain Bettinelli 2026-08-31 13:46:14 +00:00
  • 3cc7d935ad La montre ne diffuse pas parce qu'elle est déjà connectée : la chercher ailleurs Sylvain Bettinelli 2026-08-31 13:40:12 +00:00
  • 60dd22eaeb Mon filtre rejetait peut-être la montre, et mon message accusait le scan Sylvain Bettinelli 2026-08-31 13:36:28 +00:00
  • eef76daa45 blePowered() lit le manager, search() lit le sujet : ce ne sont pas les mêmes Sylvain Bettinelli 2026-08-31 13:31:30 +00:00
  • 753d7b248e CurrentValueSubject, pas Passthrough : il fallait réveiller AVANT, pas après Sylvain Bettinelli 2026-08-31 13:27:58 +00:00
  • 0f96122cca Arrêt du chantier BLE : l'approche « piloter le listener à la main » est la mauvaise Sylvain Bettinelli 2026-08-31 13:25:52 +00:00
  • 01607ed75c Les fenêtres de scan se privaient de l'unique émission d'état Sylvain Bettinelli 2026-08-31 13:23:31 +00:00
  • 94b1f6243d Sans filtre, on ouvrait une session sur les 43 appareils BLE du voisinage Sylvain Bettinelli 2026-08-31 13:20:05 +00:00
  • 81582ce969 Une attente sans fin ne dit rien : échéances sur les appels du SDK Sylvain Bettinelli 2026-08-31 13:17:08 +00:00
  • 1389edb1f7 Cause racine : le CBCentralManager du SDK est lazy, et search() ne le réveille jamais Sylvain Bettinelli 2026-08-31 13:11:20 +00:00
  • 3de149591e Le scan du SDK ne démarre pas, et le message le dira au lieu d'accuser la montre Sylvain Bettinelli 2026-08-31 13:06:15 +00:00
  • 14133efba9 Quand le SDK ne voit rien, demander à CoreBluetooth ce que LUI voit Sylvain Bettinelli 2026-08-31 13:01:28 +00:00
  • 6deb61e86e iOS n'avait jamais demandé l'autorisation Bluetooth, et le scan attendait un état qui n'arrivait pas Sylvain Bettinelli 2026-08-31 12:57:02 +00:00
  • 179528d563 Trois causes opposées disaient la même chose : le premier essai BLE n'a rien appris Sylvain Bettinelli 2026-08-31 12:47:28 +00:00
  • 0110368e17 L'heure de l'objectif est une question ouverte, pas un réglage à deviner Sylvain Bettinelli 2026-08-31 07:17:45 +00:00
  • 184c08a447 La séance part sur la Polar en Bluetooth, et refuse de partir mal formée Sylvain Bettinelli 2026-08-31 07:06:53 +00:00
  • a44fa0046a Cadrage des vues d'entraînement au choix, et point d'étape du 21/08 Sylvain Bettinelli 2026-08-21 09:53:46 +00:00
  • 3e657f5917 Une trace GPS ne peut pas être sauvegardée sans séance Sylvain Bettinelli 2026-08-21 09:22:50 +00:00
  • 2f2d7696fa COWORK : la couche serveur du plan de séance est livrée Sylvain Bettinelli 2026-08-21 09:11:31 +00:00
  • 891a8bddce IntervalEngine : le commentaire sur les pauses disait l'inverse d'Apple Sylvain Bettinelli 2026-08-20 16:52:21 +00:00
  • 19fbfd116e pbxproj : IntervalEngine était déclaré deux fois Sylvain Bettinelli 2026-08-20 16:37:54 +00:00
  • eb523ff205 COWORK : les fichiers sont dans la cible, la manip Xcode n'a plus lieu d'être Sylvain Bettinelli 2026-08-20 16:36:57 +00:00
  • acbb2c6896 La montre enregistre enfin sa trace GPS Sylvain Bettinelli 2026-08-20 16:36:03 +00:00
  • be1ffec5c1 IntervalEngine rejoint la cible CoachWatch Sylvain 2026-08-20 18:35:47 +02:00
  • 1a5b9cbcad COWORK : le moteur d'intervalles, et une commande qui n'existait pas Sylvain Bettinelli 2026-08-20 16:24:12 +00:00
  • f2fa3cccb0 Le moteur d'intervalles, pour guider une séance dans notre app Sylvain Bettinelli 2026-08-20 07:50:27 +00:00
  • 852e12526a La montre avait les données du jour et n'en montrait rien main Sylvain Bettinelli 2026-08-19 20:34:31 +00:00
  • 4cff1d4603 Les widgets reçoivent la bande et les préréglages au lieu de les inventer Sylvain Bettinelli 2026-08-19 11:42:19 +00:00
  • a965c1ad2b Plugin natif CoachSleep : le sommeil avec son fuseau Sylvain Bettinelli 2026-08-19 09:37:49 +00:00
  • 1d2d7a0e18 Une toolchain Swift sur Linux, pour ne plus ecrire de dates a l'aveugle Sylvain Bettinelli 2026-08-18 07:42:59 +00:00
  • b8eb1e1b1e Le widget ne passait pas minuit : personne ne lisait updatedAt Sylvain Bettinelli 2026-08-18 07:11:15 +00:00
  • 5bf3e91ad2 Widget Boissons : jauge d'hydratation + ouverture sur /hydratation Sylvain Bettinelli 2026-08-13 08:33:40 +00:00
  • fb4033130f Watch : cible clinique, couleurs alignées sur l'iPhone, aperçus Xcode Sylvain Bettinelli 2026-08-12 19:20:16 +00:00
  • eb819b68ca Watch : afficher la zone cardiaque pendant la séance Sylvain Bettinelli 2026-08-12 19:13:07 +00:00
  • 8a25f3604a Exposer le snapshot stocke pour trancher un widget fige Sylvain Bettinelli 2026-08-11 20:02:15 +00:00
  • c74faeaad5 Marche 6 minutes, et la vraie recuperation cardiaque Sylvain Bettinelli 2026-08-11 18:58:24 +00:00
  • a61ba25590 Test de VMA guide au poignet Sylvain Bettinelli 2026-08-11 18:47:03 +00:00
  • 3202e03a63 Trois widgets d'ecran verrouille et une complication Routine Sylvain Bettinelli 2026-08-11 18:08:13 +00:00
  • 12b56a4d39 Le widget disait « JOUR OFF » les jours de sortie non planifiee Sylvain Bettinelli 2026-08-11 17:56:53 +00:00
  • 326e73aaae L'extension LiveActivity etait passee en build 23, seule contre les autres Sylvain Bettinelli 2026-08-11 14:47:45 +00:00
  • 5984685916 chore(xcode): target CoachWatchWidgets, fichiers du widget Saisie rapide, build 22 aligne Sylvain 2026-08-11 16:44:41 +02:00
  • a7daca02fd Lancer la seance du jour depuis la complication : etat des lieux, pour plus tard Sylvain Bettinelli 2026-08-11 14:39:48 +00:00
  • 089b6fbde6 Ce que la session Xcode du 11 aout a rencontre, et que le guide ne disait pas Sylvain Bettinelli 2026-08-11 14:34:28 +00:00
  • 4f8699fd37 Vitesse en km/h sur la montre et dans la Live Activity Sylvain Bettinelli 2026-08-11 13:31:13 +00:00
  • 21d39f2e98 Piloter la séance depuis la Live Activity (Pause / Terminer) Sylvain Bettinelli 2026-08-11 13:25:14 +00:00
  • ce048ee634 Runbook Mac pour builder le correctif Live Activity Sylvain Bettinelli 2026-08-11 12:54:40 +00:00
  • 5e9b4a3df6 La Live Activity restait affichée après la fin de séance Sylvain Bettinelli 2026-08-11 12:50:32 +00:00
  • 051c8e8ff4 Le guide faisait ouvrir un workspace qui n'existe pas Sylvain Bettinelli 2026-08-11 11:59:29 +00:00
  • ddfd95cbd7 Le guide Xcode annoncait un fichier a ajouter, il y en a quatre Sylvain Bettinelli 2026-08-11 11:40:49 +00:00
  • ebb9273dc3 Le scan de code-barres ne pouvait pas fonctionner sur Android Sylvain Bettinelli 2026-08-10 08:10:10 +00:00
  • 1c0e0320a9 Le plugin santé expose les métriques que seule la montre mesure Sylvain Bettinelli 2026-08-08 06:49:28 +00:00
  • 9790f0fa8a fix(widget): le pont effaçait l'hydratation à chaque chargement de page Sylvain Bettinelli 2026-08-06 13:54:32 +00:00
  • d8adad466b fix(widget): le total retombait à zéro après synchronisation Sylvain Bettinelli 2026-08-06 13:51:22 +00:00
  • b2b3c10807 L'hydratation est un total, pas une jauge Sylvain Bettinelli 2026-08-06 13:47:05 +00:00
  • 5eafa14b99 Jauges d'hydratation et de calories dans le widget Sylvain Bettinelli 2026-08-06 13:44:40 +00:00
  • e4d317f781 Titre dans le widget : « Saisie des repas et boissons » Sylvain Bettinelli 2026-08-06 13:40:38 +00:00
  • e715804dd9 fix(widget): Photo et Scanner ouvraient une page au hasard Sylvain Bettinelli 2026-08-06 13:40:10 +00:00
  • 54108381dd Widget Saisie rapide : bundle, schéma d'URL et synchro câblés Sylvain Bettinelli 2026-08-06 13:24:01 +00:00
  • 823bfb2ab9 Synchronisation des saisies du widget vers le serveur Sylvain Bettinelli 2026-08-06 13:06:28 +00:00
  • 7778e62c40 docs(widgets): runbook Mac du widget Saisie rapide Sylvain Bettinelli 2026-08-06 13:03:35 +00:00
  • 9fda989afc Widget natif « Saisie rapide » : eau et café sans ouvrir l'app Sylvain Bettinelli 2026-08-06 13:03:16 +00:00
  • f480c36dab feat(deeplink): entitlement associated-domains pour coach.hypnotruck.ch Sylvain Bettinelli 2026-08-06 09:27:56 +00:00
  • 37d52bf18d chore(xcode): signing et capabilities Sylvain 2026-08-06 11:07:02 +02:00