App-Server-Ereignis-Synchronisation
Verwende diese Skill, um die Integration des CodexMonitor-App-Servers präzise zu halten, während sich die installierte Codex-CLI weiterentwickelt.
Kanonische Quelle
Beginne mit:
docs/app-server-events.md
Behandle diese Datei als das kanonische Runbook und aktualisiere sie, wenn sich das Verhalten ändert.
Arbeitsablauf
-
Upstream-Baseline bestätigen:
- Notiere
codex --versionund generiere experimentelle Schemas in ein neues temporäres Verzeichnis. Verwende die ausgewählte ausführbare Datei als Kompatibilitätsziel. - Falls
../Codexexistiert, notiere den ausgecheckten Hash, ohne zu fetchen oder zu prunen. Ein Geschwister-Checkout ist optional.
- Notiere
-
Benachrichtigungsmethoden vergleichen:
- Diff der Codex v2-Benachrichtigungsmethoden gegen das CodexMonitor-Routing in
src/utils/appServerEvents.tsundsrc/features/app/hooks/useAppServerEvents.ts. - Aktualisiere die Abschnitte
Supported EventsundMissing Eventsindocs/app-server-events.md.
- Diff der Codex v2-Benachrichtigungsmethoden gegen das CodexMonitor-Routing in
-
Anfragemethoden vergleichen:
- Diff der Codex v2-Client/Server-Anfragesets gegen die ausgehenden und eingehenden Behandlungen in CodexMonitor.
- Aktualisiere die Abschnitte
Supported Requests,Missing Client RequestsundServer Requests.
-
Schema-Drift untersuchen, wenn die Listen unverändert erscheinen:
- Untersuche generierte JSON-Schemas; bei Verwendung der Upstream-Quelle durchsuche
codex-rs/app-server-protocol/src/protocol/v2/. - Vergleiche Parser- und Normalisierungs-Kanten in
src/utils/appServerEvents.ts,src/features/app/hooks/useAppServerEvents.tsundsrc/features/threads/utils/threadNormalize.ts.
- Untersuche generierte JSON-Schemas; bei Verwendung der Upstream-Quelle durchsuche
-
Unterstützung implementieren, wenn angefordert:
- Füge Methode/Typ-Unterstützung zuerst an den Parser-Kanten hinzu.
- Route im App-Ereignis-Hook.
- Aktualisiere Thread/Item-Reducer und Rendering nur bei Bedarf.
- Halte App-/Daemon-Parität ein und vermeide doppelte Logik.
-
Validieren:
- Führe
python3 scripts/check-codex-protocol.py --schema-dir <generiertes-verzeichnis>aus (Python jsonschema erforderlich). - Führe gezielte Tests für geänderte Dateien aus.
- Führe
npm run typecheckaus. - Führe
npm run testfür Frontend-Verhaltensänderungen aus. - Führe
cd src-tauri && cargo checkfür Backend-Änderungen aus.
- Führe
Wichtige Dateien
- Routing/Typen:
src/utils/appServerEvents.ts - Ereignis-Router:
src/features/app/hooks/useAppServerEvents.ts - Handler-Zusammensetzung:
src/features/threads/hooks/useThreadEventHandlers.ts - Item/Turn-Handler:
src/features/threads/hooks/useThreadItemEvents.ts,src/features/threads/hooks/useThreadTurnEvents.ts - Normalisierung:
src/features/threads/utils/threadNormalize.ts - Zustand:
src/features/threads/hooks/useThreadsReducer.ts - Ausgehende Anfragen:
src/services/tauri.ts,src-tauri/src/shared/codex_core.rs - Daemon-RPC:
src-tauri/src/bin/codex_monitor_daemon/rpc.rsundrpc/*
Referenzen
- Schnellbefehle:
references/quick-commands.md - Kanonisches Runbook:
docs/app-server-events.md
Ausgabeerwartungen
Wenn ein Audit oder eine Aktualisierung angefordert wird:
- Berichte konkrete Deltas von unterstützten und fehlenden Methoden.
- Zitiere die genauen Dateien, die bearbeitet werden müssen.
- Aktualisiere
docs/app-server-events.mdim selben Änderungssatz, wenn sich das Verhalten geändert hat. - Weise explizit auf bewusst nicht unterstützte Methoden hin (z.B. veraltete Methoden).