feat(#1137): rich unread summary in loose ends and wake signal
- hive-sh4re: UnreadMatrix gains summary: String field (per-room breakdown) - hive-matrix-mcp/protocol: add RoomUnread struct + UnreadSummary request - hive-matrix-mcp/handlers: collect_unread() fetches per-room data; single-unread rooms include truncated last-message body + sender; multi-unread rooms carry count only - hive-matrix-mcp/wake: format_unread_summary() builds wake body from RoomUnread slice; terse one-liner for single-room/single-message, bulleted list for multi-room; always appends read-hint - hive-matrix-mcp/timeline: wake body now covers all rooms with unread at fire time, not just the triggering event; falls back to per-event teaser if notification counts haven't updated yet - hive-ag3nt/mcp: matrix_unread_summary() replaces matrix_unread_rooms(); UnreadMatrix loose end carries per-room summary lines; render shows room breakdown with sender: body for single-unread rooms
This commit is contained in:
parent
46edc635f2
commit
68e30b857c
19 changed files with 421 additions and 108 deletions
|
|
@ -297,6 +297,11 @@ pub enum LooseEnd {
|
|||
UnreadMatrix {
|
||||
/// Number of rooms with at least one unread notification.
|
||||
rooms: u32,
|
||||
/// Per-room summary: one line per room with truncated last-message
|
||||
/// body when count is 1, or just the unread count otherwise. Empty
|
||||
/// when the daemon returned no per-room detail.
|
||||
#[serde(default)]
|
||||
summary: String,
|
||||
},
|
||||
}
|
||||
|
||||
|
|
@ -923,9 +928,7 @@ impl ToolGroup {
|
|||
"get_logs — read a sub-agent container's systemd journal (privileged)"
|
||||
}
|
||||
Self::Execution => "bash_run, bash_status — run shell commands in the container",
|
||||
Self::WebTools => {
|
||||
"WebFetch, WebSearch — Claude built-in web egress; not MCP tools"
|
||||
}
|
||||
Self::WebTools => "WebFetch, WebSearch — Claude built-in web egress; not MCP tools",
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue