huskies: merge 644_story_chat_transport_consumers_slack_discord_whatsapp_matrix_for_the_unified_status_broadcaster

This commit is contained in:
dave
2026-04-27 11:18:41 +00:00
parent 75533225e4
commit 144f07f412
3 changed files with 63 additions and 0 deletions
+15
View File
@@ -49,6 +49,13 @@ pub struct ProjectConfig {
/// Default: `true`.
#[serde(default = "default_web_ui_status_consumer")]
pub web_ui_status_consumer: bool,
/// Whether the Matrix bot subscribes to the status broadcaster and forwards
/// pipeline events to its configured rooms.
/// Set to `false` to silence Matrix status notifications without affecting
/// other consumers (web UI, Slack, Discord, WhatsApp, agent context).
/// Default: `true`.
#[serde(default = "default_matrix_status_consumer")]
pub matrix_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.
@@ -133,6 +140,10 @@ fn default_web_ui_status_consumer() -> bool {
true
}
fn default_matrix_status_consumer() -> bool {
true
}
fn default_max_mesh_peers() -> usize {
3
}
@@ -263,6 +274,7 @@ impl Default for ProjectConfig {
base_branch: None,
rate_limit_notifications: default_rate_limit_notifications(),
web_ui_status_consumer: default_web_ui_status_consumer(),
matrix_status_consumer: default_matrix_status_consumer(),
timezone: None,
rendezvous: None,
trusted_keys: Vec::new(),
@@ -345,6 +357,7 @@ impl ProjectConfig {
base_branch: legacy.base_branch,
rate_limit_notifications: legacy.rate_limit_notifications,
web_ui_status_consumer: default_web_ui_status_consumer(),
matrix_status_consumer: default_matrix_status_consumer(),
timezone: legacy.timezone,
rendezvous: None,
trusted_keys: Vec::new(),
@@ -378,6 +391,7 @@ impl ProjectConfig {
base_branch: legacy.base_branch,
rate_limit_notifications: legacy.rate_limit_notifications,
web_ui_status_consumer: default_web_ui_status_consumer(),
matrix_status_consumer: default_matrix_status_consumer(),
timezone: legacy.timezone,
rendezvous: None,
trusted_keys: Vec::new(),
@@ -399,6 +413,7 @@ impl ProjectConfig {
base_branch: legacy.base_branch,
rate_limit_notifications: legacy.rate_limit_notifications,
web_ui_status_consumer: default_web_ui_status_consumer(),
matrix_status_consumer: default_matrix_status_consumer(),
timezone: legacy.timezone,
rendezvous: None,
trusted_keys: Vec::new(),