Міжчіпні оновлення
1) Суть завдання і ризики
Міжцепне оновлення - це змінена логіка/схема/протокол, одночасно зачіпає кілька ланцюгів/бриджів/DA-шарів/мікромереж і їх інтерфейси (повідомлення, події цінності, права RNFT). Ризики:- розбіжність версій (split-brain) і втрата порядку/фінальності;
- несумісність ABI/схем → «німі» повідомлення/завислі засоби;
- порушення комплаєнсу (гео/вік/санкції, експорт даних);
- каскадні збої мостів і DA.
Мета - оновлювати без зупинки цінності: зберегти строгі інваріанти і забезпечити оборотність, телеметрію і керовану деградацію.
2) Інваріанти міжчіпних змін
Order/Idempotency: strict-order per key; outbox/inbox,'idempotency _ key'і seen-таблиці.
Finality-aware: вікна challenge/реоргів враховані; маршрути вибираються за мінімальним'FinalityLag'.
Compatibility First: SemVer для контрактів/ABI/схем подій.
Fail-closed: сумнів → блок/ручний кворум.
Compliance-gate: DID/VC, ZK-пороги (вік/гео/санкції), політики експорту/ретенції.
Observability: `x_msg_id`, `route_id`, `bridge_id`, `governance_version`.
3) Модель версіонування
3. 1 Сімейство версій
SemVer контрактів/ABI: `MAJOR. MINOR. PATCH'( MAJOR - ламаючі).
Schema Registry подій: версії та еволюція полів (additive-first, deprecations з sunset).
Policy/Governance версії: ваг/квот/тарифів; у кожного апгрейда є'governance _ version'.
Bridge/DA версії: незалежні канали узгодження та фінальності.
3. 2 Версійна переговорка (handshake)
Version-negotiation: при міжколовому виклику сторони вибирають найменший сумісний профіль; інакше - graceful reject.
Feature-flags: MAJOR-зміни активуються прапорами по вікнах/ролях/регіонах (canary → cohort → global).
4) Таксономія міжцепних оновлень
1. Логічні: нова бізнес-логіка, правила валідації, тарифи/ліміти.
2. Схемні: поля подій, моделі даних, індексація.
3. Протокольні: маршрутизація, сигнатури повідомлень, шифр/підписи.
4. Інфраструктурні: DA/бриджі, секвенсери, POP/edge, Gas/fees.
5. Комплаєнс-політики: регіони, ZK-пороги, експорт/ретеншн.
6. Економіка/стимули: QF, RiskAdj, пули/розподіл.
7. Безпека: ключі/мультисиг, slashing-правила, стоп-крани.
5) Процедури релізу (rollout strategy)
Preflight: симуляції/пісочниці, replay історичного трафіку, golden-set тести.
Shadow/Observe: тіні розраховують відповіді і порівнюються з поточною логікою.
Canary: мала частка маршрутів/ролей/регіонів, суворі алерти.
Cohort rollout: розширення по когорті (гео/ланцюг/QoS).
Dual-write/Dual-read: тимчасовий період запису в дві версії з суворими бар'єрами порядку.
Sunset: авто-відкат часових параметрів, якщо немає кворуму на продовження.
Rollback: одношагове повернення з безпечною міграцією стану (див. § 8).
6) Utility-рішення під час оновлень
Вибір маршруту/мосту/постачальника при активному апгрейді:
Utility(route version) =
wL·Latency_p95 + wQ·QueueDepth + wF·FinalityLag
+ wC·Cost_per_unit + wR·RiskScore + wS·StabilityScore(version)
+ wG·Geo/PolicyPenalty
StabilityScore(version): штраф для нових, поки не пройде soak/chaos.
Профілі ваг - по QoS: Q4 ↑wF, ↑wS; Q1 ↑wC.
Інваріанти: Order ∧ Idempotency ∧ Quotas ∧ Compliance = true.
7) Контракти RNFT: права при апгрейдах
У RNFT для ролей (Operator/Provider/Bridge/DA/Curator/Compliance/Auditor) фіксуються:- `upgrade_rights`: хто ініціює, чиї підписи (мультисиг, k-of-n);
- `freeze/stop`: екстрені стоп-крани і кворуми;
- `quorum & veto`:治理 -процедури (включаючи R-модифікатор за довірою/якістю);
- `escrow/insurance`: покриття інцидентів міграції;
- `sunset`: тимчасові правки прапорів/порогів;
- `finality_windows`: затримки виплат і бридж-вікна на час оновлення.
8) Міграції стану і оборотність
State Delta Journal: міграції ведуть журнал дельт (мерклі-корені, підписи); відкат - застосуванням зворотних дельт.
Replay-бар'єри: для Q3/Q4: стоп → snapshot → reattach; заборонені «спліт-порядки».
Idempotent Upcasters: читання старих записів через перетворювач схем.
Cold/Warm switch: перемикання читачів/письменників у вікні низького навантаження.
Finality Holdback: затримка міжцепних виплат до цільової фінальності.
9) Сумісність: ABI/схеми/повідомлення
ABI: MAJOR зміни - тільки за фіча-прапором; MINOR — additive; PATCH - без логіки.
Події: нові поля -'nullable '/default; видалення - через деприкацію і sunset.
Версії повідомлень: `msg. version','schema _ hash', обов'язковий'compat _ min'.
Перевірка порядку і дедуп: outbox/inbox, seen-таблиці з TTL.
10) Безпека та ключі
Мультисиг/Threshold: ключові апгрейди - тільки через порогові підписи.
Timelocks: вікна на введення MAJOR-змін, щоб аудит/спільнота встигли відреагувати.
ZK-asserts: докази відповідності критичним інваріантам (наприклад, баланс-інваріанти) без розкриття даних.
Key-rotation: план ротації з спадкуванням прав, подвійний підпис у перехідний період.
11) Комплаєнс
Policy Preview: симуляція політики на синтетиці і реальному «тіні-трафіку».
Geo/age/sanctions: ZK-пруфи порогів; при невизначеності - карантин.
Export/retention: DA/egress по регіонах; журнал resheny治理 для регулятора.
Податки/withholding: тимчасові утримання при фінальності мостів.
12) Спостережуваність і алерти
Метрики: p50/p95/p99, retry/timeout, out-of-order/dup, DLQ depth, finality lag, cost/req, stability(version).
Звіти: Upgrade Live, Finality & Bridges, Schema/ABI Health, Governance Queue.
Алерти: error-budget burn, зростання TailAmplification, drift схем, spike відмов комплаєнсу, flap-rate маршрутів.
13) Тести/симуляції/хаос
Unit-контракти: ABI/схеми, правила сумісності.
Trace-replay: прогін історій з інваріант-перевірками.
Fuzz/Property-based: випадкові сценарії повідомлень/порядку/фінальності.
Chaos/Game-day: падіння POP/моста/DA, reorg-бурсти, цінові шоки.
Soak 24–72h: стабільність р95/р99/фінальності/вартості.
14) Економіка апгрейдів
Budget-caps: стелі вартості на період; surge-штрафи при перевантаженні.
QF-бонуси: провайдерам, які витримали SLO у вікні апгрейду.
RiskAdj: тимчасовий понижуючий множник виплат при порушеннях.
Treasury hooks: компенсації зі страхового пулу при підтверджених інцидентах.
15) 治理 (процедури та прозорість)
Пропозали: опис зміни, ризик-аналіз, план відкату, вікна фінальності.
Кворуми/вето: ролі та ваги; R-модифікатор довіри/якості.
Публічність: паспорти версій, diff-логіка, звіти після апгрейду.
Sunset-правки: автоматичний відкат тимчасових налаштувань.
16) KPI міжчіпних оновлень
Надійність: 0 критичних порушень порядку/фінальності; DLQ не зростає.
Затримка: p95/p99 в коридорі; TailAmplification ≤ цільового.
Фінальність: FinalityLag не росте понад бюджет; 0 неправдивих підтверджень.
Економіка: Cost/Req в бюджеті; компенсації ≤ порогу.
Операції: MTTR інцидентів ↓; flap-rate маршрутів не погіршується.
Комплаєнс: 100% проходження gating; 0 порушень експорту/ретенції.
治理: TTC propozala→apruva в SLA; частка sunset-відкатів вчасно.
17) Формули і орієнтири
SuccessRate = 1 − (timeouts+errors)/requests
TailAmplification = p99/p50 (↓)
Headroom = (cap − current)/cap
FinalityScore = f(lag, variance, reorgs)
Stability(version) = 1 − norm(incidents, flap, drift)
QualityFactor (QF) = f(success, p95, DLQ, finality)
SLO (приклад):- Q4: success ≥ 99. 99%, p95 ≤ 200 мс, DLQ = 0, MTTR ≤ 15 хв.
- Bridges/DA: фінальність ≤ 3 × T _ block, reorg≈0.
18) Плейбук впровадження (кроки)
1. Ініціювання: пропозал, ризик-аналіз, план відкату, оцінка фінальності/комплаєнсу.
2. Підготовка: SemVer/ABI, схеми і upcasters, фіча-прапори, RNFT-права/кворуми.
3. Тести: unit/trace-replay/fuzz, policy-preview, ZK-asserts інваріантів.
4. Спостережуваність: панелі/алерти, еталонні пороги KPIs.
5. Shadow → Canary: тіні/порівняння, малі когорти, строгі алерти.
6. Cohort rollout: регіон/ланцюг/QoS поетапно; finality-holdback виплат.
7. Dual-write/read: бар'єри порядку, реплікація і звірка.
8. Soak/Chaos: endurance і відмовні сценарії.
9. Глобалізація: зняття прапорів, оновлення документації/бейджів версії.
10. Пост-мортем: otchet治理, оновлення сигнатур/порогів/гайдів.
19) Чек-лист прод-готовності
- SemVer/ABI и Schema Registry с upcasters
- Фіча-прапори, вікна активації, sunset-параметри
- RNFT-права: кворуми, стоп-крани, ескроу/страховий пул
- Outbox/inbox, idempotency, replay-бар'єри
- Finality-план: вікна бріджів/DA, holdback виплат
- Observability: трасування, панелі Upgrade/Finality/ABI
- Комплаєнс-прев'ю, ZK-пруфи порогів, експорт/ретеншн політики
- Симуляції, shadow, canary, cohort, soak/chaos
- Rollback-план і журнал дельт стану
- Публічний звіт і obnovleniye治理 -реєстрів
20) Глосарій
SemVer/ABI: семантичне версіонування/інтерфейси контрактів.
Upcaster: перетворювач старих записів до нової схеми при читанні.
FinalityLag: вікно до незворотності міжчіпної події.
Outbox/Inbox: гарантована доставка/ідемпотентність.
RNFT: контракт відносин/прав/лімітів і KPI.
Sunset: авто-відкат часових параметрів.
Shadow/Canary/Cohort: поетапні стратегії релізу.
21) Підсумок
Міжцепні оновлення - це керована дисципліна: версії → прапори → поетапний запуск → фінальність/сумісність → спостережуваність → відкат. З суворими інваріантами порядку і комплаєнсу, RNFT-правами, симуляціями і prozrachnoy治理 екосистема оновлюється безболісно і передбачувано, зберігаючи безперервну цінність і довіру учасників.