Files
f7_talk/F7-PARITY.md
glb_adm e026bcbaa5
Type checking / changes (push) Has been cancelled
Type checking / test (push) Has been cancelled
Type checking / typescript-summary (push) Has been cancelled
Node tests / changes (push) Has been cancelled
Node tests / test (push) Has been cancelled
Node tests / test-summary (push) Has been cancelled
release 22.0.12-f7.1: ядро-паритет с glb
- Listener.php: форс ru для push больших звонков (единственная функц. правка ядра на glb),
  инкорпорирован в форк с пометкой о конфликте с З5 (мультиязычность) → вынести в config с dev-f7.
- appinfo version 22.0.12.1 (= f7.1; NC требует числовую версию).
- F7-PARITY.md: полный разбор слоёв (ядро=наше / брендинг=dev-f7 downstream), рецепт сборки glb-артефакта.
Брендинг (l10n/img/css/namespace/строки) НЕ в форке — зона dev-f7, применяется downstream.
2026-07-06 16:44:43 +00:00

2.9 KiB
Raw Permalink Blame History

Паритет форка f7_talk с боевым glb.f7cloud.ru

Полный разбор: установленный на glb spreed = сток 22.0.12 + ДВА слоя.

Слой 1 — ядро (НАШ, в форке)

Единственная функциональная правка PHP-ядра поверх стока:

  • lib/Notification/Listener.php — форс языка push-уведомлений больших звонков (ru). Инкорпорирован в форк (коммит f7.1). ⚠️ хардкод ru теряет per-user язык и конфликтует с задачей мультиязычности З5 → кандидат вынести в config, согласование с dev-f7.

Всё остальное ядро (lib/, templates/, appinfo/, composer) — байт-в-байт сток. JS собирается из исходников воспроизводимо (BUILD-f7.md).

Слой 2 — брендинг (ЗОНА dev-f7, НЕ в форке)

Пост-сборочные/пост-установочные преобразования артефакта (generalize/theme-конвейер dev-f7):

  • l10n/* (110 файлов): строки Nextcloud→F7cloud, docs-URL;
  • img/* (27): фавиконки/иконки бренда;
  • css/talk-main.css: одна @media-правка;
  • namespace в собранных JS: http://nextcloud.com/nshttps://f7cloud.ru/ns (приходит из зависимости, заменяется в бандле ПОСЛЕ сборки);
  • бренд-строки в JS (видимый текст), НО НЕ внутренние идентификаторы (напр. cookie _nextcloudCsrfTokenReloaded на glb СОХРАНЁН) — трансформация ХИРУРГИЧЕСКАЯ.

Точные правила этого слоя — в репозитории dev-f7 (не реконструирую: их зона). Для полного glb-идентичного артефакта слой 2 применяется к сборке форка downstream.

Итог: как собрать glb-идентичный артефакт

1. npm ci && npm run build            (форк → сток-эквивалентный js)      [dev-conf]
2. Listener.php-патч уже в форке        (f7.1)                            [dev-conf]
3. брендинг-трансформ dev-f7 на артефакт (l10n/img/css/ns/строки)         [dev-f7]  ← НУЖНО от dev-f7
4. упаковка + подпись + публикация в App Store                            [dev-appstore]

Открытый вопрос к dev-f7: слой 2 остаётся вашим пост-шагом на артефакте форка, или переносим в пайплайн форка отдельным коммитом-слоем? (письмо отправлено). До ответа форк = ядро-паритет с glb.