insight-chat: ToolGateOpts + per-tool description rewrites

Tools whose backing tables are empty (calendar, location_history,
daily_summaries) drop out of the catalog so the LLM doesn't waste
iteration budget calling them only to receive "no results found".
Vision and apollo gates already existed; this generalizes the pattern.

search_messages gains start_ts/end_ts/contact_id filters (date filter
is a client-side post-filter; SMS-API only accepts contact_id natively
on the search endpoint).

Descriptions follow a consistent convention: one sentence (what +
when), param semantics, examples for tools with non-obvious param
choices. No more all-caps headers, no more identity-prescriptive
language inside descriptions.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Cameron Cordes
2026-05-07 14:56:58 -04:00
parent b02da0d0cc
commit f50d32667b
4 changed files with 437 additions and 278 deletions

View File

@@ -75,6 +75,13 @@ pub trait DailySummaryDao: Sync + Send {
context: &opentelemetry::Context,
contact: &str,
) -> Result<i64, DbError>;
/// Get total count of all summaries (across all contacts). Used by
/// `current_gate_opts` to check whether daily_summaries are present.
fn get_total_summary_count(
&mut self,
context: &opentelemetry::Context,
) -> Result<i64, DbError>;
}
pub struct SqliteDailySummaryDao {
@@ -454,6 +461,24 @@ impl DailySummaryDao for SqliteDailySummaryDao {
})
.map_err(|_| DbError::new(DbErrorKind::QueryError))
}
fn get_total_summary_count(
&mut self,
context: &opentelemetry::Context,
) -> Result<i64, DbError> {
trace_db_call(context, "query", "get_total_summary_count", |_span| {
let mut conn = self
.connection
.lock()
.expect("Unable to get DailySummaryDao");
diesel::sql_query("SELECT COUNT(*) as count FROM daily_conversation_summaries")
.get_result::<CountResult>(conn.deref_mut())
.map(|r| r.count)
.map_err(|e| anyhow::anyhow!("Count query error: {:?}", e))
})
.map_err(|_| DbError::new(DbErrorKind::QueryError))
}
}
// Helper structs for raw SQL queries