Release and CI

Перевірка продуктивності релізу

Ця сторінка фіксує докази, що стоять за очищенням продуктивності, розміру пакета, залежностей і shrinkwrap OpenClaw у травні 2026 року. Це технічний супровід до публічної публікації в блозі.

Тут об’єднано два аудити:

  • Перевірка продуктивності релізів: GitHub Releases від v2026.5.28 назад до стабільного v2026.4.23, з використанням workflow OpenClaw Performance, profile=smoke, lane mock-провайдера. Більшість рядків тегів мають один зразок; рядки v2026.5.27 і v2026.5.28 використовують найновіші repeat-3 артефакти гілки релізу.
  • Попередній квітневий контекст: опубліковані базові значення mock-провайдера clawgrit-reports від v2026.4.1 до v2026.5.2, використані лише щоб не вважати зламані релізи кінця квітня публічною базою продуктивності.
  • Перевірка розміру встановлення: свіжі встановлення npm install --ignore-scripts у тимчасові пакети, з du -sk node_modules для розміру та обходом node_modules для підрахунку екземплярів пакетів.
  • Перевірка розміру npm-пакета: npm pack openclaw@<version> --dry-run --json для опублікованих релізів, із записом розміру стисненого tarball, розпакованого розміру та кількості файлів.

Знімок

Покриття продуктивності: 77 запитаних релізів, 74 точки з артефактами, і 3 недоступні CI-запуски. Найновіша виміряна стабільна точка: v2026.5.28.

Хронологія розміру встановлення

Що змінилося у 5.28

Очищення між v2026.5.27 і v2026.5.28 зменшило граф встановлення за замовчуванням замість того, щоб прибрати самі можливості.

Головні числа

Не використовуйте зламані рядки кінця квітня як публічні базові показники продуктивності. v2026.4.23 і v2026.4.29 корисні як докази регресії, але великі дельти у стилі 14x здебільшого описують відновлення після невдалої лінійки релізів.

Для наративу в блозі використовуйте ранішу квітневу опубліковану базову лінію як масштаб:

Метрика Раніша квітнева базова лінія v2026.5.28 Дельта
Холодний хід агента 9,819ms 1,908ms на 80.6% нижче, у 5.1x швидше
Теплий хід агента 7,458ms 1,870ms на 74.9% нижче, у 4.0x швидше
Піковий RSS агента 686.2MB 581.0MB на 15.3% нижче

Раніша квітнева базова лінія — це v2026.4.14 з опублікованого запуску mock-provider clawgrit-reports. У цьому запуску використовувався repeat 3, і він зазнав невдачі лише тому, що діагностичну часову шкалу не було виведено; медіани холодного, теплого та RSS усе ще корисні як приблизний масштаб. Розглядайте це як наративний контекст, а не як статистику для релізного шлюзу.

У межах травневого проходу останній рядок релізної гілки суттєво зрушився від v2026.5.2:

Метрика v2026.5.2 v2026.5.28 Дельта
Холодний хід агента 3,897ms 1,908ms на 51.0% нижче
Теплий хід агента 3,610ms 1,870ms на 48.2% нижче
Піковий RSS агента 613.7MB 581.0MB на 5.3% нижче

Порівняно з попереднім стабільним релізом:

Метрика v2026.5.27 v2026.5.28 Дельта
Холодний хід агента 2,231ms 1,908ms на 14.5% нижче
Теплий хід агента 2,226ms 1,870ms на 16.0% нижче
Піковий RSS агента 649.0MB 581.0MB на 10.5% нижче

Обсяг встановлення

Метрика Базова лінія v2026.5.28 Дельта
Розмір встановлення від піку 2026.5.22 1,020.6MB 361.7MiB на 64.6% нижче
Розмір встановлення від останнього релізу 2026.5.27 767.1MiB 361.7MiB на 52.8% нижче
Залежності від місячного максимуму 2026.2.26 645 300 на 53.5% нижче
Залежності від останнього релізу 2026.5.27 371 300 на 19.1% нижче
Вкладений openclaw/node_modules від 2026.5.22 911.8MB 259.7MiB на 71.5% нижче
Вкладений openclaw/node_modules від 2026.5.27 656.1MiB 259.7MiB на 60.4% нижче

Розмір пакета npm

Версія Стиснений tarball Розпакований пакет Файли Примітки
2026.1.30 12.8MB 33.5MB 4,607 ранній ребрендований пакет
2026.2.26 23.6MB 82.9MB 10,125 зростання функцій
2026.3.31 43.3MB 182.6MB 21,037 найвища точка розміру пакета
2026.4.29 22.9MB 74.6MB 9,309 помітне обрізання пакета
2026.5.12 23.4MB 80.1MB 12,035 великий поділ зовнішніх plugin
2026.5.22 17.2MB 76.9MB 12,386 docs/assets виключено з пакета
2026.5.27 17.8MB 79.0MB 12,509 попередній стабільний пакет
2026.5.28 17.9MB 81.0MB 9,082 останній стабільний пакет

2026.5.12 — це помітна віха винесення plugin у changelog: Amazon Bedrock, Bedrock Mantle, Slack, OpenShell sandbox, Anthropic Vertex, Matrix і WhatsApp вийшли з шляху залежностей ядра, тож їхні конуси залежностей встановлюються разом із цими plugins, а не з кожним встановленням ядра.

Підсумок ходу агента Kova

Квітнева стабільна лінійка містить дві різні історії. Ранній квітень був повільним, але впізнаваним. Кінець квітня перетворився на регресійний обрив. v2026.5.2 — це місце, де лінія mock-provider уперше опускається в діапазон 3-5s і починає послідовно проходити у наданому проході.

Раніший опублікований контекст:

Реліз Kova Холодний хід Теплий хід Піковий RSS агента
v2026.4.10 ЗБІЙ 11,031ms 7,962ms 679.0MB
v2026.4.12 ЗБІЙ 11,965ms 8,289ms 713.5MB
v2026.4.14 ЗБІЙ 9,819ms 7,458ms 686.2MB
v2026.4.20 ЗБІЙ 22,314ms 18,811ms 810.8MB
v2026.4.22 ЗБІЙ 9,630ms 7,459ms 743.0MB

Наданий прохід:

Реліз Kova Холодний хід Теплий хід Піковий RSS агента
v2026.4.23 ЗБІЙ 47,847ms 8,010ms 1,082.7MB
v2026.4.24 ЗБІЙ 48,264ms 25,483ms 996.0MB
v2026.4.25 ЗБІЙ 81,080ms 59,172ms 1,113.9MB
v2026.4.26 ЗБІЙ 76,771ms 54,941ms 1,140.8MB
v2026.4.27 ЗБІЙ 60,902ms 33,699ms 1,156.0MB
v2026.4.29 ЗБІЙ 94,031ms 57,334ms 3,613.7MB
v2026.5.2 УСПІХ 3,897ms 3,610ms 613.7MB
v2026.5.7 УСПІХ 3,923ms 3,693ms 654.1MB
v2026.5.12 УСПІХ 7,248ms 6,629ms 834.8MB
v2026.5.18 УСПІХ 3,301ms 2,913ms 630.3MB
v2026.5.20 УСПІХ 3,413ms 2,952ms 643.2MB
v2026.5.22 УСПІХ 4,494ms 4,093ms 654.3MB
v2026.5.26 УСПІХ 2,626ms 2,282ms 660.4MB
v2026.5.27-beta.1 УСПІХ 2,575ms 2,217ms 635.3MB
v2026.5.27 УСПІХ 2,231ms 2,226ms 649.0MB
v2026.5.28 УСПІХ 1,908ms 1,870ms 581.0MB

Вихідні зонди

Вихідні зонди було пропущено для 17 успішних старіших refs, оскільки ті дерева вихідного коду ще не мали потрібних точок входу зондів. Метрики ходів агента для цих refs усе ще існують.

Репрезентативні точки вихідних зондів:

Реліз readyz p50 за замовчуванням 50 plugins readyz p50 CLI health p50 Максимальний RSS Plugin
v2026.4.29 2,819ms 2,618ms 1,679ms 389.0MB
v2026.5.2 2,324ms 2,013ms 1,384ms 377.2MB
v2026.5.7 1,649ms 1,540ms 1,175ms 387.6MB
v2026.5.18 1,942ms 1,927ms 607ms 426.5MB
v2026.5.20 1,966ms 1,987ms 621ms 455.0MB
v2026.5.22 2,081ms 1,884ms 5,095ms 444.2MB
v2026.5.26 1,546ms 1,634ms 656ms 400.4MB
v2026.5.27-beta.1 1,462ms 1,548ms 548ms 394.0MB
v2026.5.27 1,491ms 1,571ms 553ms 401.5MB
v2026.5.28 1,457ms 1,474ms 623ms 386.1MB

Сплеск справності CLI у v2026.5.22 видно в цій таблиці, хоча лінія agent-turn усе ще пройшла. Зберігайте вихідні зонди під час розслідування цільових регресій CLI або Gateway.

Аудит інсталяційного відбитка

Вибірки залежностей використовують по одному стабільному випуску на місяць, а також подію запровадження shrinkwrap у 2026.5.22 і найновіший випуск 2026.5.28.

Точка Встановлені залежності Свіже встановлення Пакет OpenClaw Вкладений openclaw/node_modules Кореневий shrinkwrap Поведінка встановлення Canvas
Січ. 2026.1.30 605 438.4MB 45.8MB 2.4MB ні обгортка верхнього рівня + darwin-arm64
Лют. 2026.2.26 645 575.7MB 110.1MB 3.5MB ні обгортка верхнього рівня + darwin-arm64
Бер. 2026.3.31 438 584.1MB 234.8MB 0MB ні обгортка верхнього рівня + darwin-arm64
Квіт. 2026.4.29 392 335.0MB 97.4MB 0MB ні нічого не встановлено
2026.5.22 401 1,020.6MB 1,020.4MB 911.8MB так вкладено: усі 12 пакетів @napi-rs/canvas
Трав. 2026.5.26 371 767.5MB 767.4MB 656.4MB так вкладено: усі 12 пакетів @napi-rs/canvas
2026.5.27 371 767.1MiB 766.9MiB 656.1MiB так вкладено: усі 12 пакетів @napi-rs/canvas
Найновіший 2026.5.28 300 361.7MiB 361.6MiB 259.7MiB так нічого не встановлено

Межа shrinkwrap

Перевірка опублікованого tarball підтверджує межу:

Версія Опубліковано як стабільну? Кореневий npm-shrinkwrap.json Примітки
2026.5.20 так ні останній стабільний випуск до shrinkwrap
2026.5.21 ні н/д немає стабільного npm-випуску
2026.5.22 так так shrinkwrap запроваджено
2026.5.23 ні н/д немає стабільного npm-випуску
2026.5.24 ні н/д немає стабільного npm-випуску
2026.5.25 ні н/д немає стабільного npm-випуску
2026.5.26 так так вкладене дерево залежностей усе ще наявне
2026.5.27 так так вкладене дерево залежностей усе ще наявне
2026.5.28 так так вкладене дерево залежностей значно менше

Важлива відмінність: сам shrinkwrap не є проблемою. v2026.5.28 усе ще постачається з кореневим shrinkwrap. Проблемою була форма пакета, через яку npm матеріалізував велике вкладене дерево залежностей OpenClaw і всі 12 платформних пакетів @napi-rs/canvas. У v2026.5.28 вкладене дерево менше, а розгортання платформ Canvas більше не потрапляє в локальний аудит.

Просте пояснення shrinkwrap і перевірок пакетів на рівні супровідників див. у npm shrinkwrap.

Інтерпретація ланцюга постачання

Кількість залежностей є метрикою операційної безпеки, а не лише метрикою розміру встановлення. Кожен пакет розширює набір супровідників, tarball, транзитивних оновлень, необов’язкових нативних бінарних файлів і поведінки під час встановлення, яким оператори мають довіряти.

Напрям очищення такий:

  • тримати важкі й необов’язкові можливості поза стандартним встановленням ядра
  • зробити так, щоб пакети Plugin володіли своїм графом runtime-залежностей
  • уникати runtime-відновлення через менеджер пакетів під час запуску Gateway
  • зберегти детерміновані встановлення без матеріалізації нативних пакетів для всіх платформ
  • тримати скрипти встановлення вимкненими в шляхах приймання та вимірювання пакетів
  • виявляти вкладені дерева залежностей і вибухове зростання нативних необов’язкових залежностей до публікації

Пов’язані документи:

Was this useful?
On this page

On this page