huskies: merge 649_story_migrate_whatsapp_transport_to_status_broadcaster

This commit is contained in:
dave
2026-04-27 14:14:21 +00:00
parent 6c8043d866
commit cbb0a50729
3 changed files with 60 additions and 0 deletions
+15
View File
@@ -70,6 +70,13 @@ pub struct ProjectConfig {
/// Default: `true`.
#[serde(default = "default_discord_status_consumer")]
pub discord_status_consumer: bool,
/// Whether the WhatsApp bot subscribes to the status broadcaster and forwards
/// pipeline events to all active senders.
/// Set to `false` to silence WhatsApp status notifications without affecting
/// other consumers (web UI, Matrix, Slack, Discord, agent context).
/// Default: `true`.
#[serde(default = "default_whatsapp_status_consumer")]
pub whatsapp_status_consumer: bool,
/// IANA timezone name (e.g. `"Europe/London"`, `"America/New_York"`).
/// When set, timer HH:MM inputs are interpreted in this timezone instead
/// of the container/host local time. Falls back to `chrono::Local` when absent.
@@ -166,6 +173,10 @@ fn default_discord_status_consumer() -> bool {
true
}
fn default_whatsapp_status_consumer() -> bool {
true
}
fn default_max_mesh_peers() -> usize {
3
}
@@ -299,6 +310,7 @@ impl Default for ProjectConfig {
matrix_status_consumer: default_matrix_status_consumer(),
slack_status_consumer: default_slack_status_consumer(),
discord_status_consumer: default_discord_status_consumer(),
whatsapp_status_consumer: default_whatsapp_status_consumer(),
timezone: None,
rendezvous: None,
trusted_keys: Vec::new(),
@@ -384,6 +396,7 @@ impl ProjectConfig {
matrix_status_consumer: default_matrix_status_consumer(),
slack_status_consumer: default_slack_status_consumer(),
discord_status_consumer: default_discord_status_consumer(),
whatsapp_status_consumer: default_whatsapp_status_consumer(),
timezone: legacy.timezone,
rendezvous: None,
trusted_keys: Vec::new(),
@@ -420,6 +433,7 @@ impl ProjectConfig {
matrix_status_consumer: default_matrix_status_consumer(),
slack_status_consumer: default_slack_status_consumer(),
discord_status_consumer: default_discord_status_consumer(),
whatsapp_status_consumer: default_whatsapp_status_consumer(),
timezone: legacy.timezone,
rendezvous: None,
trusted_keys: Vec::new(),
@@ -444,6 +458,7 @@ impl ProjectConfig {
matrix_status_consumer: default_matrix_status_consumer(),
slack_status_consumer: default_slack_status_consumer(),
discord_status_consumer: default_discord_status_consumer(),
whatsapp_status_consumer: default_whatsapp_status_consumer(),
timezone: legacy.timezone,
rendezvous: None,
trusted_keys: Vec::new(),