|
protocol, clients: acks, queue notices and reconnect without duplicates
- client_id is echoed in message_accepted / message_queued; queue overflow
broadcasts message_dropped to every socket watching the session
- stream_end / stream_stopped carry message_index, the global display rank
that also stamps history rows
- webclient: cheap session_sync via /sessions/{id}/meta, the ack deadline is
armed at the write and re-armed while a run is active, fatal 4003/4004 stop
the reconnect loop instead of retrying forever
- TUI: WsBridge posts WsResumed / MessageWritten / SessionUnavailable, the app
drops the half-written turn on reconnect, shows queued and not-delivered
markers on the bubble, and reloads history only when the meta token changes
- dist rebuilt
|
|---|
|
|
| clients/terminal/api.py |
|---|
| clients/terminal/tui/chat_model.py |
|---|
| clients/terminal/tui/events.py |
|---|
| clients/terminal/tui/renderers/message.py |
|---|
| clients/terminal/tui/tui_app.py |
|---|
| clients/terminal/tui/widgets/chat_panel.py |
|---|
| clients/terminal/tui/ws_bridge.py |
|---|
| docs/navi_code_cli.md |
|---|
| docs/websocket.md |
|---|
| navi/api/websocket.py |
|---|
| navi/core/agent/streaming.py |
|---|
| navi/core/events.py |
|---|
| navi/core/orchestrator.py |
|---|
| navi/core/session.py |
|---|
| navi/core/sessions/store.py |
|---|
| tests/clients/test_tui_app.py |
|---|
| tests/clients/test_ws_bridge.py |
|---|
| tests/unit/api/test_websocket.py |
|---|
| tests/unit/core/test_agent.py |
|---|
| tests/unit/core/test_events.py |
|---|
| tests/unit/core/test_orchestrator_queue.py |
|---|
| tests/unit/core/test_pg_session_store.py |
|---|
| webclient/dist/assets/index-BJPYEKSS.js 0 → 100644 |
|---|
| webclient/dist/assets/index-Ceizh7DK.js 100644 → 0 |
|---|
| webclient/dist/assets/index-CyNRMV2b.css 0 → 100644 |
|---|
| webclient/dist/assets/index-eA-1HZAI.css 100644 → 0 |
|---|
| webclient/dist/index.html |
|---|
| webclient/dist/sw.js |
|---|
| webclient/src/components/chat/ChatArea.vue |
|---|
| webclient/src/components/chat/InputBar.vue |
|---|
| webclient/src/components/messages/UserMessage.vue |
|---|
| webclient/src/composables/useWebSocket.js |
|---|
| webclient/src/i18n/messages/en.js |
|---|
| webclient/src/i18n/messages/ru.js |
|---|
| webclient/src/i18n/messages/uk.js |
|---|
| webclient/src/stores/chat/index.js |
|---|
| webclient/src/stores/chat/messages.js |
|---|
| webclient/src/stores/chat/session.js |
|---|
| webclient/src/stores/chat/turn.js |
|---|
| webclient/tests/unit/components/chat/inputBar.test.js |
|---|
| webclient/tests/unit/composables/useWebSocket.test.js |
|---|
| webclient/tests/unit/stores/chat.test.js |
|---|