Projektstand und Übersicht (Stand 2026-10-16) #34

Open
opened 2026-10-16 05:59:35 +00:00 by Nick.Rosenloecher · 0 comments
Owner

Zweck

Wabenhain ist die Website und der Online-Shop der Imkerei Wabenhain in Altenmünster: Honig, Kerzen und Propolis mit Herkunftsnachweis je Charge (QR-Code auf dem Glas), Kundenkonto, Firmenkunden-Anfragen und Honigwissen. Der Shop ist mit ApiCore (Imkereiverwaltung, führend für Ernten, Chargen und Bestand) und ERPNext (Buchhaltung und CRM) verknüpft.

Architektur

  • Next.js 16 (App Router) mit React 19, TypeScript, Tailwind CSS 4, Motion; Server Actions und API-Routen in einem Monolithen
  • Prisma 7 mit PostgreSQL (im Cluster) oder wahlweise MySQL, beide Clients in einem Image
  • Stripe (eingebetteter Checkout, Webhooks), Microsoft 365 (Mail per OAuth, Entra-Anmeldung), DHL, Cloudflare Turnstile, Google Places
  • Schnittstellen: ApiCore-Sync und Bestandsabgleich (/api/apicore/webhook, Skript stock:apicore-sync), ERPNext-Export (/api/erp/…, nur lesend mit Token)
  • Betrieb im RKE2-Cluster, Namespace wabenhain: Deployment wabenhain-app (1 Replica, Recreate), StatefulSet Postgres, SMB-Volumes auf der Storage Box mit seal, Traefik-Ingress hinter Cloudflare (cloudflare-only)
  • Gitea-CI: lint, audit, typecheck, test, dann Images wabenhain und wabenhain-tools; Rollout von Hand per kubectl set image

Bereiche

Erledigt (geschlossen):

Teilweise erledigt bzw. in Arbeit:

  • Rechtstexte und Compliance (anwaltliche Prüfung offen) #17
  • Bestandsabgleich mit ApiCore (Secret, Webhook, CronJob fehlen) #18
  • ERPNext-Schnittstelle (Token fehlt) #19
  • Datensicherung (Wiederherstellungstest, zweiter Ort) #21
  • Lokale Änderung am Backup-Manifest #22
  • Bienenpatenschaft (Session vs-code-48, noch keine Commits) #31
  • Doku-Abgleich 2026-10-16 #32

Offen:

Aufgaben des Inhabers: #33

Rollout-Stand

  • Produktiv: Build sha-0d254db (Client-IP-Härtung, 2026-10-12, live seit 2026-10-13 laut Memory, bestätigt per Cluster-Abfrage 2026-10-16). Enthält alles bis einschließlich 0d254db.
  • Gebaut, nicht ausgerollt: sha-35e7c84 (Abhängigkeits-Updates, Qualitäts-Gate), CI-Lauf 77 grün.
  • Im Cluster: wabenhain-db-backup läuft täglich erfolgreich; wabenhain-release-stale-orders und wabenhain-apicore-stock ausgesetzt.
  • Branches: nur main auf dem Server; der lokale Branch seo/indexierung-und-bildformate ist vollständig gemergt. Keine Pull Requests.

Doku

  • README.md (Funktionen, Stripe, Rechnungen, ApiCore, Sicherheit, Projektstand)
  • docs/EINRICHTUNG.md (Secrets, Entra, Microsoft 365, Stripe, Ausrollen, Prüfen, Wartung)
  • k8s/README.md (Manifeste, Redeploy, Uploads, Video, Sicherung und Wiederherstellung)
  • docs/superpowers/specs/2026-09-22-versandstaffel-je-kategorie-design.md
  • .env.example, k8s/02-secret.example.yaml, k8s/01-configmap.yaml

Status

Stand: 2026-10-16 (Quelle: git origin/main 35e7c84, Cluster-Abfrage nur lesend am 2026-10-16, Session-Status, Memory)

## Zweck Wabenhain ist die Website und der Online-Shop der Imkerei Wabenhain in Altenmünster: Honig, Kerzen und Propolis mit Herkunftsnachweis je Charge (QR-Code auf dem Glas), Kundenkonto, Firmenkunden-Anfragen und Honigwissen. Der Shop ist mit ApiCore (Imkereiverwaltung, führend für Ernten, Chargen und Bestand) und ERPNext (Buchhaltung und CRM) verknüpft. ## Architektur - Next.js 16 (App Router) mit React 19, TypeScript, Tailwind CSS 4, Motion; Server Actions und API-Routen in einem Monolithen - Prisma 7 mit PostgreSQL (im Cluster) oder wahlweise MySQL, beide Clients in einem Image - Stripe (eingebetteter Checkout, Webhooks), Microsoft 365 (Mail per OAuth, Entra-Anmeldung), DHL, Cloudflare Turnstile, Google Places - Schnittstellen: ApiCore-Sync und Bestandsabgleich (`/api/apicore/webhook`, Skript `stock:apicore-sync`), ERPNext-Export (`/api/erp/…`, nur lesend mit Token) - Betrieb im RKE2-Cluster, Namespace `wabenhain`: Deployment `wabenhain-app` (1 Replica, Recreate), StatefulSet Postgres, SMB-Volumes auf der Storage Box mit `seal`, Traefik-Ingress hinter Cloudflare (`cloudflare-only`) - Gitea-CI: lint, audit, typecheck, test, dann Images `wabenhain` und `wabenhain-tools`; Rollout von Hand per `kubectl set image` ## Bereiche Erledigt (geschlossen): - [x] Shop-Grundfunktionen #1 - [x] Kundenkonto und Anmeldung #2 - [x] Admin-Arbeitsbereich #3 - [x] Zahlungen über Stripe #4 - [x] Rechnungen und E-Rechnung #5 - [x] Versand und DHL #6 - [x] E-Mail-Versand Microsoft 365 #7 - [x] Sicherheitshärtung #8 - [x] Gestaltung im Wabenstil #9 - [x] Barrierefreiheit und Performance #10 - [x] Uploads und Medien #11 - [x] Inhalte und Markenseiten #12 - [x] SEO #13 - [x] ApiCore-Synchronisierung #14 - [x] Build, CI und Deployment #15 Teilweise erledigt bzw. in Arbeit: - [ ] Rechtstexte und Compliance (anwaltliche Prüfung offen) #17 - [ ] Bestandsabgleich mit ApiCore (Secret, Webhook, CronJob fehlen) #18 - [ ] ERPNext-Schnittstelle (Token fehlt) #19 - [ ] Datensicherung (Wiederherstellungstest, zweiter Ort) #21 - [ ] Lokale Änderung am Backup-Manifest #22 - [ ] Bienenpatenschaft (Session vs-code-48, noch keine Commits) #31 - [ ] Doku-Abgleich 2026-10-16 #32 Offen: - [ ] Rollout main sha-35e7c84 #20 - [ ] Ausgesetzte CronJobs #23 - [ ] Steuersatz SONSTIGES fehlt im Cluster (Bug) #24 - [ ] Versandstaffel je Kategorie (Spec freigegeben) #16 - [ ] Repo/Cluster-Abweichungen #25 - [ ] preflight im Cluster #26 - [ ] E2E-Tests in der CI #27 - [ ] `.impeccable/` im Arbeitsbaum #28 - [ ] Instagram-Autopilot (wartet auf Freigabe) #29 - [ ] Microservice-Umbau (Entscheidung offen) #30 Aufgaben des Inhabers: #33 ## Rollout-Stand - Produktiv: Build `sha-0d254db` (Client-IP-Härtung, 2026-10-12, live seit 2026-10-13 laut Memory, bestätigt per Cluster-Abfrage 2026-10-16). Enthält alles bis einschließlich `0d254db`. - Gebaut, nicht ausgerollt: `sha-35e7c84` (Abhängigkeits-Updates, Qualitäts-Gate), CI-Lauf 77 grün. - Im Cluster: `wabenhain-db-backup` läuft täglich erfolgreich; `wabenhain-release-stale-orders` und `wabenhain-apicore-stock` ausgesetzt. - Branches: nur `main` auf dem Server; der lokale Branch `seo/indexierung-und-bildformate` ist vollständig gemergt. Keine Pull Requests. ## Doku - `README.md` (Funktionen, Stripe, Rechnungen, ApiCore, Sicherheit, Projektstand) - `docs/EINRICHTUNG.md` (Secrets, Entra, Microsoft 365, Stripe, Ausrollen, Prüfen, Wartung) - `k8s/README.md` (Manifeste, Redeploy, Uploads, Video, Sicherung und Wiederherstellung) - `docs/superpowers/specs/2026-09-22-versandstaffel-je-kategorie-design.md` - `.env.example`, `k8s/02-secret.example.yaml`, `k8s/01-configmap.yaml` ## Status Stand: 2026-10-16 (Quelle: git origin/main 35e7c84, Cluster-Abfrage nur lesend am 2026-10-16, Session-Status, Memory)
Nick.Rosenloecher added the status/in-arbeitprio/hochart/doku labels 2026-10-16 05:59:35 +00:00
Nick.Rosenloecher pinned this 2026-10-16 05:59:39 +00:00
Sign in to join this conversation.