Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
План модернізації застосунку
Мета
Перемістити застосунок у бік чистішого, швидшого та легшого в підтримці продукту без порушення поточних робочих процесів і без приховування ризиків у широких рефакторингах. Робота має впроваджуватися невеликими, придатними до рев’ю частинами з підтвердженням для кожної зміненої поверхні.Принципи
- Зберігати поточну архітектуру, якщо тільки не доведено, що певна межа спричиняє нестабільність, витрати продуктивності або видимі для користувача помилки.
- Для кожної проблеми віддавати перевагу найменшому правильному виправленню, а потім повторювати підхід.
- Відокремлювати обов’язкові виправлення від необов’язкового полірування, щоб супроводжувачі могли впроваджувати висококорисну роботу без очікування суб’єктивних рішень.
- Підтримувати задокументовану та зворотно сумісну поведінку для Plugin.
- Перевіряти поведінку в релізі, контракти залежностей і тести, перш ніж стверджувати, що регресію виправлено.
- Спочатку покращувати основний шлях користувача: онбординг, автентифікацію, чат, налаштування провайдера, керування Plugin і діагностику.
Етап 1: Базовий аудит
Інвентаризуйте поточний застосунок перед внесенням змін.- Визначте основні користувацькі сценарії та кодові поверхні, які ними керують.
- Перелічіть мертві елементи інтерфейсу, дубльовані налаштування, неясні стани помилок і витратні шляхи рендерингу.
- Зафіксуйте поточні команди валідації для кожної поверхні.
- Позначте проблеми як обов’язкові, рекомендовані або необов’язкові.
- Задокументуйте відомі блокери, які потребують рев’ю від власника, особливо зміни API, безпеки, релізів і контрактів Plugin.
- Один список проблем із посиланнями на файли від кореня репозиторію.
- Для кожної проблеми вказано критичність, поверхню-власника, очікуваний вплив на користувача та запропонований шлях валідації.
- Жодні спекулятивні елементи прибирання не змішані з обов’язковими виправленнями.
Етап 2: Очищення продукту та UX
Надайте пріоритет видимим сценаріям і приберіть плутанину.- Уточніть текст онбордингу та порожні стани навколо автентифікації моделі, стану Gateway і налаштування Plugin.
- Видаліть або вимкніть мертві елементи інтерфейсу там, де жодна дія неможлива.
- Зберігайте важливі дії видимими на різних адаптивних ширинах замість того, щоб ховати їх за крихкими припущеннями макета.
- Уніфікуйте повторювані формулювання статусу, щоб помилки мали єдине джерело істини.
- Додайте поступове розкриття для розширених налаштувань, зберігаючи швидке базове налаштування.
- Ручна перевірка щасливого шляху для першого запуску та запуску для наявного користувача.
- Точкові тести для будь-якої логіки маршрутизації, збереження конфігурації або виведення статусу.
- Знімки екрана в браузері для змінених адаптивних поверхонь.
Етап 3: Уточнення архітектури фронтенду
Покращуйте підтримуваність без масштабного переписування.- Перенесіть повторювані перетворення стану UI у вузькі типізовані допоміжні функції.
- Чітко розділяйте відповідальність за отримання даних, збереження та представлення.
- Віддавайте перевагу наявним хукам, сховищам і шаблонам компонентів замість нових абстракцій.
- Розділяйте надто великі компоненти лише тоді, коли це зменшує зв’язність або прояснює тести.
- Уникайте впровадження широкого глобального стану для локальних взаємодій у панелях.
- Не змінюйте публічну поведінку як побічний ефект поділу файлів.
- Зберігайте незмінною поведінку доступності для меню, діалогів, вкладок і клавіатурної навігації.
- Перевіряйте, що стани завантаження, порожнього вмісту, помилки та оптимістичного оновлення як і раніше відображаються.
Етап 4: Продуктивність і надійність
Орієнтуйтеся на виміряний біль, а не на загальну теоретичну оптимізацію.- Вимірюйте витрати запуску, переходів між маршрутами, великих списків і транскрипту чату.
- Замінюйте повторювані дорогі похідні дані на мемоізовані селектори або кешовані допоміжні функції там, де профілювання доводить користь.
- Зменшуйте зайві сканування мережі або файлової системи на гарячих шляхах.
- Зберігайте детермінований порядок для введень prompt, реєстру, файлів, Plugin і мережі перед побудовою payload моделі.
- Додавайте легкі регресійні тести для гарячих допоміжних функцій і меж контрактів.
- Для кожної зміни продуктивності зафіксовано базовий рівень, очікуваний вплив, фактичний вплив і залишковий розрив.
- Жоден патч продуктивності не впроваджується лише на інтуїції, якщо доступне дешеве вимірювання.
Етап 5: Посилення типів, контрактів і тестів
Підвищуйте коректність у точках межі, від яких залежать користувачі та автори Plugin.- Замінюйте вільні рядки часу виконання на дискриміновані об’єднання або закриті списки кодів.
- Валідуйте зовнішні входи наявними допоміжними засобами схем або zod.
- Додавайте контрактні тести навколо маніфестів Plugin, каталогів провайдерів, повідомлень протоколу Gateway і поведінки міграції конфігурації.
- Зберігайте шляхи сумісності у потоках doctor або repair замість прихованих міграцій під час запуску.
- Уникайте зв’язування тестів із внутрішніми деталями Plugin; використовуйте фасади SDK і задокументовані barrel-експорти.
pnpm check:changed- Цільові тести для кожної зміненої межі.
pnpm build, коли змінюються ліниві межі, пакування або опубліковані поверхні.
Етап 6: Документація та готовність до релізу
Підтримуйте узгодженість користувацької документації з поведінкою.- Оновлюйте документацію разом зі змінами поведінки, API, конфігурації, онбордингу або Plugin.
- Додавайте записи до changelog лише для змін, видимих користувачу.
- Зберігайте термінологію Plugin у користувацькому формулюванні; використовуйте внутрішні назви пакетів лише там, де це потрібно для контриб’юторів.
- Підтверджуйте, що інструкції з релізу та встановлення все ще відповідають поточній поверхні команд.
- Відповідну документацію оновлено в тій самій гілці, що й зміни поведінки.
- Перевірки згенерованої документації або розбіжностей API проходять, якщо ці поверхні зачеплено.
- У передачі роботи вказано, яку валідацію було пропущено і чому.
Рекомендований перший зріз
Почніть зі сфокусованого проходу по Control UI і онбордингу:- Проведіть аудит першого налаштування, готовності автентифікації провайдера, статусу Gateway і поверхонь налаштування Plugin.
- Приберіть мертві дії та проясніть стани збоїв.
- Додайте або оновіть точкові тести для виведення статусу та збереження конфігурації.
- Запустіть
pnpm check:changed.
Оновлення навички фронтенду
Використовуйте цей розділ для оновлення фронтенд-орієнтованогоSKILL.md, наданого разом із
завданням модернізації. Якщо ви впроваджуєте ці настанови як локальну для репозиторію навичку OpenClaw,
спочатку створіть .agents/skills/openclaw-frontend/SKILL.md, збережіть frontmatter,
який належить цій цільовій навичці, а потім додайте або замініть вміст body таким
контентом.