From 9b54e3dcfe2845ba4cfeeab5965d2da1fd6a6f75 Mon Sep 17 00:00:00 2001 From: Markus Fritsche Date: Fri, 24 Apr 2026 19:03:28 +0000 Subject: [PATCH] Upstreaming policy: upstream-first with ideological-fork fallback --- README.md | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/README.md b/README.md index d103560..65a7189 100644 --- a/README.md +++ b/README.md @@ -207,6 +207,30 @@ Out of scope: rkmpp-based FFmpeg (Path B). Boltzmann stays on rkr* until Neutron migrates; that host doesn't need a marfrit-packages entry until migration. +## Upstreaming policy + +**Default: upstream-first.** Anything generic (FFmpeg v4l2-request polish, +GStreamer fixes, linux-media DT nodes for rkvdec2 / VDPU346 on RK356x, +kernel compatible-string additions) goes to the relevant maintainer list +(`ffmpeg-devel`, `linux-media`, `linux-rockchip`, `gstreamer-devel`, +gitlab.fd.o) — not to marfrit-packages as a downstream carrier. + +**Fallback: when upstream ideology blocks success**, stop fighting the +review. Mark the patch `# NOT FOR UPSTREAM`, carry it in marfrit-packages, +and document it in this README under a "fleet-local patches" section. The +stance then becomes: *Markus has the only devices in the world which are +hardware-decoding-capable, and whoever wants to follow should get a Claude +plan*. Fleet keeps working; replication path is reproducible; no energy +burnt arguing with maintainers who won't merge. + +The bar for switching: a concrete rejection on ideological grounds (licensing +stance, design-religion, NIH), not a normal review cycle. Normal review +friction — respin until it lands. + +Known RockHard precedent for downstream-only: the `GCC_PLUGINS` patch +(`project_linux_rk3588.md`). Tag new carrier-only patches the same way for +consistency. + ## Working agreements Standing rules for how we run this project — inherited from the broader