v0.4.0 — i18n, filters, cumulative stats, CI
Added
- Header de plugin complet : `Plugin URI`, `Author URI`, `Update URI`, `Text Domain`, `Domain Path`, `Requires at least`.
- Internationalisation (i18n) : text-domain `mxchat-promptcache` chargé sur `init`, chaînes WP-CLI wrappées dans `__()`. Génération du `.pot` : `wp i18n make-pot . languages/mxchat-promptcache.pot`.
- Trois filters d'extensibilité :
- `mxchat_pc_should_inject($should, $payload, $args, $url)` — désactiver l'injection pour une requête spécifique.
- `mxchat_pc_min_chars($min, $model, $payload)` — override du seuil minimum.
- `mxchat_pc_ephemeral_control($control)` — override de la structure `cache_control` injectée.
- Statistiques cumulatives depuis l'installation (option `mxchat_pc_stats_total`, non-autoloadée, jamais expirée).
- `wp mxchat-pc stats --total` : affiche le cumulatif depuis l'install en plus du glissant 24 h.
- `wp mxchat-pc reset --total` : reset complet (24 h + cumulatif + debug).
- GitHub Actions CI : `php -l` sur PHP 7.4 / 8.0 / 8.1 / 8.2 / 8.3 à chaque push et PR.
- Badges README : release, license, PHP, WordPress, CI.
Changed
- Bail-out précoce sur les méthodes HTTP non-POST (évite un `json_decode` inutile sur OPTIONS preflight).
- `mxchat_pc_tools_size` : court-circuit dès que le seuil est dépassé (optimisation marginale sur gros tool sets).
- `mxchat_pc_using_extended_ttl` se base désormais sur la sortie de `mxchat_pc_ephemeral_control()` (cohérent avec le filtre).
- Constante `MXCHAT_PC_MIN_MESSAGES = 3` pour documenter le seuil d'activation du cache historique.
Voir le README pour les exemples d'utilisation des filters et la doc complète.