From 26cb85094f664d8bef98f8701e4aa8416439e950 Mon Sep 17 00:00:00 2001 From: Shodipo Ayomide Date: Thu, 31 Jul 2025 21:23:09 +0100 Subject: [PATCH] Increase req body limit (#2965) force merging this since it has been going back and forth for so long --- crates/goose-server/src/routes/reply.rs | 12 +++++++++--- crates/goose/src/message.rs | 5 +++++ 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/crates/goose-server/src/routes/reply.rs b/crates/goose-server/src/routes/reply.rs index 60cec0fadd..05f5eaa8af 100644 --- a/crates/goose-server/src/routes/reply.rs +++ b/crates/goose-server/src/routes/reply.rs @@ -1,7 +1,7 @@ use super::utils::verify_secret_key; use crate::state::AppState; use axum::{ - extract::State, + extract::{DefaultBodyLimit, State}, http::{self, HeaderMap, StatusCode}, response::IntoResponse, routing::post, @@ -400,9 +400,15 @@ async fn submit_tool_result( pub fn routes(state: Arc) -> Router { Router::new() - .route("/reply", post(reply_handler)) + .route( + "/reply", + post(reply_handler).layer(DefaultBodyLimit::max(50 * 1024 * 1024)), + ) .route("/confirm", post(confirm_permission)) - .route("/tool_result", post(submit_tool_result)) + .route( + "/tool_result", + post(submit_tool_result).layer(DefaultBodyLimit::max(10 * 1024 * 1024)), + ) .with_state(state) } diff --git a/crates/goose/src/message.rs b/crates/goose/src/message.rs index f3ee70efce..a6194035d4 100644 --- a/crates/goose/src/message.rs +++ b/crates/goose/src/message.rs @@ -353,6 +353,7 @@ impl From for Message { pub struct Message { pub id: Option, pub role: Role, + #[serde(default = "default_created")] pub created: i64, pub content: Vec, } @@ -390,6 +391,10 @@ pub fn push_message(messages: &mut Vec, message: Message) { } } +fn default_created() -> i64 { + 0 // old messages do not have timestamps. +} + impl Message { pub fn new(role: Role, created: i64, content: Vec) -> Self { Message {