Der ROOT jedes Branches steht in der **ROOT-Tabelle in dieser `CLAUDE.md`** (Abschnitt „Branch-Hierarchie"). **Vor jedem Rebase dort nachschlagen** — nicht in `BRANCHES.sh` greifen, da die Tabelle hier bereits vollständig und geprüft ist.
-Als Gegencheck lässt sich der ROOT auch aus dem `--claude-N`-Tag ableiten:
+Als Gegencheck lässt sich der ROOT auch aus dem Branch-HEAD ableiten:
```bash
-git log --oneline -3 <branch>--claude-N
+git log --oneline -3 <branch>
# Die letzten Commits zeigen, welcher Eltern-Branch vorausgeht
```
### Rebase-Strategie nach Branch-Typ
-Alle Rebases erfolgen mit `git rebase -i <ROOT>--claude-N`, nachdem der Branch auf den neuen Stand des ROOT zurückgesetzt wurde:
+**Immer direkt mit den Branch-HEADs arbeiten** — nicht mit `--claude-N`-Tags als Checkout- oder Rebase-Basis. Tags sind nur Snapshots für Vergleich und Rollback, keine Navigationspunkte im Workflow.
+
+Branches werden in der Reihenfolge verarbeitet, in der sie in der ROOT-Tabelle voneinander abhängen — ROOT-Branches zuerst, Downstream-Branches danach. So ist beim Rebase eines Branches dessen ROOT bereits auf dem aktuellen Stand.
```bash
-git checkout -B <branch> <ROOT>--claude-N
-git rebase -i <ROOT>--claude-N # oder: git rebase -i HEAD (da HEAD = ROOT)
+git checkout <branch>
+git rebase -i <ROOT> # <ROOT> ist der aktuelle HEAD des ROOT-Branches
```
Im interaktiven Editor zeigt Git alle Commits des Branches. Im Normalfall werden alle Commits mit `pick` übernommen. Bei Konflikten:
**Nach dem Rebase: Ergebnis verifizieren.** Die eindeutigen Commits müssen mit `--claude-0` übereinstimmen:
```bash
-git log --oneline <branch>--claude-N ^<ROOT>--claude-N
+git log --oneline <branch> ^<ROOT>
# muss dieselben Commit-Beschreibungen zeigen wie:
git log --oneline <branch>--claude-0 ^<ROOT>--claude-0
```