You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -28,42 +28,52 @@ This repository (`openshift/operator-framework-operator-controller`) is OpenShif
28
28
29
29
**Use for:** OpenShift-specific changes to non-generated content that must persist across rebases.
30
30
31
+
**Important:** 99% of carry changes should be in the `openshift/` directory. Code outside `openshift/` should generally be modified upstream and synced downstream.
32
+
31
33
**Examples:**
32
34
```
33
35
UPSTREAM: <carry>: Add OpenShift-specific test for disconnected environments
34
36
UPSTREAM: <carry>: Update OCP catalogs to v4.21
35
37
UPSTREAM: <carry>: Use busybox/httpd to simulate probes
36
38
```
37
39
38
-
**Important:** Creates ongoing maintenance burden. Only use when change cannot go upstream.
40
+
**Note:** Creates ongoing maintenance burden. Only use when change cannot go upstream.
39
41
40
42
### `UPSTREAM: <drop>:`
41
43
42
-
**Use for:** Temporary changes needed ONLY to resolve current failures. Dropped during rebases.
44
+
**Use for:** Temporary commits that will be dropped on the next upstream sync.
43
45
44
-
**When to use:** ONLY when absolutely necessary (e.g., merge conflicts that cannot be resolved by local regeneration).
46
+
**When to use:**
47
+
- Pulling down an upstream fix early before the next scheduled sync
48
+
- Resolving merge conflicts that cannot be fixed by local regeneration
49
+
- Changes that are easier to recreate than rebase/cherry-pick (e.g., removing upstream configuration)
**DO NOT use routinely.** Only use to unblock critical failures.
58
+
**Note:** These commits are dropped during the next sync, so they're temporary by design.
53
59
54
60
### `UPSTREAM: <PR>:`
55
61
56
62
**AI AGENTS: DO NOT CREATE THESE COMMITS.**
57
63
58
-
Automated tooling handles upstream sync. Manual backports are for exceptional maintainer-only cases.
64
+
This prefix is **ALMOST NEVER USED** on the main branch because it creates conflicts on the next upstream sync. The bumper tool automatically synchronizes upstream changes during scheduled rebases.
65
+
66
+
**For urgent fixes:** Use `UPSTREAM: <drop>:` instead to pull the fix early - it will be dropped on the next sync when the real upstream commit comes down.
67
+
68
+
**Note:** Cherry-picking with this prefix may be done on release branches, but since most work is on main, this is extremely uncommon.
59
69
60
70
---
61
71
62
72
## Decision Tree for Changes
63
73
64
74
| Change Type | Action | Commit Prefix | AI Agent Action |
0 commit comments