feat: use configured meta plugins for MCP items
Co-authored-by: aider (openai/andrew/openrouter/deepseek/deepseek-chat-v3.1) <aider@aider.chat>
This commit is contained in:
@@ -304,6 +304,8 @@ impl ItemService {
|
||||
content: &[u8],
|
||||
tags: &Vec<String>,
|
||||
metadata: &HashMap<String, String>,
|
||||
cmd: &mut Command,
|
||||
settings: &Settings,
|
||||
conn: &mut Connection,
|
||||
) -> Result<ItemWithMeta, CoreError> {
|
||||
debug!("ITEM_SERVICE: Starting save_item_from_mcp with {} bytes, {} tags, {} metadata entries",
|
||||
@@ -340,24 +342,13 @@ impl ItemService {
|
||||
writer.write_all(content)?;
|
||||
drop(writer);
|
||||
|
||||
let plugin_types = vec![
|
||||
MetaPluginType::Digest,
|
||||
MetaPluginType::User,
|
||||
MetaPluginType::Hostname,
|
||||
];
|
||||
let mut plugins = self.meta_service.get_plugins(cmd, settings);
|
||||
debug!("ITEM_SERVICE: Got {} configured meta plugins for MCP item", plugins.len());
|
||||
|
||||
let mut plugins: Vec<Box<dyn MetaPlugin>> = plugin_types
|
||||
.iter()
|
||||
.map(|p| crate::meta_plugin::get_meta_plugin(p.clone(), None, None))
|
||||
.collect();
|
||||
debug!("ITEM_SERVICE: Created {} meta plugins for MCP item", plugins.len());
|
||||
|
||||
self.meta_service
|
||||
.initialize_plugins(&mut plugins, conn, item_id);
|
||||
self.meta_service
|
||||
.process_chunk(&mut plugins, content, conn, item_id);
|
||||
self.meta_service.initialize_plugins(&mut plugins, conn, item_id);
|
||||
self.meta_service.process_chunk(&mut plugins, content, conn, item_id);
|
||||
self.meta_service.finalize_plugins(&mut plugins, conn, item_id);
|
||||
debug!("ITEM_SERVICE: Processed MCP item through meta plugins");
|
||||
debug!("ITEM_SERVICE: Processed MCP item through configured meta plugins");
|
||||
|
||||
item.size = Some(content.len() as i64);
|
||||
db::update_item(conn, item.clone())?;
|
||||
|
||||
Reference in New Issue
Block a user