summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authort <t@tjp.lol>2026-09-01 12:00:53 -0600
committert <t@tjp.lol>2026-09-02 08:30:29 -0600
commit9d6b9a68f3df389a68b6b2cd69d17e01b81024dd (patch)
tree24e921ac74663ed0c14534be276dc2a85c403bc9 /README.md
parent04791c3273ab7076cc53f146d7751670d86c5c9b (diff)
Keep Herdr working until all activity finishesHEADmain
Track foreground turns and balanced background-work events independently so Herdr only reports idle after the primary and every background task settle.
Diffstat (limited to 'README.md')
-rw-r--r--README.md20
1 files changed, 8 insertions, 12 deletions
diff --git a/README.md b/README.md
index e5017be..84e5778 100644
--- a/README.md
+++ b/README.md
@@ -26,20 +26,16 @@ its JSON output, so reporting does not affect the panto terminal UI.
| panto event | Herdr state |
| --- | --- |
-| `session_start`, `session_ready` | `idle` |
-| `user_message`, `thinking`, `compaction`, `tool_details`, `assistant_text` | `working` |
-| `assistant_text_complete` | `idle` |
+| `session_start`, `session_ready` | `idle` when no work is active |
+| `turn_start`, `agent_submission`, `user_message`, `thinking`, `compaction`, `tool_details`, `assistant_text` | `working` |
+| `turn_end` | `idle` when no background work is active |
+| `background_work_start` / `background_work_end` | increments / decrements active background work |
| `session_end` | agent released |
-`session_ready` restores `idle` after panto replays historical lifecycle events
-while loading a resumed session. `session_end` removes panto's agent report when
-the process shuts down, so Herdr also clears the pane/space activity indicator
-once no reported agents remain.
-
-`assistant_text_complete` is the block-level idle boundary; an assistant text
-block followed by a tool call can show `idle` briefly before the next lifecycle
-event restores `working`. Native session restore is out of scope until panto
-exposes a stable session reference to extensions.
+Extensions with work that survives a turn emit balanced `background_work_start`
+and `background_work_end` events. Herdr remains `working` until both the primary
+turn and all such work finish. `session_end` removes panto's agent report when
+the process shuts down.
## Check