You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Гонка квоты группы: при двух одновременных созданиях/переносах
клиентов в одну группу квота могла быть превышена — проверка и привязка
теперь атомарны; создание, проигравшее гонку, откатывается с сообщением
«квота исчерпана» (#20).
«Готово» после ошибки создания: провал добавления клиента больше не
завершается сообщением «Готово» — после ошибки бот возвращает главное
меню (#40).
Устойчивость к «Text file busy»: запуск manage-скрипта теперь
переживает короткое окно, когда файл открыт на запись (например, awgram-setup update переписывает скрипт под работающим ботом) —
spawn ретраится до 200 мс вместо немедленной ошибки.
♻️ Изменено
Централизованная авторизация кнопок: все callback-действия проходят
через единую таблицу доступа (владелец / групповой админ) — забытая
проверка в новом действии теперь невозможна by construction.
🇬🇧 English
🐛 Fixed
Group quota race: two concurrent client creations/moves into the
same group could exceed the quota — the check and the binding are now
atomic; a creation that loses the race is rolled back with a
"quota reached" message (#20).
"Done" after a failed add: a failed client creation no longer ends
with a "Done" message — on error the bot now returns the main menu
(#40).
Resilience to "Text file busy": launching the manage script now
survives a brief window when the file is open for writing (e.g. awgram-setup update rewriting the script under a running bot) — the
spawn retries for up to 200 ms instead of failing immediately.
♻️ Changed
Centralized button authorization: every callback action now passes
through a single access table (owner / group admin) — a forgotten check
in a new action is impossible by construction.