diff --git a/TODO.md b/TODO.md index 6e06fc7..a39b90d 100644 --- a/TODO.md +++ b/TODO.md @@ -3,6 +3,21 @@ Pick anything from here when relevant. Cross-cutting design notes live in [CLAUDE.md](CLAUDE.md); high-level project intro in [README.md](README.md). +## Turn loop + +- **`recv` with no `wait_seconds` should return immediately.** + Today omitting the argument falls through to the 30s + default long-poll (`RECV_LONG_POLL_DEFAULT` in + `hive-c0re/src/agent_server.rs`); a manager that wants a + cheap "anything in the inbox right now?" peek has to + explicitly pass `wait_seconds: 0`. Flip the semantics so + `None` = no sleep, returning `None` (or the empty inbox + shape) right away. The agent opts into the long-poll by + setting a positive value. Update both `AgentRequest::Recv` + and `ManagerRequest::Recv` handlers + the prompt language + in `prompts/{agent,manager}.md`. Tighten the cap (180s) + too — only meaningful when the agent is choosing to wait. + ## Permissions / policy - **Per-agent send allow-list.** Today any agent can `send` to any