module for metadata stamping

This commit is contained in:
Roy Han
2026-03-20 17:47:35 -07:00
parent beda548bef
commit b8bf118b56
3 changed files with 20 additions and 15 deletions
+17
View File
@@ -0,0 +1,17 @@
use crate::models::ResponseInputItem;
use crate::models::ResponseItemMessageMetadata;
use crate::models::UserMessageType;
pub fn stamp_user_message_type_on_input_item(item: &mut ResponseInputItem, kind: UserMessageType) {
let ResponseInputItem::Message { role, metadata, .. } = item else {
return;
};
if role != "user" {
return;
}
let mut metadata_value = metadata
.take()
.unwrap_or_else(|| ResponseItemMessageMetadata::new(None));
metadata_value.user_message_type = Some(kind);
*metadata = Some(metadata_value);
}
+1
View File
@@ -5,6 +5,7 @@ pub mod approvals;
pub mod config_types;
pub mod custom_prompts;
pub mod dynamic_tools;
pub mod item_metadata;
pub mod items;
pub mod mcp;
pub mod memory_citation;