reword ack->mark-done terminology on mark_todos_done and get_loose_ends
This commit is contained in:
parent
6f208c7301
commit
5e7f74e92d
1 changed files with 15 additions and 14 deletions
|
|
@ -347,14 +347,15 @@ impl AgentServer {
|
||||||
at turn start to remember what you owe / what's owed to you without scrolling \
|
at turn start to remember what you owe / what's owed to you without scrolling \
|
||||||
inbox history. Output is a short bulleted list with ids, ages in seconds, and \
|
inbox history. Output is a short bulleted list with ids, ages in seconds, and \
|
||||||
the relevant context. Each `question` or `reminder` row can be cancelled by \
|
the relevant context. Each `question` or `reminder` row can be cancelled by \
|
||||||
passing its id + kind to `cancel_loose_end`. Empty result is reported clearly. Todos \
|
passing its id + kind to `cancel_loose_end`. Empty result is reported clearly.\n\
|
||||||
cap at 40 rows; a trailer line says how many more are pending — clear the shown ones \
|
Todos are a to-do list, not an inbox to empty on sight — a row that's still \
|
||||||
with `mark_todos_done`, then call again for the rest.\n\
|
genuinely in flight (a running bash task, say) is expected to sit there and \
|
||||||
A row that is still genuinely in flight (a running bash task, say) doesn't need an \
|
doesn't need marking done early; only mark done the ones you've actually \
|
||||||
early ack — only mark done the ones you've actually resolved. A real content change \
|
reviewed and resolved. A real content change (like a task finishing) resurfaces \
|
||||||
(like a task finishing) un-acks and resurfaces the same row on its own, so acking it \
|
the same row on its own regardless of whether you marked it done while it was \
|
||||||
while it's still running buys nothing and just costs you a second, redundant call \
|
still running, so doing that buys nothing and just costs a redundant call later. \
|
||||||
later.\n\
|
Todos cap at 40 rows; a trailer line says how many more are pending — mark the \
|
||||||
|
reviewed ones done with `mark_todos_done`, then call again for the rest.\n\
|
||||||
Pass `agent: \"<name>\"` to inspect a specific peer agent's threads. Direct \
|
Pass `agent: \"<name>\"` to inspect a specific peer agent's threads. Direct \
|
||||||
child agents are always accessible. For non-children, the `query_agent_state` \
|
child agents are always accessible. For non-children, the `query_agent_state` \
|
||||||
capability is required — without it the request is rejected with an error."
|
capability is required — without it the request is rejected with an error."
|
||||||
|
|
@ -554,19 +555,19 @@ impl AgentServer {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[tool(
|
#[tool(
|
||||||
description = "Bulk-clear specific todos by id in one call, instead of \
|
description = "Bulk-mark specific todos done by id in one call, instead of \
|
||||||
`cancel_loose_end`ing each one. List-based, not range-based — no `ack_until`-style \
|
`cancel_loose_end`ing each one. List-based, not range-based — no `ack_until`-style \
|
||||||
'clear below id N' for todos, since a blind range-clear risks acking something you \
|
'clear below id N' for todos, since a blind range-clear risks marking something \
|
||||||
never saw. Pass the ids you've actually reviewed (typically what `get_loose_ends` \
|
done that you never actually reviewed. Pass the ids you've actually reviewed \
|
||||||
just showed); unknown/already-acked ids are silently skipped. Returns how many were \
|
(typically what `get_loose_ends` just showed); unknown/already-done ids are \
|
||||||
newly acked."
|
silently skipped. Returns how many were newly marked done."
|
||||||
)]
|
)]
|
||||||
async fn mark_todos_done(&self, Parameters(args): Parameters<MarkTodosDoneArgs>) -> String {
|
async fn mark_todos_done(&self, Parameters(args): Parameters<MarkTodosDoneArgs>) -> String {
|
||||||
let log = format!("{args:?}");
|
let log = format!("{args:?}");
|
||||||
run_tool_envelope("mark_todos_done", log, async move {
|
run_tool_envelope("mark_todos_done", log, async move {
|
||||||
match mark_local_todos_done(args.ids).await {
|
match mark_local_todos_done(args.ids).await {
|
||||||
Some(hive_agent_sock::Response::Acked { count }) => {
|
Some(hive_agent_sock::Response::Acked { count }) => {
|
||||||
format!("acked {count} todo(s)")
|
format!("marked {count} todo(s) done")
|
||||||
}
|
}
|
||||||
Some(hive_agent_sock::Response::Err { message }) => {
|
Some(hive_agent_sock::Response::Err { message }) => {
|
||||||
format!("mark_todos_done failed: {message}")
|
format!("mark_todos_done failed: {message}")
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue