From cd407855fc5d92e0455ccb83ccfdf839cbdf8cc7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=94=D0=BC=D0=B8=D1=82=D1=80=D0=B8=D0=B9?= Date: Wed, 5 Aug 2026 18:19:55 +0300 Subject: [PATCH] =?UTF-8?q?fix:=20=D1=81=D1=80=D0=BE=D0=BA=20=D1=85=D1=80?= =?UTF-8?q?=D0=B0=D0=BD=D0=B5=D0=BD=D0=B8=D1=8F=20=D0=B7=D0=B0=D0=BF=D0=B8?= =?UTF-8?q?=D1=81=D0=B5=D0=B9=20=D0=9B=D0=B5=D0=BD=D1=8B=20=E2=80=94=20?= =?UTF-8?q?=D1=80=D0=B5=D1=88=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=B2=D0=BB=D0=B0?= =?UTF-8?q?=D0=B4=D0=B5=D0=BB=D1=8C=D1=86=D0=B0=20=D0=A095,=20=D0=BC=D0=B5?= =?UTF-8?q?=D1=81=D1=8F=D1=86=20=D0=B2=D0=BC=D0=B5=D1=81=D1=82=D0=BE=20?= =?UTF-8?q?=D0=B7=D0=B0=D0=B3=D0=BB=D1=83=D1=88=D0=BA=D0=B8=2072=20=D1=87?= =?UTF-8?q?=D0=B0=D1=81=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Владелец назначил срок хранения звуковых записей во временной папке робота: месяц (30 суток = 720 часов), решение Р95 от 05.08.2026 в docs/grilling/2026-08-03-metodika-lena-pod-klienta.md. Столько же уже решено хранить звук в самом портале (Р40, Т70) — одно число на оба места. chistka-zapisey.sh: заглушка "число временное, назначит владелец" заменена на текст решения; дописано предупреждение, что суммарно голос человека может пролежать у нас до двух месяцев (месяц во временной папке плюс месяц в портале). proverka-chistki.sh: свои короткие 72 часа для проб помечены явно как не боевой срок; добавлен сценарий 6 — прогон БЕЗ переопределения переменной, который проверяет настоящий default (месяц) на границе 29/31 суток. README.md: срок и решение владельца названы поимённо, добавлено то же предупреждение про два месяца суммарно. Co-Authored-By: Claude Opus 5 --- bots/lena-golos/README.md | 17 +++++++++++------ bots/lena-golos/chistka-zapisey.sh | 25 ++++++++++++++++--------- bots/lena-golos/proverka-chistki.sh | 25 ++++++++++++++++++++++++- 3 files changed, 51 insertions(+), 16 deletions(-) diff --git a/bots/lena-golos/README.md b/bots/lena-golos/README.md index 92de25bc..4e65d1aa 100644 --- a/bots/lena-golos/README.md +++ b/bots/lena-golos/README.md @@ -85,10 +85,15 @@ printf "Имя" > /tmp/lena-inworld/imya.txt старше N дней» первым делом съедает испытательную оснастку, и пробы робота без телефонии перестают работать. -**Какой срок.** Сегодня — 72 часа, это записано в `chistka-zapisey.sh`. -🔴 **Число временное и решением не является.** Сколько хранить голос человека — -вопрос денег и закона, назначает его владелец. До его ответа срок намеренно -короткий. +**Какой срок.** Месяц (30 суток = 720 часов) — записано в `chistka-zapisey.sh`. +🔴 **Число — решение владельца Р95 от 05.08.2026** +(`docs/grilling/2026-08-03-metodika-lena-pod-klienta.md`), не заглушка. +Столько же уже решено хранить звук самой записи в портале (Р40, Т70) — +владелец нарочно взял одно число на оба места, чтобы не разводить два срока. +Месяц во временной папке — это долго, владелец выбирал его зная это; а +поскольку запись затем переезжает в портал, где для неё начинается свой +отсчёт месяца заново, суммарно голос человека может пролежать у нас до двух +месяцев — месяц здесь и ещё месяц в портале. Своей чистки по возрасту у папки нет вовсе: правило `D /tmp` в `/usr/lib/tmpfiles.d/tmp.conf` вычищает её **целиком при перезагрузке машины**. @@ -97,7 +102,7 @@ printf "Имя" > /tmp/lena-inworld/imya.txt **Как чистить:** ```bash -bash chistka-zapisey.sh # папка /tmp/lena-inworld, срок 72 часа +bash chistka-zapisey.sh # папка /tmp/lena-inworld, срок 720 ч (месяц) LENA_SROK_CHASOV=24 bash chistka-zapisey.sh bash chistka-zapisey.sh /своя/папка # довод сильнее переменной ``` @@ -287,4 +292,4 @@ $ sed 's/;.*//' bots/lena-golos/extensions-lena.conf | grep -c ZAPIS_RAZGOVOROV - + diff --git a/bots/lena-golos/chistka-zapisey.sh b/bots/lena-golos/chistka-zapisey.sh index b44b51da..2df671fd 100644 --- a/bots/lena-golos/chistka-zapisey.sh +++ b/bots/lena-golos/chistka-zapisey.sh @@ -14,7 +14,7 @@ # # Настройки — доводом или переменными окружения: # LENA_PAPKA какую папку чистить (по умолчанию /tmp/lena-inworld) -# LENA_SROK_CHASOV что считать старым, часы (по умолчанию 72) +# LENA_SROK_CHASOV что считать старым, часы (по умолчанию 720 = 30 суток) # LENA_ZHURNAL куда писать след # # Довод в командной строке сильнее переменной окружения. @@ -24,17 +24,24 @@ set -u PAPKA="${1:-${LENA_PAPKA:-/tmp/lena-inworld}}" # ============================================================================ -# 🔴 СРОК ХРАНЕНИЯ — ЧИСЛО ВРЕМЕННОЕ, ЭТО НЕ РЕШЕНИЕ. +# 🔴 СРОК ХРАНЕНИЯ — РЕШЕНИЕ ВЛАДЕЛЬЦА Р95 от 05.08.2026, НЕ ЗАГЛУШКА. # -# Сколько хранить голос человека — вопрос денег и закона, и назначает его -# ТОЛЬКО владелец. До его ответа здесь намеренно стоит короткий срок: лучше -# потерять запись, нужную для наладки, чем хранить чужой голос лишний день. +# Было временное число 72 часа (трое суток) — владелец заменил его осознанным +# решением: месяц (30 суток = 720 часов). Столько же уже решено хранить звук +# самой записи в портале (Р40, Т70) — владелец нарочно взял одно число на оба +# места, чтобы не разводить два разных срока. # -# 72 часа = трое суток. Хватает разобрать вчерашние и позавчерашние разговоры -# и не хватает накопить архив. Как только владелец назовёт своё число — -# поменять здесь и убрать эту оговорку. +# 🔴 Месяц во временной папке — это ДОЛГО, владелец выбирал это зная. И это +# не весь путь записи: отсюда файл переезжает в портал (см. README), а там +# для него начинается СВОЙ отсчёт месяца заново. Итого голос человека может +# пролежать у нас суммарно ДО ДВУХ МЕСЯЦЕВ — месяц здесь, и ещё месяц в +# портале. +# +# Протокол решения — docs/grilling/2026-08-03-metodika-lena-pod-klienta.md, +# развилка Р95. Менять число можно только новым решением владельца, +# записанным туда же — не молча. # ============================================================================ -SROK_CHASOV="${LENA_SROK_CHASOV:-72}" +SROK_CHASOV="${LENA_SROK_CHASOV:-720}" # 30 суток ZHURNAL="${LENA_ZHURNAL:-/home/ubuntu/lena-inworld/chistka-zapisey.log}" diff --git a/bots/lena-golos/proverka-chistki.sh b/bots/lena-golos/proverka-chistki.sh index 981d4b27..fd559fcb 100644 --- a/bots/lena-golos/proverka-chistki.sh +++ b/bots/lena-golos/proverka-chistki.sh @@ -68,6 +68,10 @@ kod_ravno() { # <ожидаемый код> <фактический код> <ч else krasnyy "$3 — ждали код $1, получили $2"; fi } +# 🔴 72 часа здесь — НАШЕ СОБСТВЕННОЕ короткое число для быстрых проб на +# временной папке, а не боевой срок. Боевой срок — месяц (30 суток = +# 720 часов, решение владельца Р95). Его проверяет отдельно сценарий 6, +# который запускает чистку БЕЗ переопределения — на настоящем умолчании. zapustit_chistku() { # <папка> LENA_SROK_CHASOV=72 LENA_ZHURNAL="$ZHURNAL" bash "$CHISTKA" "$1" >/dev/null 2>&1 } @@ -111,7 +115,7 @@ nabit_papku() { echo "Сторож чистки записей. Временная папка: $KORZINA" echo -echo "1. Полная папка, срок 72 часа" +echo "1. Полная папка, наш срок для проб 72 часа (не боевой)" nabit_papku zapustit_chistku "$PAPKA"; KOD=$? kod_ravno 0 "$KOD" "прогон на полной папке" @@ -153,6 +157,7 @@ touch -d '10 days ago' "$PO_PEREMENNOY/1111111111.5.wav" : > "$PO_PEREMENNOY/chelovek.wav" touch -d '30 days ago' "$PO_PEREMENNOY/chelovek.wav" # Журнал нарочно в несуществующую папку: чистка обязана не падать и не ругаться. +# И здесь 72 — наш срок для проб (см. пояснение у zapustit_chistku), не боевой. RUGAN="$( LENA_PAPKA="$PO_PEREMENNOY" \ LENA_SROK_CHASOV=72 \ @@ -177,6 +182,24 @@ kod_ravno 0 "$KOD" "прогон на отсутствующей папке" zhurnal_govorit "папки нет" "след об отсутствующей папке" echo +echo "6. БЕЗ переопределения — действует настоящий боевой срок (месяц, Р95)" +# Единственный сценарий здесь, где LENA_SROK_CHASOV не задаётся вовсе — это +# и есть проверка того, что default в chistka-zapisey.sh правда месяц, а не +# наши короткие 72 часа для проб. +PO_UMOLCHANIYU="$KORZINA/по умолчанию" +mkdir -p "$PO_UMOLCHANIYU" +: > "$PO_UMOLCHANIYU/2222222222.7.wav" +touch -d '31 days ago' "$PO_UMOLCHANIYU/2222222222.7.wav" +: > "$PO_UMOLCHANIYU/3333333333.9.wav" +touch -d '29 days ago' "$PO_UMOLCHANIYU/3333333333.9.wav" +: > "$ZHURNAL" +LENA_ZHURNAL="$ZHURNAL" bash "$CHISTKA" "$PO_UMOLCHANIYU" >/dev/null 2>&1; KOD=$? +kod_ravno 0 "$KOD" "прогон без LENA_SROK_CHASOV" +ne_dolzhen_byt "$PO_UMOLCHANIYU/2222222222.7.wav" "запись старше месяца (31 сутки, default)" +dolzhen_byt "$PO_UMOLCHANIYU/3333333333.9.wav" "запись младше месяца (29 суток, default)" +zhurnal_govorit "срок 720 ч" "default в журнале — 720 часов (месяц, Р95)" +echo + # ------------------------------------------------------------- итог -------- echo "──────────────────────────────────────────────"