Files
rust-xmpp/docs/VALIDATION-0.7.7.md
T
wt b30fc524d8 - Offline CLI `upload-migrate OLD_CONFIG NEW_CONFIG --component HOST
[--execute]`: dry run по умолчанию, local ↔ S3 и S3 ↔ S3 без удаления
  source.
- Последовательное копирование с проверкой размера и полным SHA-256
  readback
  destination; конфликтующий объект не перезаписывается. Временный диск
  —
  максимум один переносимый файл дополнительно к постоянному
  destination.
- Durable migration journal позволяет продолжить прерванную операцию с
  теми
  же конфигурациями. Незавершённый или повреждённый journal блокирует
  startup;
  backend identity меняется только после проверки всех файлов.
- Native `uploads`/`upload_stats`, slots и JWT сохраняются;
  поддерживаются
  native локальные файлы без Rust completion sidecar. Миграция требует
  остановки RustXMPP и Prosody, использующих общий `data_path`.
- Multipart intent сохраняется до создания удалённого upload. Recovery
  находит потерянный UploadId через paginated listing и очищает только
  точный
  key принадлежащего slot. При сохранных metadata cleanup не зависит от
  lifecycle; lifecycle остаётся дополнительной защитой, а не гарантией.
- Перед completion сохраняется durable marker. Неопределённый результат
  completion при отсутствии подтверждённого объекта помещает только этот
  slot в quarantine: PUT 409, retention не удаляет его, maintenance
  повторяет
  сверку. Startup продолжается; сохраняется single-use семантика.
- Добавлены network regressions миграции и расширены проверки multipart
  recovery, потерянных ответов, отмены запросов и конфликтов
  destination.

Настройка, команды миграции, recovery и ограничения отката:
[docs/HTTP-UPLOAD.md](docs/HTTP-UPLOAD.md).

Команды, результаты и границы подтверждения, включая qualification
реального
object store и 10 GiB:
[docs/VALIDATION-0.7.9.md](docs/VALIDATION-0.7.9.md).

Итог: 265 тестов, нагрузка 500 TLS клиентов и native reference —
успешно.
Реальные 10 GiB через MinIO (описанный test adapter), 1280parts и полный
SHA-256
пройдены; подробности — [VALIDATION-0.7.9](docs/VALIDATION-0.7.9.md).
2026-10-20 17:06:14 +07:00

2.8 KiB
Raw Blame History

Проверка0.7.7

Linux x86_64, Rust1.99.1,2026-10-20. Итоговый лог: validation-logs-0.7.7/verify.txt; структурированный итог — validation-results.json.

Проверка Результат
cargo test --locked 262 passed,0 failed,11 ignored
fmt / Clippy all-targets -D warnings / release Успешно
Новый module unit Link порядок/schemes, загруженные/disabled модули, flags, наследование custom paths/public prefix, неправильные типы и path collisions
http_altconnect wire 10 изолированных конфигураций: настоящий HTTP и CA-verified HTTPS, XRD/JRD parity, MIME, CORS, HEAD/OPTIONS/405, query/JSONP, Host, custom mount/public prefix, HTTPS preference, HTTP fallback
Транспортная регрессия WSS framing работает до и после отключения discovery; старые WS/BOSH/proxy paths/upload сценарии прошли
Остальные регрессии SASL/PLUS/SSDP/Bind2/resume, PEP/push/preauth, logging/resource/CSI/MAM/MUC/offline, MUC restart — успешно
Native total 8 module/storage tests +1 TLS/SASL EXTERNAL federation — успешно
Нагрузка 100 аккаунтов,500 TLS клиентов,5000 ping,5000 сообщений,10000 MAM; failures=[]

Итоговый прогон выполнен после исправления проверки Host с портом вне диапазона, которую обнаружил новый сетевой тест. Все тесты запускают отдельные loopback listeners и временные данные. После прогона менялись только отчёты и упаковка. Native reference suite прежних модулей пройдена; непосредственно http_altconnect проверен Rust unit/network и сопоставлением с supplied Lua source, без отдельного native differential oracle этого модуля.

Команда: XMPP_LOAD_CHECK=1 bash scripts/verify-local.sh с native reference env согласно scripts/prosody_compat/README.md. Точный скрипт включает новый wire test.

Рабочие конфиги/DNS/proxy/certificates production не изменялись; оператор должен добавить http_altconnect и опубликовать HTTPS well-known. Инструкция: HTTP-ALTCONNECT.md. Native HTTP/WS fallback сохранён; для строгого XEP0156 нужны HTTPS/WSS URLs. Настоящие Converse/Monal/Conversations UI и полный production rollout не проверены. Общие ограничения сервера — COMPATIBILITY.md.