R1.1: Buchungs-Gate geprueft + safe-by-default; Legacy-Buchungspfade festgeschrieben
Default von billing.enforce_booking auf true gedreht: ein in Produktion vergessener Env-Key haette das Gate sonst still geoeffnet (jeder haette ohne Zahlung veroeffentlichen koennen). Tests ergaenzt: Grandfathered gueltig/abgelaufen/NULL (= abgelaufen, Entscheidung 19.06.), Active ausserhalb der Periode, Service-Level-Submit mit Legacy-Buchung und BookingRequiredException ohne Buchung. Scope-Logik selbst war korrekt. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
c3db80c651
commit
ad2879daa4
4 changed files with 109 additions and 9 deletions
10
.env.example
10
.env.example
|
|
@ -79,8 +79,8 @@ GOOGLE_CLIENT_ID=
|
|||
GOOGLE_CLIENT_SECRET=
|
||||
GOOGLE_REDIRECT_URI=https://pressekonto.com/auth/google/callback
|
||||
|
||||
# Abo-/Bestandsschutz-Gate (WS-5). Ist der Schalter aus, darf jeder einreichen
|
||||
# (Dev-Default). Für den Launch auf true setzen: Einreichen zur Prüfung erfordert
|
||||
# dann ein aktives Abo, einen bezahlten Einzelkauf oder Bestandsschutz
|
||||
# (grandfathered). Siehe User::hasActiveBooking().
|
||||
BILLING_ENFORCE_BOOKING=false
|
||||
# Abo-/Bestandsschutz-Gate (WS-5). Default (auch ohne Env-Key) ist true:
|
||||
# Einreichen zur Prüfung erfordert ein aktives Abo, einen bezahlten Einzelkauf
|
||||
# oder Bestandsschutz (grandfathered) — siehe User::hasActiveBooking().
|
||||
# Nur für lokale Entwicklung bewusst auf false setzen (Gate offen für alle).
|
||||
BILLING_ENFORCE_BOOKING=true
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue