Fix agentic reel audit issues: midnight bug, DAO wiring, dead code, DST timezone, validation
Blocking fixes: - secs_until_next_run_hour: same-hour now returns 0 instead of 24h - capture_prefs: called at both handler return points, never fails request - capture_prefs: resolves library param, upserts to user_ai_prefs via DAO - Scheduler: uses AppState DAOs instead of separate connections - Pregen dedup: uses resolved library param instead of hardcoded 'all' - run_readonly_tool_loop: added #[allow(dead_code)] (used in main.rs only) - run_readonly_tool_loop: removed dead messages.push() call - InsightGenerator: added exif_dao() getter for scheduler reuse Medium fixes: - Input validation: run_hour clamped 0-23, week_dow clamped 0-6 - DST-sensitive timezone: fixed_tz_offset() with env var config Low fixes: - Documented REEL_PREGEN_MAX_TOOL_ITERS and REEL_PREGEN_TZ_FIXED_MINUTES - Removed dead test_app_state function and unused imports Also fix: UpsertUserAiPrefs import path, chrono::Local::with_ymd_and_hms requires TimeZone trait + .single(), unwrap_or_else closure simplification
This commit is contained in:
@@ -150,8 +150,13 @@ SEARCH_RAG_RERANK=0
|
||||
# Timezone offset in minutes from UTC (e.g., -480 = PST). Defaults to
|
||||
# the server's local timezone.
|
||||
# REEL_PREGEN_TZ_OFFSET_MINUTES=
|
||||
# Fixed timezone offset — overrides auto-detect to avoid DST shifts.
|
||||
# When set, both the DB fallback and env fallback use this value.
|
||||
# REEL_PREGEN_TZ_FIXED_MINUTES=-480
|
||||
# Voice ID for narration (e.g., "grandma"). Falls back to the value
|
||||
# stored in the user_ai_prefs DB row when set.
|
||||
# REEL_PREGEN_VOICE=
|
||||
# Library filter: a library id (e.g. "1") or "all" for every library.
|
||||
# REEL_PREGEN_LIBRARY=all
|
||||
# Max agentic tool iterations for pre-gen scripter. Default 8.
|
||||
# REEL_PREGEN_MAX_TOOL_ITERS=8
|
||||
|
||||
Reference in New Issue
Block a user