Files
LumaOps-Public/docs/OPENRGB_UPSTREAM_SYNC.md

68 lines
1.9 KiB
Markdown

# OpenRGB upstream synchroniseren
De repository heeft `origin` voor deze LumaOps-repo en `upstream` voor de officiële OpenRGB GitLab-repository. Tag `upstream-openrgb-1.0rc3` markeert de originele baseline.
Eisen:
- OpenRGB blijft de core hardware-engine en volgt upstream-architectuur.
- Forkwijzigingen blijven minimaal.
- Afwijkingen t.o.v. upstream worden gelogd in [CORE_PATCHES](docs/CORE_PATCHES.md) en [SOURCE_AUDIT](docs/SOURCE_AUDIT.md).
1. Controleer de upstream-remote.
```bash
git remote -v
git fetch --tags upstream
```
2. Maak een onderhoudsbranch.
```bash
git switch -c maintenance/openrgb-VERSIE
```
3. Breng upstream binnen via een gecontroleerde merge.
```bash
git merge --no-commit upstream/master
```
4. Valideer dat alleen geautoriseerde core-bestanden afwijken.
```bash
OPENRGB_BASELINE_TAG=upstream-openrgb-1.0rc3 ./scripts/openrgb-upstream-guard.sh
```
Of op Windows:
```powershell
$env:OPENRGB_BASELINE_TAG="upstream-openrgb-1.0rc3"
.\scripts\openrgb-upstream-guard.ps1
```
Deze controle draait automatisch in CI via:
- `/.github/workflows/openrgb_upstream_compat_guard.yml` op `pull_request` en `push` voor `main`/`master`.
5. Voer daarna de inhoudelijke review uit op:
- `NetworkProtocol.*`
- `NetworkServer.*`
- `PluginManager.*`
- `RGBController.*`
- `SettingsManager.*`
- `ProfileManager.*`
- `cli.*`
- alle controller- en detectorregistraties.
6. Pas de forkpatch (headless stop-handler) opnieuw toe of verwijder hem als upstream dat gedrag inmiddels bevat.
7. Bepaal compatibiliteitstesten:
- compileer OpenRGB-core,
- draai backend/frontendtests,
- bouw de container,
- voer read-only inventarisatie uit op hardware,
- voer daarna minimaal één non-destructieve kleuractie op fysiek apparaat uit.
8. Als stap 4 mislukt, stop en onderzoek de drift direct.
Gebruik nooit een blinde subtree-overschrijving.