Compare commits

..
9 Commits
Author SHA1 Message Date
hh 4b24795e9b feat(hands,jobs): журнал прогонов дописывается, шторм новых видов глушится громко 2026-09-20 21:36:08 +00:00
hh 06b4119ad3 fix(hands,jobs): суточная сводка уходит и в чистые сутки, норма всплеска замирает на молодости беды 2026-09-20 21:25:15 +00:00
hh d89e24ae09 feat(hands,jobs): длящаяся беда не пропадает - суточная сводка и всплеск против своей нормы 2026-09-20 21:14:31 +00:00
hh 69e427469a fix(hands): хвост логов 2000 строк по замеру, образец чистит общий redact 2026-09-20 18:30:49 +00:00
hh 47df446462 fix(vault): состояние джобов лежит в доме агента, а не в корне vault 2026-09-20 18:28:48 +00:00
hh 3114e14ec3 feat(jobs,hands): сканер логов флота будит только новым и несёт свою область 2026-09-20 18:26:05 +00:00
hh da237ec616 refactor(hands): листание komodo становится публичным - им ходят и джобы 2026-09-20 18:26:05 +00:00
hh 0ab77a6b69 feat(hands): выдача komodo несёт свою область - полные списки, отрезок журнала и фильтры 2026-09-20 11:34:27 +00:00
hh 6cd937249b feat(memory): the morning seed carries the process start and the code freshness 2026-09-17 04:11:08 +00:00
2 changed files with 2 additions and 13 deletions

No files matched your search

+1 -5
View File
@@ -400,8 +400,7 @@ class ReplyLog:
if said.agent in self.mute:
return
text = said.text
seeded = text.startswith("[сид:")
if seeded:
if text.startswith("[сид:"):
# спавн ветки с текстом: строка сида едет над самим сообщением
text = text.split("\n\n", 1)[1] if "\n\n" in text else ""
flat = " ⏎ ".join(ln.strip() for ln in text.strip().splitlines() if ln.strip())
@@ -413,9 +412,6 @@ class ReplyLog:
where = KINDS.get(said.kind, said.kind)
if said.kind != "master" and said.title:
where = f"{where} «{said.title}»"
if seeded:
# не человек сказал, а механизм спавна: видно по источнику, не по тексту
where = f"{where} (бриф)"
path = self.dir / f"{local:%Y-%m}.md"
self.dir.mkdir(parents=True, exist_ok=True)
if not path.exists():
+1 -8
View File
@@ -5,7 +5,6 @@ from beaver_gateway.conversations.texts import UserSaid
from beaver_gateway.conversations.envelope import RecallContext
from beaver_agent.hands.calendars import Calendars, Event, Feed
from beaver_agent.memory.curator import new_replies
from beaver_agent.memory.recall import (
LABEL,
Recall,
@@ -172,14 +171,8 @@ def test_reply_log_appends_one_line_per_message_and_strips_seed(tmp_path: Path)
assert text.startswith("# реплики Бобра, 2026-09\n")
assert text.endswith(
"- 2026-09-01 14:04 · мастер · привет ⏎ ты меня любишь\n"
"- 2026-09-01 14:04 · ветка «крипто-карта» (бриф) · "
"сравни Trustee и RedotPay\n"
"- 2026-09-01 14:04 · ветка «крипто-карта» · сравни Trustee и RedotPay\n"
)
since = datetime(2026, 9, 1, 0, 0, tzinfo=UTC)
# пометка брифа не мешает куратору разбирать строку
assert new_replies(tmp_path / "реплики", since, "Europe/Warsaw") == [
line for line in text.splitlines() if line.startswith("- ")
]
assert date.fromisoformat("2026-09-01") # tz shift stays inside the month here