From a01a08737d04b5d9a3529429f5dc78c52f0585f9 Mon Sep 17 00:00:00 2001 From: h Date: Mon, 7 Sep 2026 23:00:17 +0000 Subject: [PATCH] fix(memory,curator): the leisure plan is not news for the curator --- beaver_agent/jobs/memory.py | 2 ++ beaver_agent/memory/curator.py | 6 +++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/beaver_agent/jobs/memory.py b/beaver_agent/jobs/memory.py index 24fd40f..3abcb68 100644 --- a/beaver_agent/jobs/memory.py +++ b/beaver_agent/jobs/memory.py @@ -12,6 +12,7 @@ from beaver_agent.memory.watch import CURATOR_WATCH from beaver_agent.vault import ( CURATOR_JOURNAL, DAYS, + LEISURE, REPLIES, STATE, STATE_MAX_LINES, @@ -59,6 +60,7 @@ async def curate(run: JobRun) -> None: replies_dir=REPLIES, watched=CURATOR_WATCH, tz=TZ, + skip=(LEISURE,), ) if text is None: _log.info("curator: nothing new since the last run") diff --git a/beaver_agent/memory/curator.py b/beaver_agent/memory/curator.py index 89b6798..154cb4e 100644 --- a/beaver_agent/memory/curator.py +++ b/beaver_agent/memory/curator.py @@ -96,13 +96,17 @@ def briefing( tz: str, now: datetime | None = None, default_window: timedelta = timedelta(hours=24), + skip: tuple[Path, ...] = (), ) -> str | None: """Первое сообщение куратору или ``None``, если с прошлого прогона ничего нет.""" now = now or datetime.now(UTC) since = last_run(journal, default=now - default_window) replies = new_replies(replies_dir, since, tz) changed = changed_files( - watched, since, vault, skip=(str(journal.relative_to(vault)),) + watched, + since, + vault, + skip=tuple(str(p.relative_to(vault)) for p in (journal, *skip)), ) if not replies and not changed: return None