From 34ab43aa7ee0676c94f20e46c17fb65e3550f040 Mon Sep 17 00:00:00 2001 From: dave Date: Sat, 4 Apr 2026 11:38:20 +0000 Subject: [PATCH] huskies: merge 469_bug_scaffold_missing_rate_limit_notifications_and_timezone_in_default_project_toml --- server/src/io/fs/scaffold.rs | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/server/src/io/fs/scaffold.rs b/server/src/io/fs/scaffold.rs index 10da8344..b47fe8d3 100644 --- a/server/src/io/fs/scaffold.rs +++ b/server/src/io/fs/scaffold.rs @@ -107,6 +107,14 @@ const DEFAULT_PROJECT_AGENTS_TOML: &str = r#"# Project-wide default QA mode: "se # Per-story `qa` front matter overrides this setting. default_qa = "server" +# Suppress soft rate-limit warning notifications in chat. +# Hard blocks and story-blocked notifications are always sent. +# rate_limit_notifications = true + +# IANA timezone for timer scheduling (e.g. "Europe/London", "America/New_York"). +# Timer HH:MM inputs are interpreted in this timezone. +# timezone = "America/New_York" + [[agent]] name = "coder-1" stage = "coder" @@ -560,6 +568,22 @@ mod tests { assert!(content.contains("model = \"sonnet\"")); } + #[test] + fn scaffold_project_toml_contains_rate_limit_and_timezone_comments() { + let dir = tempdir().unwrap(); + scaffold_story_kit(dir.path(), 3001).unwrap(); + + let content = fs::read_to_string(dir.path().join(".huskies/project.toml")).unwrap(); + assert!( + content.contains("rate_limit_notifications"), + "project.toml scaffold should document rate_limit_notifications" + ); + assert!( + content.contains("timezone"), + "project.toml scaffold should document timezone" + ); + } + #[test] fn scaffold_context_is_blank_template_not_story_kit_content() { let dir = tempdir().unwrap();