|
background tasks: review fixes B1-B11 batch
- stop mid-batch cancels in-flight tools (B1) and keeps real results of already-finished ones, mixing them with synthetic stopped notes in call order (B2) - queued messages: headless drain publishes session_sync (B4), the run's teardown broadcasts session_sync to other sockets but not the owner socket (prevents double reload) (B5) - task_update notifications are chained per task so late running updates can't overtake the terminal one (B7; client drops late re-flicker of a terminal task chip) (B8) - client: ui_component results reference the owning message via card.parentMsg instead of a stale msg reference (B6) - tasks cancel reports the real outcome after a bounded wait instead of an optimistic 'cancelled' (B9) - session delete cancels its running background jobs and drops pending result notes (B10) - subagent tool loop routes background:true calls through ToolExecutor._maybe_background like the main loop (B11) - tests for all of the above; docs/tasks.md stop/cancel semantics |
|---|
|
|
| docs/tasks.md |
|---|
| navi/api/routes/sessions.py |
|---|
| navi/api/websocket.py |
|---|
| navi/core/agent.py |
|---|
| navi/core/orchestrator.py |
|---|
| navi/core/subagent_runner.py |
|---|
| navi/core/task_notes.py |
|---|
| navi/core/tasks.py |
|---|
| navi/tools/tasks.py |
|---|
| tests/unit/api/test_websocket.py |
|---|
| tests/unit/core/test_parallel_tools.py |
|---|
| tests/unit/core/test_task_manager.py |
|---|
| tests/unit/core/test_task_notes.py |
|---|
| tests/unit/tools/test_tasks_tool.py |
|---|
| webclient/dist/assets/index-V5MfmVcB.js 0 → 100644 |
|---|
|
Not supported
|
| webclient/dist/assets/index-c1nDx-WS.js 100644 → 0 |
|---|
|
Not supported
|
| webclient/dist/index.html |
|---|
| webclient/dist/sw.js |
|---|
| webclient/src/stores/chat.js |
|---|
| webclient/tests/unit/stores/chat.test.js |
|---|