-
91f415e36d
feat(guilds): встроенные шаблоны серверов
grendervill
2026-09-21 18:04:52 +03:00
-
a36ee9527b
feat(cosmetics): оформление «для друзей» в друзьях и личных беседах
grendervill
2026-09-21 01:48:56 +03:00
-
75b71da7b7
fix(roles): роли на себя выдавать можно, самомодерация запрещена
grendervill
2026-09-21 01:40:17 +03:00
-
0646faae2a
fix(cosmetics): область стиля в ответе и ожидание данных в проверке
grendervill
2026-09-21 01:32:48 +03:00
-
48e30a1897
feat(cosmetics): оформление профиля — галерея, роли и личные стили
grendervill
2026-09-21 01:28:48 +03:00
-
2e038a1d3f
feat(webhooks): вебхуки комнат — бэкенд, клиент и настройки комнаты
grendervill
2026-09-21 00:26:50 +03:00
-
4ea2965892
fix(web): баннер сервера из снапшота, приглашение, встроенные звуки
grendervill
2026-09-21 00:04:49 +03:00
-
6882516340
feat(web): оформление сервера в настройках, рейке и приглашении
grendervill
2026-09-20 23:34:05 +03:00
-
02a5b99418
feat(guilds): оформление сервера — иконка, баннер, splash и акцентный цвет
grendervill
2026-09-20 23:26:46 +03:00
-
f1a195ec9d
feat(web): меню модерации участника в списке сервера
grendervill
2026-09-20 23:04:35 +03:00
-
dff4a25332
fix(moderation): администратор инстанса тоже не может модерировать себя
grendervill
2026-09-20 22:57:45 +03:00
-
8613989b21
feat(web): разделы «Баны» и «Журнал аудита» в настройках сервера
grendervill
2026-09-20 22:43:56 +03:00
-
4fb3509128
feat(moderation): баны сервера, тайм-ауты и фильтры журнала аудита
grendervill
2026-09-20 22:38:48 +03:00
-
cc16c18b13
fix(web): пинг участника показывается только при наведении
grendervill
2026-09-20 22:30:24 +03:00
-
96acc40031
test(web): e2e проверяет пинг участника в плитке
grendervill
2026-09-20 22:15:39 +03:00
-
3fe634c9bc
feat(web): второй ряд дашборда и пинг участников в голосовой комнате
grendervill
2026-09-20 22:10:17 +03:00
-
5668d779df
feat(instance): метрики всей машины вторым рядом дашборда
grendervill
2026-09-20 22:10:09 +03:00
-
3cfab89965
fix(web): до первого ответа метрик показывать прочерк вместо нулей
grendervill
2026-09-20 21:37:42 +03:00
-
ce6a566f83
fix(sysinfo): переносимое приведение размера блока statfs
grendervill
2026-09-20 21:28:08 +03:00
-
e1107600ec
feat(web): дашборд инстанса в настройках с живыми метриками
grendervill
2026-09-20 21:26:25 +03:00
-
4c3736b5fb
feat(instance): метрики и healthcheck инстанса для дашборда
grendervill
2026-09-20 21:26:17 +03:00
-
8ae8ca1a1d
test(web): e2e голоса различает отсутствие пользователя и лимит частоты
grendervill
2026-09-20 20:57:54 +03:00
-
197c3d1a82
chore: отключать таймер сертификата TURN при внешнем релее
grendervill
2026-09-20 20:52:41 +03:00
-
8b477ac314
feat(deploy): TURN/TLS анонсируется именем хоста с сертификатом
grendervill
2026-09-20 20:48:32 +03:00
-
4a0b70ab24
test(web): e2e голоса переиспользует тестового пользователя и терпит лимиты
grendervill
2026-09-20 20:07:10 +03:00
-
4ba449670a
fix(voice): читать ответ GetParticipant в формате LiveKit 1.x
grendervill
2026-09-20 19:59:04 +03:00
-
a6d23a295e
fix(voice): административный токен RoomService привязан к комнате
grendervill
2026-09-20 19:54:21 +03:00
-
912a067c9a
test(web): e2e-стенд Playwright для голосовой комнаты
grendervill
2026-09-20 19:30:46 +03:00
-
619bd91df4
feat(voice): саундборд, звуковая палитра, push-to-talk и статистика соединения
grendervill
2026-09-20 19:30:43 +03:00
-
2538e07ec3
fix(voice): отдавать клиенту базовый адрес LiveKit без сегмента /rtc
grendervill
2026-09-20 19:29:19 +03:00
-
1552146aa1
feat(voice): модерация через RoomService, саундборд и звуковая палитра
grendervill
2026-09-20 19:01:14 +03:00
-
3ae03ec515
feat(voice): голосовой интерфейс на LiveKit (Фаза 3, клиент)
grendervill
2026-09-20 18:51:31 +03:00
-
0db4c63023
feat(voice): журнал обработанных вебхуков LiveKit
grendervill
2026-09-20 18:45:14 +03:00
-
ecd7b3be10
fix(install): LiveKit перезапускается при изменении конфига
grendervill
2026-09-20 18:38:54 +03:00
-
9e7d023f7e
feat(voice): время жизни токена LiveKit настраивается (по умолчанию 10 минут)
grendervill
2026-09-20 18:32:47 +03:00
-
6d495f4521
feat(voice): LiveKit шлёт вебхуки приложению
grendervill
2026-09-20 18:32:18 +03:00
-
e9455ab6fd
feat(voice): вебхуки LiveKit и сторож голосовых состояний
grendervill
2026-09-20 18:31:51 +03:00
-
2749a0e831
fix(install): LIVEKIT_URL попадает в compose приложения
grendervill
2026-09-20 18:19:19 +03:00
-
ca34d05377
fix(install): публичный адрес LiveKit вычисляется после TLS_ENABLED
grendervill
2026-09-20 18:13:04 +03:00
-
ecd52c11d3
feat(voice): вход в голосовые комнаты, voice states и модерация (Фаза 3)
grendervill
2026-09-20 18:04:59 +03:00
-
435c4deb9c
feat(emojis): кастомные эмодзи сервера и системные сообщения
grendervill
2026-09-20 18:01:54 +03:00
-
389fdd5f9a
fix(web): панели не уезжают за экран (правка после замечания линтера)
grendervill
2026-09-20 14:36:32 +03:00
-
494589ffca
fix(web): крупные стрелки устройств и панели, не уезжающие за экран
grendervill
2026-09-20 14:35:08 +03:00
-
a126f50468
feat(web): виды сообщений, автокомплиты композера и ссылки на комнаты
grendervill
2026-09-20 12:06:22 +03:00
-
65d0bafe0e
feat(messages): команды чата, личные сообщения и лимиты
grendervill
2026-09-20 11:32:50 +03:00
-
4c8f888b3e
feat(web): профиль с аватаром, панель в углу, настройки сервера, скрытые ID
grendervill
2026-09-20 11:24:09 +03:00
-
bd5f09336b
fix(store): закрытие набора строк в бэкфилле через defer
grendervill
2026-09-20 11:02:09 +03:00
-
0c1b1a261e
fix(store): проверка rows.Err и закрытия в бэкфилле поиска
grendervill
2026-09-20 11:01:48 +03:00
-
1aef57dfd9
feat(search): нечёткий поиск по сообщениям — по началу слова и по подстроке
grendervill
2026-09-20 11:01:32 +03:00
-
bcfc275bb3
feat(web): друзья, личные беседы и вход только по приглашению
grendervill
2026-09-20 01:52:27 +03:00
-
d02ef7527a
fix(files): аватары и баннеры доступны авторизованным пользователям
grendervill
2026-09-20 01:39:04 +03:00
-
20eed227ca
feat(web): вход с 2FA сразу, панель пользователя, модальные настройки, markdown
grendervill
2026-09-20 01:32:11 +03:00
-
f26728113d
feat(instance): сервер установщика больше не «главный»
grendervill
2026-09-20 01:12:01 +03:00
-
33dc1fec96
feat(social): друзья, личные беседы, присутствие, аватары и часовой пояс
grendervill
2026-09-20 01:11:04 +03:00
-
b01eb1f34c
feat(web): чат Фазы 2 — лента, композер, реакции, ответы, поиск и вложения
grendervill
2026-09-20 00:15:18 +03:00
-
b22db8f048
fix(tests): загрузки тестов не попадают в рабочее дерево репозитория
grendervill
2026-09-19 23:49:24 +03:00
-
53b7b77eed
feat(web): анимации, меню пользователя и раздельные настройки аккаунта и серверов
grendervill
2026-09-19 23:42:56 +03:00
-
8619f37cd5
feat(messages): счётчики упоминаний, квота приглашений и read state автора
grendervill
2026-09-19 23:37:02 +03:00
-
0e39b8e027
feat(files): загрузка и выдача вложений
grendervill
2026-09-19 23:36:16 +03:00
-
63bf1e63b5
fix(invites): код приглашения не подменяется слабым при отказе crypto/rand
grendervill
2026-09-19 23:33:59 +03:00
-
61a84bfeae
feat(invites): приглашения, каталог публичных серверов и публичность сервера
grendervill
2026-09-19 23:33:34 +03:00
-
e4ffbb05a5
feat(messages): сообщения, реакции, пины, typing, read states и поиск
grendervill
2026-09-19 23:32:11 +03:00
-
4550bea6cc
feat(db): схема Фазы 2 — сообщения, реакции, read states, файлы, инвайты, FTS5
grendervill
2026-09-19 23:29:39 +03:00
-
0a82dd3a02
feat(api,install): исключения fail2ban и смена своего никнейма
grendervill
2026-09-19 23:27:26 +03:00
-
ac2b2cb18a
fix(install): ключ шифрования бэкапов создаётся после установки age
grendervill
2026-09-19 22:11:31 +03:00
-
fb221c91bb
fix(install): повторный запуск установщика больше не меняет секреты
grendervill
2026-09-19 22:08:47 +03:00
-
9c001fedfe
feat(web): базовый клиент Фазы 1 — вход, серверы, комнаты, настройки
grendervill
2026-09-19 22:03:46 +03:00
-
d6ca8e420f
fix(gateway): имена событий и resumable-флаг по спецификации §8.3
grendervill
2026-09-19 21:57:46 +03:00
-
463021161a
test(smoke): проверки API Фазы 1 в smoke-тесте
grendervill
2026-09-19 21:56:47 +03:00
-
b189b3592b
feat(api): список событий безопасности аккаунта
grendervill
2026-09-19 21:55:52 +03:00
-
bf0d130ee8
feat(cli): включение 2FA инстанс-админа командой totp-setup
grendervill
2026-09-19 21:53:35 +03:00
-
c059cd9f51
feat(api): лимиты частоты запросов (AGENT.md 8.6)
grendervill
2026-09-19 21:51:47 +03:00
-
6d7062dc2f
test(api): сценарии §11.5 и §11.6 — админ инстанса и realtime-события
grendervill
2026-09-19 21:50:54 +03:00
-
1b1a679827
feat(api): ручки Фаз(ы) 1 — профиль, серверы, роли, админ инстанса
grendervill
2026-09-19 21:50:06 +03:00
-
86dff94a02
feat(gateway): WebSocket Gateway с HELLO, IDENTIFY и READY
grendervill
2026-09-19 21:42:41 +03:00
-
c0537d3c17
feat(bootstrap): первичная настройка инстанса и CLI-команды
grendervill
2026-09-19 21:37:13 +03:00
-
f61751ed26
feat(api): REST на chi + huma с auth-ручками и OpenAPI 3.1
grendervill
2026-09-19 21:36:00 +03:00
-
16218ee045
feat(auth): сервис аккаунтов и аутентификации Фазы 1
grendervill
2026-09-19 21:29:07 +03:00
-
a5205cc054
feat(store,permissions): схема Фазы 1, доступ к данным и движок прав
grendervill
2026-09-19 21:24:17 +03:00
-
06e313dcc6
feat(crypto): крипто-слой Фазы 1 — Argon2id+pepper, AES-256-GCM, blind index
grendervill
2026-09-19 21:17:52 +03:00
-
a671027461
test(smoke): проверка обновления сертификата TURN и работоспособности LiveKit после неё
grendervill
2026-09-19 21:14:39 +03:00
-
ae289fc756
fix(turn): встроенный TURN анонсируется по публичному адресу релея
grendervill
2026-09-19 21:12:11 +03:00
-
d54a8fcc2d
fix(smoke): проверка TURN/TLS по результату верификации, а не по разбору CN
grendervill
2026-09-19 20:54:49 +03:00
-
2d7d8406d2
fix(security): DOCKER-USER пропускает доверенную подсеть (прокси по WireGuard)
grendervill
2026-09-19 20:51:50 +03:00
-
cb2e223a4d
feat(ufw): --allow-port/--allow-from для доступа прокси к внутреннему порту
grendervill
2026-09-19 20:48:59 +03:00
-
dcb2a8b3fa
fix(smoke): проверки используют адрес привязки, а не localhost
grendervill
2026-09-19 20:46:43 +03:00
-
891b34be13
fix(turn): диапазон релея ограничен 20 портами (docker не тянет 10k DNAT-правил)
grendervill
2026-09-19 20:44:25 +03:00
-
f1a5382413
fix(compose): публикация портов TURN (3478/udp, 5349/tcp, диапазон релея)
grendervill
2026-09-19 20:41:37 +03:00
-
2513dde5d6
fix(deploy): в файл значений .env добавлены TURN_RELAY_USER/PASSWORD
grendervill
2026-09-19 20:39:08 +03:00
-
928a97819a
chore(deploy): удалена неиспользуемая функция turn_shared_secret
grendervill
2026-09-19 20:38:55 +03:00
-
028a10b8d2
fix(deploy): убраны остатки TURN_SECRET, исправлена очистка hex при генерации age-ключа
grendervill
2026-09-19 20:38:46 +03:00
-
653229b6f0
fix(turn): внешний релей использует статические креденшелы (в v1.9.7 нет поля secret)
grendervill
2026-09-19 20:38:24 +03:00
-
496797ab04
fix(livekit): поле внешнего TURN-сервера называется shared_secret (по config.go)
grendervill
2026-09-19 20:35:29 +03:00
-
df89d452d8
fix(deploy): экранирование перевода строки в python-подстановке .env
grendervill
2026-09-19 20:32:55 +03:00
-
c274abdfa1
fix(deploy): подстановка значений в .env через python3 (sed ломался на @ в паролях)
grendervill
2026-09-19 20:32:37 +03:00
-
a556a86db7
fix(deploy): TLS_ENABLED вычисляется в resolve_derived_values (был unbound при записи .env)
grendervill
2026-09-19 20:32:18 +03:00
-
0497016c69
fix(deploy): .env генерируется через подстановку @KEY@, а не через heredoc
grendervill
2026-09-19 20:31:54 +03:00
-
4b3a90ad7f
fix(deploy): age-ключ генерируется без age-keygen -o (он читает stdin и ломал sudo -S)
grendervill
2026-09-19 20:30:23 +03:00
-
8ff7831dc7
fix(deploy): ssh при загрузке сертификата не читает stdin (ломало sudo -S)
grendervill
2026-09-19 20:29:39 +03:00
-
aefaf36108
fix(deploy): в плане установки показываются фактические адреса привязки
grendervill
2026-09-19 20:29:18 +03:00