- Bottling quality: water content above the legal limit (strict >) answers 409 CONFIRMATION_REQUIRED bound to the measured value; prefill for jar size, best-before (shelfLifeMonths, month-end clamping) and water content; impossible dates give 400; water-content checks in src/common/quality. - Frontend phenology: "Entwicklung melden" sheet, IndexedDB v4 queue, season header on the apiary page, confirmed revoke for all apiaries. - Frontend honey chain: "Vorschlag aus …" hints with explicit take-over, prefill status note, movement ledger with withdraw/correct dialogs. - Telegram: link tokens (hashed, single use), private-chat receiver with lease and offset CAS, bounded poison-update skip, Retry-After, pending deliveries skipped on disconnect; system API for deliveries and retry; worker-only secret wiring and manifest policy tests. - ARCHITECTURE.md §7, §9, §10, §11.11–11.13, Annahmen 51–55. Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
29 lines
1.6 KiB
YAML
29 lines
1.6 KiB
YAML
# Werte fuer den Cluster. Bedeutung der Schluessel:
|
|
# base/backend/configmap.example.yaml. Hosts und Tenant sind Platzhalter,
|
|
# Runbook Schritt 1 uebernimmt die Live-Werte. Geheimes gehoert ins Secret
|
|
# apicore-backend-secret, nie hierher.
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: apicore-backend-config
|
|
data:
|
|
PORT: "3001"
|
|
JWT_ACCESS_EXPIRES_IN: "15m"
|
|
JWT_REFRESH_EXPIRES_IN: "7d"
|
|
FRONTEND_ORIGIN: "https://apicore.example.com"
|
|
DOCUMENTS_STORAGE_PATH: "/data/documents"
|
|
BACKUP_STORAGE_PATH: "/data/backups"
|
|
BACKUP_CRON_SCHEDULE: "0 3 * * *"
|
|
BACKUP_RETENTION_COUNT: "14"
|
|
COOKIE_SECURE: "true"
|
|
TRUST_PROXY: "loopback, 10.42.0.0/16, 173.245.48.0/20, 103.21.244.0/22, 103.22.200.0/22, 103.31.4.0/22, 141.101.64.0/18, 108.162.192.0/18, 190.93.240.0/20, 188.114.96.0/20, 197.234.240.0/22, 198.41.128.0/17, 162.158.0.0/15, 104.16.0.0/13, 104.24.0.0/14, 172.64.0.0/13, 131.0.72.0/22, 2400:cb00::/32, 2606:4700::/32, 2803:f800::/32, 2405:b500::/32, 2405:8100::/32, 2a06:98c0::/29, 2c0f:f248::/32"
|
|
OIDC_ISSUER_URL: "https://login.microsoftonline.com/<tenant-id>/v2.0"
|
|
OIDC_REDIRECT_URI: "https://api.apicore.example.com/api/v1/auth/sso/callback"
|
|
WEATHER_HISTORY_SOURCE: "open-meteo"
|
|
OPEN_METEO_FORECAST_URL: "https://api.open-meteo.com/v1/forecast"
|
|
OPEN_METEO_ARCHIVE_URL: "https://archive-api.open-meteo.com/v1/archive"
|
|
# Telegram: Name des Bots (ohne @) fuer den Deep Link. Leer, solange der Bot
|
|
# bei BotFather noch nicht angelegt ist (Runbook); dann den Namen eintragen.
|
|
# Das Token liegt im Secret apicore-telegram (nur Worker).
|
|
TELEGRAM_BOT_USERNAME: ""
|