huskies: merge 1140 story One-shot project-rebuild chat command: rebuild image, swap container, reconnect, preserve state
This commit is contained in:
@@ -274,6 +274,11 @@ pub fn commands() -> &'static [BotCommand] {
|
||||
description: "Bootstrap a new project container (gateway only): `new project <name>`",
|
||||
handler: new_project::handle_new_project_fallback,
|
||||
},
|
||||
BotCommand {
|
||||
name: "project-rebuild",
|
||||
description: "Rebuild a project's Docker image and swap the container (gateway only): `project-rebuild <name> [--timeout <secs>] [--force]`",
|
||||
handler: handle_project_rebuild_fallback,
|
||||
},
|
||||
]
|
||||
}
|
||||
|
||||
@@ -431,6 +436,16 @@ fn handle_cleanup_worktrees_fallback(_ctx: &CommandContext) -> Option<String> {
|
||||
None
|
||||
}
|
||||
|
||||
/// Fallback handler for the `project-rebuild` command when it is not intercepted
|
||||
/// by the async gateway handler in `on_room_message`. In practice this is never
|
||||
/// called — `project-rebuild` is detected and handled before `try_handle_command`
|
||||
/// runs in gateway mode. The entry exists in the registry so `help` lists it.
|
||||
///
|
||||
/// Returns `None` to prevent the LLM from receiving the raw command text.
|
||||
fn handle_project_rebuild_fallback(_ctx: &CommandContext) -> Option<String> {
|
||||
None
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// Tests
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user