Skip to content

Security-Review weicht ohne Guthaben auf ein zweites Konto aus - #33

Merged
Musiker15 merged 1 commit into
mainfrom
security-review-zweites-konto
Oct 10, 2026
Merged

Musiker15 merged 1 commit into
mainfrom
security-review-zweites-konto

Conversation

@Musiker15

Copy link
Copy Markdown
Member

Das Security-Review läuft über das API-Guthaben eines Kontos. Ist es aufgebraucht, endete das Review bisher ohne Bericht, und jeder PR wartete auf Moritz. Jetzt steht ein zweites Konto dahinter, angemeldet wie das erste über Workload Identity Federation, ohne gespeicherten Schlüssel. Gewünscht von Moritz am 10.10.2026.

Was sich ändert

  • Neue Variablen der Organisation ANTHROPIC_FALLBACK_FEDERATION_RULE_ID, ANTHROPIC_FALLBACK_ORGANIZATION_ID, ANTHROPIC_FALLBACK_SERVICE_ACCOUNT_ID und ANTHROPIC_FALLBACK_WORKSPACE_ID (schon gesetzt). Fehlen sie, bleibt alles wie bisher.
  • Der Schritt "Review mit Claude Code" ruft Claude Code über eine Funktion auf. Endet der erste Lauf, weil das Konto kein Guthaben mehr hat, holt er ein frisches Identity-Token und läuft noch einmal mit den IDs des zweiten Kontos, in einem eigenen Konfigurationsverzeichnis.
  • Als "kein Guthaben" zählt nur ein Fehlerereignis im Stream: das Ereignis mit error: "billing_error", das Claude Code bei "Credit balance is too low" schreibt, oder ein Ergebnis mit is_error, dessen Text das Guthaben oder das Ausgabelimit des Workspace nennt ("specified API usage limits"). Text des Agenten zählt nicht, ein erfolgreicher Lauf auch dann nicht. Jeder andere Fehler wechselt das Konto nicht.
  • Im Log steht, wann das zweite Konto einspringt und wenn auch dieses kein Guthaben mehr hat.

Sandbox, Rechte und Bericht bleiben, wie sie sind. Die Aufrufe in den Repositories werden danach auf den Commit dieses PRs gehoben, zusammen mit #32.

Geprüft

  • YAML lädt, die Textprüfungen der CI.
  • Wie Claude Code fehlendes Guthaben meldet, ist im ausgelieferten Programm nachgelesen: eine Nachricht "Credit balance is too low" mit error: "billing_error".
  • Testlauf an Prüfzweig: Security-Review mit zweitem Konto (wird nicht gemergt) opengewerk-kanzlei#49 mit einem Prüfcommit, der den ersten Lauf durch genau diese Ereignisse ersetzt (Lauf 38070892726). Die Erkennung schlug an ("Das erste Konto hat kein Guthaben mehr, das Review läuft mit dem zweiten."), das zweite Konto machte ein vollständiges Review (Exit 0, 0,10 USD, 6 Züge), und nach diesem erfolgreichen Lauf meldete dieselbe Erkennung kein fehlendes Guthaben. Das Review verlangte dort Änderungen, weil der Aufruf auf einen Prüfcommit zeigte; damit ist auch Security-Review gibt frei oder verlangt Änderungen #32 an einem echten PR gesehen.

@Musiker15
Musiker15 merged commit 10111be into main Oct 10, 2026
5 checks passed
Musiker15 added a commit to opengewerk/opengewerk-api-spec that referenced this pull request Oct 10, 2026
)

Hebt den Aufruf des Security-Reviews auf den Stand von
opengewerk/.github#32, #33 und #34. Entschieden von Moritz am
10.10.2026.

## Was sich ändert

- **Freigabe oder Änderungen verlangen** (opengewerk/.github#32): Das
Review wird wieder als Review am PR gepostet, wie beim lokalen Reviewer.
Mit Befund oder unklarem Ergebnis verlangt es Änderungen. Ohne Befund
gibt es den PR eines Mitglieds frei. Ein PR von außen bekommt ohne
Befund nur einen Kommentar, weil über ihn ein Modell urteilt, das Text
aus dem PR lenken kann. Möglich ist das durch die Einstellung der
Organisation, dass GitHub Actions PRs freigeben darf.
- **Zweites Konto** (opengewerk/.github#33): Ist das API-Guthaben des
ersten Kontos aufgebraucht, läuft das Review noch einmal mit einem
zweiten Konto. Auch das zweite meldet sich über Workload Identity
Federation an, ohne gespeicherten Schlüssel.
- **Nachweis eines neuen Pins** (opengewerk/.github#34): Hebt ein PR
diesen Aufruf an, holt der Workflow vor dem Review aus dem öffentlichen
Repository, ob der neue Commit auf `main` liegt, die Commits dazwischen
und den Diff der Workflow-Datei. Im ersten Lauf dieses PRs blieb der
neue Commit in drei von fünf Repositories ein offener Prüfpunkt, weil
die Sandbox GitHub nicht erreicht.
- `CHANGELOG.md` unter "Geändert", wo es eines gibt.

## Geprüft

- Die drei Textprüfungen der CI.
- Beides an opengewerk/opengewerk-kanzlei#49 mit einem Prüfcommit, der
ein erstes Konto ohne Guthaben nachstellte: Das zweite Konto machte das
Review, und das Review verlangte Änderungen.
- Dieser PR kommt aus einem Branch des Repositorys. Auf ihm läuft also
schon das Review des neuen Stands, mit dem Nachweis seines eigenen Pins,
und ohne Befund gibt es ihn frei.
Musiker15 added a commit to opengewerk/opengewerk-kanzlei that referenced this pull request Oct 10, 2026
)

Hebt den Aufruf des Security-Reviews auf den Stand von
opengewerk/.github#32, #33 und #34. Entschieden von Moritz am
10.10.2026.

## Was sich ändert

- **Freigabe oder Änderungen verlangen** (opengewerk/.github#32): Das
Review wird wieder als Review am PR gepostet, wie beim lokalen Reviewer.
Mit Befund oder unklarem Ergebnis verlangt es Änderungen. Ohne Befund
gibt es den PR eines Mitglieds frei. Ein PR von außen bekommt ohne
Befund nur einen Kommentar, weil über ihn ein Modell urteilt, das Text
aus dem PR lenken kann. Möglich ist das durch die Einstellung der
Organisation, dass GitHub Actions PRs freigeben darf.
- **Zweites Konto** (opengewerk/.github#33): Ist das API-Guthaben des
ersten Kontos aufgebraucht, läuft das Review noch einmal mit einem
zweiten Konto. Auch das zweite meldet sich über Workload Identity
Federation an, ohne gespeicherten Schlüssel.
- **Nachweis eines neuen Pins** (opengewerk/.github#34): Hebt ein PR
diesen Aufruf an, holt der Workflow vor dem Review aus dem öffentlichen
Repository, ob der neue Commit auf `main` liegt, die Commits dazwischen
und den Diff der Workflow-Datei. Im ersten Lauf dieses PRs blieb der
neue Commit in drei von fünf Repositories ein offener Prüfpunkt, weil
die Sandbox GitHub nicht erreicht.
- `CHANGELOG.md` unter "Geändert", wo es eines gibt.

## Geprüft

- Die drei Textprüfungen der CI.
- Beides an #49 mit einem Prüfcommit, der
ein erstes Konto ohne Guthaben nachstellte: Das zweite Konto machte das
Review, und das Review verlangte Änderungen.
- Dieser PR kommt aus einem Branch des Repositorys. Auf ihm läuft also
schon das Review des neuen Stands, mit dem Nachweis seines eigenen Pins,
und ohne Befund gibt es ihn frei.
Musiker15 added a commit to opengewerk/opengewerk that referenced this pull request Oct 10, 2026
…589)

Hebt den Aufruf des Security-Reviews auf den Stand von
opengewerk/.github#32, #33 und #34. Entschieden von Moritz am
10.10.2026.

## Was sich ändert

- **Freigabe oder Änderungen verlangen** (opengewerk/.github#32): Das
Review wird wieder als Review am PR gepostet, wie beim lokalen Reviewer.
Mit Befund oder unklarem Ergebnis verlangt es Änderungen. Ohne Befund
gibt es den PR eines Mitglieds frei. Ein PR von außen bekommt ohne
Befund nur einen Kommentar, weil über ihn ein Modell urteilt, das Text
aus dem PR lenken kann. Möglich ist das durch die Einstellung der
Organisation, dass GitHub Actions PRs freigeben darf.
- **Zweites Konto** (opengewerk/.github#33): Ist das API-Guthaben des
ersten Kontos aufgebraucht, läuft das Review noch einmal mit einem
zweiten Konto. Auch das zweite meldet sich über Workload Identity
Federation an, ohne gespeicherten Schlüssel.
- **Nachweis eines neuen Pins** (opengewerk/.github#34): Hebt ein PR
diesen Aufruf an, holt der Workflow vor dem Review aus dem öffentlichen
Repository, ob der neue Commit auf `main` liegt, die Commits dazwischen
und den Diff der Workflow-Datei. Im ersten Lauf dieses PRs blieb der
neue Commit in drei von fünf Repositories ein offener Prüfpunkt, weil
die Sandbox GitHub nicht erreicht.
- `CHANGELOG.md` unter "Geändert", wo es eines gibt.

## Geprüft

- Die drei Textprüfungen der CI.
- Beides an opengewerk/opengewerk-kanzlei#49 mit einem Prüfcommit, der
ein erstes Konto ohne Guthaben nachstellte: Das zweite Konto machte das
Review, und das Review verlangte Änderungen.
- Dieser PR kommt aus einem Branch des Repositorys. Auf ihm läuft also
schon das Review des neuen Stands, mit dem Nachweis seines eigenen Pins,
und ohne Befund gibt es ihn frei.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant