feat(jobs,vault): hourly leisure tick, the day plan lives in the vault

This commit is contained in:
hh
2026-09-07 23:00:14 +00:00
parent bba8d9ce99
commit 014da65f86
4 changed files with 413 additions and 0 deletions
+9
View File
@@ -2,19 +2,28 @@
from __future__ import annotations
import os
from beaver_gateway.jobs.scheduler import Job
from beaver_agent.jobs.closing import close_idle
from beaver_agent.jobs.deploy import deploy
from beaver_agent.jobs.komodo import komodo_alert
from beaver_agent.jobs.leisure import tick
from beaver_agent.jobs.memory import curate, memory
from beaver_agent.jobs.rotation import rotate
from beaver_agent.jobs.t3code import t3code_event
from beaver_agent.jobs.vibegram import vibegram
from beaver_agent.jobs.voice import rotate_voice
LEISURE_OFF = os.environ.get("LEISURE", "").strip().lower() in ("off", "0", "false")
"""Рубильник досуга в env; повседневный выключатель - строка в `мета/бобер/досуг.md`."""
jobs = [
Job("ротация", rotate, cron="0 * * * *"),
# Не на ":00": там ротация, а лежащий в очереди тик держит мастера занятым
# (`busy`), и она пропускала бы себя каждый час.
*([] if LEISURE_OFF else [Job("досуг", tick, cron="7 * * * *")]),
Job("вайбграм", vibegram, cron="*/10 * * * *", critical=False),
Job("закрытие", close_idle, cron="20 4 * * *", critical=False),
Job("память", memory, cron="30 4 * * 0", critical=False),