Commit Graph

  • 6fcce1a470 feat(tools): etm-powersync-ref-optimizer, optimiseur de référence 1.1 (brief 4 T7, annexe E) Patrick Schurig 2026-10-17 13:16:43 +02:00
  • 693e01579f fix(optimiseur): un token recopié par l'optimiseur ne sort par aucun journal (brief 4 T7, correctif A) Patrick Schurig 2026-10-17 13:10:15 +02:00
  • 10683744d2 test(traces): le traceur n'apparie une réponse qu'à la ligne de sa requête (brief 4 T6) Patrick Schurig 2026-10-17 12:24:02 +02:00
  • 6c44a4e091 docs(traces): INTERFACE.md (réglage, RPC, format, fichiers, plafond), protocole annexe D (brief 4 T6) Patrick Schurig 2026-10-17 12:12:25 +02:00
  • 64a864bfaa feat(tools): etm-powersync-trace-replay, rejeu des traces vers un optimiseur (brief 4 T6) Patrick Schurig 2026-10-17 12:12:25 +02:00
  • 483bbcb027 feat(traces): traces de décision NDJSON, une ligne par cycle (brief 4 T6, annexe D) Patrick Schurig 2026-10-17 12:12:25 +02:00
  • 1f6c7ec27a refactor(plan): le plan rule-based porte strategy « rules », comme activeStrategy (brief 4 T6) Patrick Schurig 2026-10-17 11:46:36 +02:00
  • e5926189e9 fix(optimiseur): token déclaré String, type contrôlé par le moteur ; GetPlan sous verrou (brief 4 T4) Patrick Schurig 2026-10-17 09:47:09 +02:00
  • 7a32961b23 docs(optimiseur): INTERFACE.md (état, réglage, plan publié), protocole §4/§7/§8 (brief 4 T4) Patrick Schurig 2026-10-17 09:34:39 +02:00
  • c1ce67942c feat(optimiseur): machine de repli §7, état et plan publiés vers l'app (brief 4 T4) Patrick Schurig 2026-10-17 09:34:39 +02:00
  • 696cb001f1 test(decisions): référence régénérée après le correctif c (etm71) Patrick Schurig 2026-10-17 01:55:14 +02:00
  • c391d13312 test(decisions): comparateur étendu à purchasedWh (--achat) et liste des lignes (--lignes) Patrick Schurig 2026-10-17 01:51:21 +02:00
  • c81c7b6225 fix(optimiseur): pv.currentW publié dès qu'un smartmeterproducer existe, pas seulement un solarinverter Patrick Schurig 2026-10-17 01:51:21 +02:00
  • 6481515b64 fix(moteur): « acheté » compté sur l'énergie mesurée, pas sur la consigne (correctif c) Patrick Schurig 2026-10-17 01:51:21 +02:00
  • ff7c8011e2 feat(optimiseur): SocketScheduler — le plan d'un optimiseur appliqué par le chemin commun (brief 4 T3) Patrick Schurig 2026-10-16 22:06:45 +02:00
  • a8c58d02f0 feat(optimiseur): validateur pur du plan d'un optimiseur — OptimizerPlan (brief 4 T3) Patrick Schurig 2026-10-16 22:06:33 +02:00
  • 7597c87e58 test(optimiseur): faux optimiseur de T2 extrait dans un en-tête partagé Patrick Schurig 2026-10-16 22:06:17 +02:00
  • 26c0e02118 docs(doxygen): 0 avertissement — membres non documentés et balise échappée (DoD §5) Patrick Schurig 2026-10-16 21:01:44 +02:00
  • f2f65980b3 test(decisions): référence régénérée après les correctifs a et b (etm70) Patrick Schurig 2026-10-16 20:53:05 +02:00
  • cfa4ad9c6b test(decisions): comparateur « identique hors motifs » pour les lots qui ne changent que des motifs Patrick Schurig 2026-10-16 20:24:29 +02:00
  • e6bc32dc85 fix(moteur): ECO_FLOOR_MISSED dit, journalisé et notifié ; livré de clôture complet (correctif b, etm70) Patrick Schurig 2026-10-16 20:16:13 +02:00
  • e6ee513dcc fix(moteur): le motif publié décrit l'action fusionnée (correctif a, etm70) Patrick Schurig 2026-10-16 20:11:51 +02:00
  • 92f13cf677 test(decisions): réseau privé par processus (--unshare-net) dans run-decisions.sh Patrick Schurig 2026-10-16 19:54:25 +02:00
  • a280820138 merge: brief 4 T2 (client de transport) dans feature/forecast-protocol-1.1 Patrick Schurig 2026-10-16 19:02:38 +02:00
  • 7044b4cd07 fix(optimiseur): pas de puissances de cycle sous declared pour une borne (brief 4 T1) Patrick Schurig 2026-10-16 16:21:48 +02:00
  • 50a1f91feb feat(motifs): OPTIMIZER_DECISION, PRICE_SLOT, knownCodes() et liste blanche optimiseur (brief 4 T5) Patrick Schurig 2026-10-16 16:21:11 +02:00
  • 0fdbede6c3 feat(optimiseur): client de transport unix/tcp vers l'optimiseur (brief 4 T2) Patrick Schurig 2026-10-16 16:12:18 +02:00
  • 13114a2695 feat(optimiseur): sérialiseur GetPlan, protocole 1.1 §5.1-§5.3 (brief 4 T1) Patrick Schurig 2026-10-16 16:01:34 +02:00
  • 7622e11ea9 refactor(arbitre): l'action appliquée au cycle est conservée par charge (brief 4 T0.5) Patrick Schurig 2026-10-16 15:08:39 +02:00
  • e0b83f55a7 docs: retrait du nom « optimiseur ETM » des fichiers publiés (brief 4 T0.5) Patrick Schurig 2026-10-16 14:18:09 +02:00
  • e5c649e69a test(décisions): horloge murale figée au démarrage de chaque processus (brief 4 T0.5) Patrick Schurig 2026-10-16 14:18:09 +02:00
  • ac6dedbd53 refactor(prévision): l'assemblage du snapshot passe du handler à l'arbitre (brief 4 T0.5) Patrick Schurig 2026-10-16 08:01:00 +02:00
  • ab36143385 refactor(arbitre): IScheduler *m_strategy à côté de m_scheduler (brief 4 T0.5) Patrick Schurig 2026-10-16 07:45:45 +02:00
  • d4b7d4dced test(décisions): référence au bit près des scénarios de simulation (brief 4 T0.5) Patrick Schurig 2026-10-16 07:24:00 +02:00
  • 83483ccf71 release: 1.15.2+etm69 — tarif saisi et consommation de base (brief 3 T4) Patrick Schurig 2026-10-14 11:42:04 +02:00
  • 04fea6ffda docs(prévision): §32 consommation de base et prix ; protocole §5.2 (tou, quality) Patrick Schurig 2026-10-14 10:05:43 +02:00
  • bb34c6ed5e feat(prévision): base et prix sur la grille de GetForecastSnapshot, RPC Get/SetTariff Patrick Schurig 2026-10-14 10:05:43 +02:00
  • 66c81086a9 feat(base): BaseloadLog — minutes du bilan, profil médian, qualité dite Patrick Schurig 2026-10-14 09:51:23 +02:00
  • e3816ee031 feat(tarif): TariffConfig — tarif saisi validé, plages murales, moyenne pondérée Patrick Schurig 2026-10-14 09:51:17 +02:00
  • b62e6f55a8 docs(prévision PV): §4 — fourchette météo autorisée côté app, jamais publiée comme quantile Patrick Schurig 2026-10-14 08:45:42 +02:00
  • 72f353bf8e release: 1.15.2+etm68 — GTI observé dans l'enregistrement pour l'apprentissage Patrick Schurig 2026-10-13 10:21:18 +02:00
  • d37a11e803 docs(prévision PV): §31.7 — GTI observé, compléter plutôt qu'attendre, couverture attendue Patrick Schurig 2026-10-13 10:21:18 +02:00
  • d80b7d02d6 feat(prévision PV): le cycle lit observedGti/observedGtiTime sur le Thing plan Patrick Schurig 2026-10-13 10:21:18 +02:00
  • dd24cda445 feat(prévision PV): forecastLearning porte le GTI observé — migration etm67 en place Patrick Schurig 2026-10-13 10:21:18 +02:00
  • ca73fd733b release: 1.15.2+etm67 — enregistrement pour l'apprentissage (brief 3 T2) Patrick Schurig 2026-10-13 09:18:12 +02:00
  • b1fdff197f docs(prévision PV): §31 — enregistrement pour l'apprentissage, écrêtage détectable ou non Patrick Schurig 2026-10-13 09:15:27 +02:00
  • 2b83c206e4 feat(prévision PV): le cycle alimente l'enregistrement pour l'apprentissage Patrick Schurig 2026-10-13 09:15:27 +02:00
  • ff94377267 feat(prévision PV): table forecastLearning — un pas écoulé, un plan, une ligne Patrick Schurig 2026-10-13 09:15:27 +02:00
  • 139e48a938 changelog(1.15.2+etm66): normalisation de l'identifiant du site de prévision Patrick Schurig 2026-10-13 07:36:22 +02:00
  • 9c440367fa fix(prévision PV): l'identifiant du site est normalisé, avec ou sans accolades Patrick Schurig 2026-10-13 07:36:04 +02:00
  • c8da4ab2a0 release: 1.15.2+etm66 — aWATTar hors build, transport v2, plafond AC de site Patrick Schurig 2026-10-13 07:13:17 +02:00
  • 4f20ca22ed fix(prévision PV): GetPvForecast — une date illisible est une erreur explicite (D4) Patrick Schurig 2026-10-13 06:59:24 +02:00
  • b14db632ca feat(prévision PV): SetForecastSite — acLimitW absent = inchangé, null = effacer (D3) Patrick Schurig 2026-10-13 06:54:28 +02:00
  • 96148b9153 feat(prévision PV): GetForecastSnapshot publie les corrections par plan (perField, D2) Patrick Schurig 2026-10-13 06:48:11 +02:00
  • 5468192cf8 docs(prévision PV): conversion — fallback retiré, physics seule valeur émise (D1) Patrick Schurig 2026-10-13 06:39:38 +02:00
  • f05d4c6629 docs(prévision PV): §29 — ems lit la v2 et plafonne le site (état après brief 3 T1) Patrick Schurig 2026-10-12 12:59:27 +02:00
  • 6b66d49f27 feat(prévision PV): lire forecastCurveTransport v1 ET v2, plafond AC de site (brief 3, T1) Patrick Schurig 2026-10-12 12:59:27 +02:00
  • a23161b3b6 feat(spot): le fournisseur aWATTar sort du build livré (brief 3, T0) Patrick Schurig 2026-10-12 12:48:27 +02:00
  • 9574d4b266 [upstream-fix] SpotMarketManager::setEnabled : refuser plutôt que déréférencer un fournisseur nul Patrick Schurig 2026-10-12 12:36:59 +02:00
  • a45b10b457 docs(prévision PV): §28 — v: 2 est décidé, plus une hypothèse Patrick Schurig 2026-10-12 12:25:54 +02:00
  • 89b78c6cf5 docs(prévision PV): §28 — décisions du 2026-10-12 Patrick Schurig 2026-10-12 08:20:54 +02:00
  • c78dbfc318 docs(protocole): OPTIMIZER_PROTOCOL passe en v1.1 figée Patrick Schurig 2026-10-12 08:18:07 +02:00
  • a787a5c476 docs(prévision PV): « 20 kWh » était vrai et illisible — une énergie sans sa période feature/beta-rulebased Patrick Schurig 2026-09-09 10:44:58 +02:00
  • 9044216faa feat(prévision PV): GetForecastSnapshot — la table ou la décision, jamais les deux Patrick Schurig 2026-09-09 09:22:00 +02:00
  • bb15465109 docs+test: le contrôle qui disparaît avec ce qu'il surveille, et l'optionnel jamais exercé Patrick Schurig 2026-09-09 08:57:49 +02:00
  • c02807c56d test(RPC): balayage des getters — et la contre-épreuve a corrigé mon diagnostic Patrick Schurig 2026-09-09 08:43:19 +02:00
  • 1298b30df6 release: 1.15.2+etm65 — le RPC répond de nouveau, et la courbe courante est la bonne Patrick Schurig 2026-09-09 08:21:28 +02:00
  • ca0e4727ca fix(prévision PV): le RPC ne rendait plus rien, et la courbe courante était la mauvaise Patrick Schurig 2026-09-09 08:21:10 +02:00
  • 050b82791f docs(prévision PV): la somme vérifiée, et une configuration qui ressemble à une révision Patrick Schurig 2026-09-09 08:10:33 +02:00
  • 7641d4da5d release: 1.15.2+etm64 — dégel de la courbe, clé de contenu, et la règle de fusion écrite Patrick Schurig 2026-09-09 07:56:31 +02:00
  • 787401ffbe fix(prévision PV): la clé devient LE CONTENU — issuedAt n'identifie pas la courbe Patrick Schurig 2026-09-09 07:54:45 +02:00
  • 12ac837230 release: 1.15.2+etm63 — prévision PV, désignation du site, immuabilité du run Patrick Schurig 2026-09-09 07:24:16 +02:00
  • 2984d1ba87 fix(prévision PV): un RUN est immuable — écrasure silencieuse trouvée sur le banc Patrick Schurig 2026-09-09 07:23:42 +02:00
  • c55f1ec73a fix(prévision PV): aucune adoption d'office — le motif rend le silence acceptable Patrick Schurig 2026-09-09 06:49:46 +02:00
  • 7a11e97380 feat(prévision PV): migration — désigner d'office quand il n'y a rien à choisir Patrick Schurig 2026-09-09 06:34:02 +02:00
  • 2fe3986c33 feat(prévision PV): la prévision est une propriété du SITE — désignation globale et somme des plans Patrick Schurig 2026-09-09 06:17:58 +02:00
  • 0cb0e2bffe fix(prévision PV): une clé de run inconnue se REFUSE, et ne se devine jamais Patrick Schurig 2026-09-09 06:06:53 +02:00
  • c581631e86 release: 1.15.2+etm62 — la table de prévision PV et la lecture du canal Patrick Schurig 2026-09-09 05:58:11 +02:00
  • 22ad60cd06 feat(prévision PV): la fraîcheur ne date jamais la prévision, et elle n'est jamais absente Patrick Schurig 2026-09-09 05:56:18 +02:00
  • 606b6d92d9 feat(prévision PV): version B — une révision n'existe que si la prévision a changé Patrick Schurig 2026-09-08 19:55:38 +02:00
  • 139d686302 feat(prévision PV): la clé devient VRAIE, et la déduplication cesse de rejeter Patrick Schurig 2026-09-08 19:14:18 +02:00
  • 1b807614d6 docs(relevé): le contexte AVEC le décompte, et la prochaine question reformulée Patrick Schurig 2026-09-08 19:03:34 +02:00
  • 38538bb653 docs(relevé): fenêtre du 2026-09-08 — 10 bruts, 2 retenus, et la décision reste ouverte Patrick Schurig 2026-09-08 18:01:02 +02:00
  • 61f0b9ccbc feat(prévision PV): la table bitemporelle, la déduplication sur l'intersection, la rétention Patrick Schurig 2026-09-08 17:23:35 +02:00
  • 9de6d8a679 docs(inventaire): le sixième manque sous sa forme réelle — un instrument valide sur quatre Patrick Schurig 2026-09-08 17:09:16 +02:00
  • bad80cb22d docs(prévision PV): la clé de révision — déduplication, et receivedAt s'appelle receivedAt Patrick Schurig 2026-09-08 17:02:46 +02:00
  • 56312a7585 docs(prévision PV): le canal — trois grandeurs mesurées, et le précédent ne couvre pas ce lot Patrick Schurig 2026-09-08 16:49:22 +02:00
  • 5499e88ac3 docs(prévision PV): BLOQUÉ — le découpage contredit l'invariant « ZÉRO cloud » Patrick Schurig 2026-09-08 16:35:11 +02:00
  • 273a97a5b5 docs(design): la prévision PV est une série RÉVISÉE — table bitemporelle Patrick Schurig 2026-09-08 16:30:25 +02:00
  • 3df36596c1 docs: trois modes tranchés, et les transitions de dérogation sont écartées du tri Patrick Schurig 2026-09-08 12:09:03 +02:00
  • 02a9d1a0ca docs(relevé): second essai — de 9 A à 20 A, le double écrêtage était bien la cause Patrick Schurig 2026-09-08 12:00:03 +02:00
  • c361494dfe fix(dérogation): une borne n'est pas écrêtée deux fois, et un mode écrit la termine Patrick Schurig 2026-09-08 11:43:39 +02:00
  • f2c2fb083e fix(dérogation): setChargingInfo déclenche un update — pose après, restitution différée Patrick Schurig 2026-09-08 10:52:04 +02:00
  • e60c52f704 feat(§15): le boost est une DÉROGATION — servie au maximum, et qui s'efface Patrick Schurig 2026-09-08 10:31:00 +02:00
  • a0f26c7b49 docs: protocole du relevé du 2026-09-08, écrit avant la mesure Patrick Schurig 2026-09-08 06:22:01 +02:00
  • 5b60acaab5 docs(dérogation): une cible qui cesse d'être mesurable termine la dérogation Patrick Schurig 2026-09-08 06:15:34 +02:00
  • 0fac078c34 docs(dérogation): la cible se dit en ÉNERGIE, et la fin par SOC disparaît du design Patrick Schurig 2026-09-08 06:09:16 +02:00
  • 0ec086b217 docs: le boost est une DÉROGATION, pas un mode — design et règle Patrick Schurig 2026-09-07 16:41:47 +02:00
  • 5c67a6c481 release: 1.15.2+etm58 — recrédit corrigé (LM-1004) Patrick Schurig 2026-09-07 16:33:28 +02:00
  • 0700a1e8f3 fix(LM-1004): le recrédit appartient à la passe qui dépense du surplus Patrick Schurig 2026-09-07 13:17:56 +02:00