huskies: merge 858

This commit is contained in:
dave
2026-04-29 10:41:32 +00:00
parent be5db846cc
commit 11d111360d
79 changed files with 265 additions and 0 deletions
@@ -1,10 +1,17 @@
//! Matrix bot — sub-modules for the Matrix chat bot implementation.
/// Bot context — shared state passed to Matrix bot command handlers.
pub mod context;
/// Matrix message formatter — converts markdown to Matrix HTML.
pub mod format;
/// Conversation history — loads and saves per-room chat history.
pub mod history;
/// Mention detection — identifies messages that mention the bot user.
pub mod mentions;
/// Message handlers — processes incoming Matrix room messages.
pub mod messages;
/// Bot run loop — the main async task that drives the Matrix sync loop.
pub mod run;
/// Device verification — handles Matrix cross-signing and emoji verification flows.
pub mod verification;
// Re-export all public types so existing import paths continue to work.
+9
View File
@@ -15,16 +15,25 @@
//! Multi-room support: configure `room_ids = ["!room1:…", "!room2:…"]` in
//! `bot.toml`. Each room maintains its own independent conversation history.
/// Auto-assign handler — listens for pipeline events and assigns stories to free agents.
pub mod assign;
mod bot;
/// Matrix bot command handlers — parses and routes bot commands from Matrix messages.
pub mod commands;
pub(crate) mod config;
/// Story deletion command — handles `!delete` bot commands to remove work items.
pub mod delete;
/// htop-style agent monitor command — renders a live process table in Matrix.
pub mod htop;
/// Rebuild command — triggers a server rebuild/restart via a bot command.
pub mod rebuild;
/// Reset command — handles `!reset` bot commands to restart the server state.
pub mod reset;
/// rmtree command — handles `!rmtree` bot commands to remove worktrees.
pub mod rmtree;
/// Start command — handles `!start` bot commands to launch agents on stories.
pub mod start;
/// Matrix `ChatTransport` implementation wrapping the Matrix SDK client.
pub mod transport_impl;
pub use bot::{ConversationEntry, ConversationRole, RoomConversation};
@@ -20,6 +20,7 @@ pub struct MatrixTransport {
}
impl MatrixTransport {
/// Creates a new `MatrixTransport` wrapping the given Matrix SDK `Client`.
pub fn new(client: Client) -> Self {
Self { client }
}