Bläddra i källkod

CHANGELOG 5.12 et doc d'API_TIMEOUT avant publication

Ajoute la ligne « En bref » de la 5.12, retire l'entrée sur les tests de la CI
(changement interne), fusionne les deux entrées sur les plafonds et corrige le
nom du message « En ligne ». Avec WEB_SEARCH=on, .env.exemple et le README
proposaient un API_TIMEOUT de 90 s, alors que le bot en demande 115 avec
MAX_TOKENS=6000 : ils conseillent maintenant 40 s de plus, soit 120.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Johnounet 15 timmar sedan
förälder
incheckning
b6c85e623f
3 ändrade filer med 6 tillägg och 8 borttagningar
  1. 1 1
      .env.exemple
  2. 4 6
      CHANGELOG.md
  3. 1 1
      README.md

+ 1 - 1
.env.exemple

@@ -33,7 +33,7 @@ API_TIMEOUT=90
 
 # --- Accès à Internet ----------------------------------------------------
 # Recherche web et lecture de liens : off ou on (payant : voir PRICE_WEB_SEARCH_PER_1000).
-# Avec on, prévois un API_TIMEOUT d'au moins 90 secondes (40 de plus que sans la recherche).
+# Avec on, prévois 40 secondes de plus pour API_TIMEOUT : 120 avec MAX_TOKENS=6000.
 WEB_SEARCH=off
 # Nombre maximal de recherches (et de pages lues) par message, de 1 à 10
 WEB_MAX_USES=3

+ 4 - 6
CHANGELOG.md

@@ -8,18 +8,18 @@ Les versions les plus récentes sont en haut. Chaque entrée commence par un ré
 
 ## Version 5.12
 
+> **En bref :** plusieurs images par message, des réponses groupées aux mentions, et un bot qui vérifie ses réglages au démarrage au lieu de tomber en panne plus tard.
+
 ### Changements
 
 - **Journal réglable.** `LOG_LEVEL` choisit le détail du journal (`DEBUG` pour enquêter, `INFO` par défaut), et `LOG_FILE=off` n'écrit que sur la console, pratique en conteneur. Le démarrage rappelle aussi les principaux réglages et les chemins des fichiers.
 
 - **Plusieurs images dans un même message.** Rika lit jusqu'à 4 images à la fois, dans l'ordre, y compris dans un message cité ou transféré, et peut les comparer ou parler de « la deuxième ». Si une image pose problème, le message d'erreur dit laquelle. Un PDF reste seul, sans image.
 
-- **Un message de démarrage plus soigné.** Le bloc « Bot en ligne » affiche l'avatar du bot, sa version, le modèle Claude utilisé (« Sonnet 5.5 ») et l'heure du démarrage.
+- **Un message de démarrage plus soigné.** Le message « En ligne » affiche l'avatar du bot, sa version, le modèle Claude utilisé (« Sonnet 5.5 ») et l'heure du démarrage.
 
 ### Corrections
 
-- **L'image Docker n'est plus publiée si les tests échouent.** Chaque push sur `main` lance maintenant les tests avant de construire l'image : une régression ne part plus en production.
-
 - **Deux bots ne tournent plus en boucle.** Face à un bot qui lui répond à chaque fois, Rika pouvait enchaîner les réponses, et les appels à Claude, sans fin. Elle s'arrête maintenant après 5 messages de bots d'affilée dans un salon, jusqu'au prochain message d'un membre ou après 10 minutes de calme.
 
 - **Une rafale de mentions ne lance plus un appel par message.** Comme dans son salon, les mentions envoyées pendant que Rika écrit, ou pendant une absence, reçoivent une seule réponse groupée, qui tient compte de celle qu'elle vient de poster : 10 « @Rika ? » d'affilée coûtaient 10 appels à Claude, ils en coûtent maintenant deux.
@@ -40,9 +40,7 @@ Les versions les plus récentes sont en haut. Chaque entrée commence par un ré
 
 - **Une personnalité illisible ne rend plus Rika muette.** Un fichier de personnalité illisible (pas en UTF-8, ou un dossier au lieu d'un fichier) faisait échouer chaque message. Rika garde maintenant la dernière personnalité valide, et le journal explique comment corriger le fichier.
 
-- **`CONTEXT_MESSAGE_LIMIT` plafonné à 100.** Une valeur comme 2000 pouvait coûter plusieurs dizaines de centimes par mention. Au-delà de 100, le bot refuse maintenant de démarrer, avec un message clair.
-
-- **Les autres réglages ont aussi un plafond.** Une valeur trop grande (`MAX_TOKENS`, `PDF_MAX_PAGES`, `WEB_MAX_USES`…) ne se voyait qu'au premier message, ou coûtait cher sans prévenir. Le bot refuse maintenant de démarrer au-delà du plafond, indiqué dans `.env.exemple`.
+- **Les réglages ont un plafond.** Une valeur trop grande ne se voyait qu'au premier message, ou coûtait cher sans prévenir : `CONTEXT_MESSAGE_LIMIT=2000` pouvait coûter plusieurs dizaines de centimes par mention. Au-delà du plafond (100 pour `CONTEXT_MESSAGE_LIMIT`, les autres dans `.env.exemple`), le bot refuse maintenant de démarrer, avec un message clair.
 
 - **`PRESENCE_WEIGHTS` mieux vérifié.** Une virgule en trop est ignorée. Un statut écrit deux fois, ou `jeu` comme seul statut possible sans `STEAM_API_KEY`, arrête maintenant le bot avec un message clair.
 

+ 1 - 1
README.md

@@ -108,7 +108,7 @@ Tous les réglages se trouvent dans le `.env`, et chacun est expliqué dans `.en
 | `MAX_HISTORY_LENGTH` | Messages gardés en mémoire dans le salon dédié (jusqu'à la moitié de plus avant d'y revenir d'un coup, ce qui garde la mémoire en cache) | `10` |
 | `CONTEXT_MESSAGE_LIMIT` | Messages lus autour d'une mention (100 au plus) | `20` |
 | `API_TIMEOUT` | Attente maximale d'une réponse, en secondes, relances comprises (une requête trop lente n'est pas relancée) ; le bot prévient au démarrage s'il est trop court pour `MAX_TOKENS` | `90` |
-| `WEB_SEARCH` | Recherche web et lecture de liens (`on` ou `off`) ; prévois alors un `API_TIMEOUT` d'au moins 90 secondes | `off` |
+| `WEB_SEARCH` | Recherche web et lecture de liens (`on` ou `off`) ; prévois alors 40 secondes de plus pour `API_TIMEOUT` (`120` avec `MAX_TOKENS=6000`) | `off` |
 | `PRESENCE` | Statut Discord et absences (`on` ou `off`) ; les `PRESENCE_*` règlent les chances de chaque statut et la nuit | `on` |
 | `MEMORY` | Mémoire des membres (`on` ou `off`) ; `MEMORY_MEMBER_LIMIT` et `MEMORY_SERVER_LIMIT` règlent la taille des fiches et du fichier général (3000 et 5000 caractères) | `off` |
 | `PDF_MAX_PAGES` | Pages maximales d'un PDF (0 = PDF refusés) | `20` |