fix(discord): use channel_id instead of sender for replies (fixes #483)
fix(misc): complete parking_lot::Mutex migration (fixes #505) - DiscordChannel: store actual channel_id in ChannelMessage.channel instead of hardcoded "discord" string - channels/mod.rs: use msg.channel instead of msg.sender for replies - Migrate all std::sync::Mutex to parking_lot::Mutex: * src/security/audit.rs * src/memory/sqlite.rs * src/memory/response_cache.rs * src/memory/lucid.rs * src/channels/email_channel.rs * src/gateway/mod.rs * src/observability/traits.rs * src/providers/reliable.rs * src/providers/router.rs * src/agent/agent.rs - Remove all .lock().unwrap() and .map_err(PoisonError) patterns since parking_lot::Mutex never poisons Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
f7d77b09f4
commit
1908af3248
12 changed files with 43 additions and 61 deletions
|
|
@ -461,7 +461,7 @@ mod tests {
|
|||
/// Mock that records which model was used for each call.
|
||||
struct ModelAwareMock {
|
||||
calls: Arc<AtomicUsize>,
|
||||
models_seen: std::sync::Mutex<Vec<String>>,
|
||||
models_seen: parking_lot::Mutex<Vec<String>>,
|
||||
fail_models: Vec<&'static str>,
|
||||
response: &'static str,
|
||||
}
|
||||
|
|
@ -476,7 +476,7 @@ mod tests {
|
|||
_temperature: f64,
|
||||
) -> anyhow::Result<String> {
|
||||
self.calls.fetch_add(1, Ordering::SeqCst);
|
||||
self.models_seen.lock().unwrap().push(model.to_string());
|
||||
self.models_seen.lock().push(model.to_string());
|
||||
if self.fail_models.contains(&model) {
|
||||
anyhow::bail!("500 model {} unavailable", model);
|
||||
}
|
||||
|
|
@ -729,7 +729,7 @@ mod tests {
|
|||
let calls = Arc::new(AtomicUsize::new(0));
|
||||
let mock = Arc::new(ModelAwareMock {
|
||||
calls: Arc::clone(&calls),
|
||||
models_seen: std::sync::Mutex::new(Vec::new()),
|
||||
models_seen: parking_lot::Mutex::new(Vec::new()),
|
||||
fail_models: vec!["claude-opus"],
|
||||
response: "ok from sonnet",
|
||||
});
|
||||
|
|
@ -764,7 +764,7 @@ mod tests {
|
|||
let calls = Arc::new(AtomicUsize::new(0));
|
||||
let mock = Arc::new(ModelAwareMock {
|
||||
calls: Arc::clone(&calls),
|
||||
models_seen: std::sync::Mutex::new(Vec::new()),
|
||||
models_seen: parking_lot::Mutex::new(Vec::new()),
|
||||
fail_models: vec!["model-a", "model-b", "model-c"],
|
||||
response: "never",
|
||||
});
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue