Synchronisation des événements du serveur d'applications
Utilisez cette compétence pour maintenir l'exactitude de l'intégration du serveur d'applications de CodexMonitor à mesure que le CLI Codex installé évolue.
Source canonique
Commencez par :
docs/app-server-events.md
Considérez ce fichier comme le livre de bord canonique et mettez-le à jour lorsque le comportement change.
Workflow
-
Confirmer la baseline en amont :
- Enregistrez
codex --versionet générez les schémas expérimentaux dans un nouveau répertoire temporaire. Utilisez l'exécutable sélectionné comme cible de compatibilité. - Si
../Codexexiste, enregistrez son hash extrait sans récupérer ni élaguer. Une extraction jumelle est facultative.
- Enregistrez
-
Comparer les méthodes de notification :
- Différenciez l'ensemble des méthodes de notification de Codex v2 par rapport au routage de CodexMonitor dans
src/utils/appServerEvents.tsetsrc/features/app/hooks/useAppServerEvents.ts. - Mettez à jour les sections
Événements pris en chargeetÉvénements manquantsdansdocs/app-server-events.md.
- Différenciez l'ensemble des méthodes de notification de Codex v2 par rapport au routage de CodexMonitor dans
-
Comparer les méthodes de requête :
- Différenciez les ensembles de requêtes client/serveur de Codex v2 par rapport à la gestion entrante et sortante de CodexMonitor.
- Mettez à jour les sections
Requêtes prises en charge,Requêtes client manquantesetRequêtes serveur.
-
Enquêter sur la dérive de schéma lorsque les listes semblent inchangées :
- Inspectez les schémas JSON générés ; si vous utilisez la source en amont, inspectez
codex-rs/app-server-protocol/src/protocol/v2/. - Comparez les bords d'analyse et de normalisation dans
src/utils/appServerEvents.ts,src/features/app/hooks/useAppServerEvents.tsetsrc/features/threads/utils/threadNormalize.ts.
- Inspectez les schémas JSON générés ; si vous utilisez la source en amont, inspectez
-
Implémenter le support lorsque demandé :
- Ajoutez d'abord le support des méthodes/types aux bords d'analyse.
- Routez dans le hook d'événements de l'application.
- Mettez à jour les réducteurs de thread/élément et le rendu uniquement si nécessaire.
- Maintenez la parité application/démon et évitez la logique dupliquée.
-
Valider :
- Exécutez
python3 scripts/check-codex-protocol.py --schema-dir <répertoire-généré>(jsonschema Python requis). - Exécutez les tests ciblés pour les fichiers touchés.
- Exécutez
npm run typecheck. - Exécutez
npm run testpour les modifications de comportement frontend. - Exécutez
cd src-tauri && cargo checkpour les modifications backend.
- Exécutez
Fichiers clés
- Routage/types :
src/utils/appServerEvents.ts - Routeur d'événements :
src/features/app/hooks/useAppServerEvents.ts - Composition des gestionnaires :
src/features/threads/hooks/useThreadEventHandlers.ts - Gestionnaires d'éléments/tours :
src/features/threads/hooks/useThreadItemEvents.ts,src/features/threads/hooks/useThreadTurnEvents.ts - Normalisation :
src/features/threads/utils/threadNormalize.ts - État :
src/features/threads/hooks/useThreadsReducer.ts - Requêtes sortantes :
src/services/tauri.ts,src-tauri/src/shared/codex_core.rs - RPC du démon :
src-tauri/src/bin/codex_monitor_daemon/rpc.rsetrpc/*
Références
- Ensemble de commandes rapides :
references/quick-commands.md - Livre de bord canonique :
docs/app-server-events.md
Attentes en matière de sortie
Lorsqu'on vous demande un audit ou une mise à jour :
- Signalez les écarts concrets de méthodes prises en charge et manquantes.
- Citez les fichiers exacts qui nécessitent des modifications.
- Mettez à jour
docs/app-server-events.mddans le même changement lorsque le comportement a changé. - Mentionnez explicitement le non-support délibéré (par exemple les méthodes obsolètes).