Files
rust-xmpp/CHANGELOG-0.8.0.md
wt 7f60661eef - MUC сохраняет согласованный журнал конфигурации, affiliations, nick,
ролей,
  членства и ограниченной истории без MAM. Изменение фиксируется до
  публикации
  ответа; при ошибке записи состояние комнаты откатывается.
- Crash recovery использует последнее сохранённое поколение после
  SIGKILL,
  включая временные комнаты. Heartbeat обновляет живое членство;
  ожидающие записи сохраняют исходный deadline через повторные
  перезапуски.
  `muc_recovery_grace_period`: по умолчанию 300 секунд, пределы
  1..604800.
- Подтверждённые выходы, смена nick, ролей и политик комнаты не
  заменяются
  старой записью восстановления. Native config/state остаются экспортом
  для
  Prosody; согласованное восстановление Rust использует собственный
  sidecar.
- Исправлены MUC probe, неизвестные типы presence, вход без MUC `<x/>`,
  ошибки
  доставки и статус 333. Обычные presence extensions сохраняются в живом
  обмене; поддельная MUC identity фильтруется. `subject` вместе с `body`
  либо
  `thread` не изменяет тему комнаты.
- Подключены `muc_max_rooms`, `restrict_room_creation`, политики
  регистрации
  и зарегистрированного nick, `muc_tombstone_expiry`; добавлены
  встроенные
  административные ad-hoc команды уничтожения комнат и изменения
  affiliation.
- Hub сохраняет resumable XEP-0198 сессии, счётчики и очередь. Resume
  после
  перезапуска доступен на новом TLS/SASL-транспорте через legacy SASL и
  SASL2.
  Действующие приватные SM-записи восстанавливают логические сессии и
  MUC
  до открытия listeners: offline-доставка попадает в очередь,
  синтетический
  join и история повторно не отправляются. SM resume не требует
  дополнительной
  available presence; без SM восстановление MUC требует новой
  аутентификации
  точного полного JID и available presence либо явного MUC-входа.
  Входящий handled-счётчик обновляется после обработки. Сокеты TCP/TLS
  не сохраняются; неопределённая сетевая отправка допускает повторную
  доставку.
- Известные встроенные MUC-возможности Prosody отображаются на
  Rust-реализацию.
  Произвольные Lua/community-модули не исполняются; неизвестные явно
  включённые
  MUC-модули отклоняются при запуске. Общие и host `modules_disabled`
  учитываются
  для vCard и occupant-id.

Порядок восстановления, ограничения хранения и отката на Prosody:
[docs/MUC-RECOVERY.md](docs/MUC-RECOVERY.md).

Проверка: 293 Rust tests, Clippy/fmt/release, полный сетевой прогон, 500
TLS
MUC+SM ресурсов с SIGKILL/resume и native reference — успешно.
Подробности: [docs/VALIDATION-0.8.0.md](docs/VALIDATION-0.8.0.md).
2026-10-20 17:34:43 +07:00

40 lines
3.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 0.8.0
- MUC сохраняет согласованный журнал конфигурации, affiliations, nick, ролей,
членства и ограниченной истории без MAM. Изменение фиксируется до публикации
ответа; при ошибке записи состояние комнаты откатывается.
- Crash recovery использует последнее сохранённое поколение после SIGKILL,
включая временные комнаты. Heartbeat обновляет живое членство;
ожидающие записи сохраняют исходный deadline через повторные перезапуски.
`muc_recovery_grace_period`: по умолчанию 300 секунд, пределы 1..604800.
- Подтверждённые выходы, смена nick, ролей и политик комнаты не заменяются
старой записью восстановления. Native config/state остаются экспортом для
Prosody; согласованное восстановление Rust использует собственный sidecar.
- Исправлены MUC probe, неизвестные типы presence, вход без MUC `<x/>`, ошибки
доставки и статус 333. Обычные presence extensions сохраняются в живом
обмене; поддельная MUC identity фильтруется. `subject` вместе с `body` либо
`thread` не изменяет тему комнаты.
- Подключены `muc_max_rooms`, `restrict_room_creation`, политики регистрации
и зарегистрированного nick, `muc_tombstone_expiry`; добавлены встроенные
административные ad-hoc команды уничтожения комнат и изменения affiliation.
- Hub сохраняет resumable XEP-0198 сессии, счётчики и очередь. Resume после
перезапуска доступен на новом TLS/SASL-транспорте через legacy SASL и SASL2.
Действующие приватные SM-записи восстанавливают логические сессии и MUC
до открытия listeners: offline-доставка попадает в очередь, синтетический
join и история повторно не отправляются. SM resume не требует дополнительной
available presence; без SM восстановление MUC требует новой аутентификации
точного полного JID и available presence либо явного MUC-входа.
Входящий handled-счётчик обновляется после обработки. Сокеты TCP/TLS
не сохраняются; неопределённая сетевая отправка допускает повторную доставку.
- Известные встроенные MUC-возможности Prosody отображаются на Rust-реализацию.
Произвольные Lua/community-модули не исполняются; неизвестные явно включённые
MUC-модули отклоняются при запуске. Общие и host `modules_disabled` учитываются
для vCard и occupant-id.
Порядок восстановления, ограничения хранения и отката на Prosody:
[docs/MUC-RECOVERY.md](docs/MUC-RECOVERY.md).
Проверка: 293 Rust tests, Clippy/fmt/release, полный сетевой прогон, 500 TLS
MUC+SM ресурсов с SIGKILL/resume и native reference — успешно.
Подробности: [docs/VALIDATION-0.8.0.md](docs/VALIDATION-0.8.0.md).