Commit Graph
100 Commits
Author SHA1 Message Date
ClaudeandClaude Sonnet 5.5 d96d09f589 Kontrolle: Steuernummer steht im Rechnungsfuss der Projektrechnungen
Die Steuernummer aus den Finanz-Einstellungen kommt als Zeile direkt nach dem
§ 19-Satz in den Fuss; ohne Wert bleibt der Fuss unveraendert.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 15:15:56 +00:00
ClaudeandClaude Sonnet 5.5 aad0a8b807 Tests: Wächter der Kundenansicht sperrt auch die Routen der Auftragsbestätigung
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:24:19 +00:00
ClaudeandClaude Sonnet 5.5 d9058ef1a6 Aufträge: Durchlauf-Test über alle Endpunkte (Festbetrag, Aufwand, AB bis Schlussrechnung, Privatperson, Kundenansicht, Schalter)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:23:52 +00:00
ClaudeandClaude Sonnet 5.5 f3b6e00bf7 Merge auftraege/l6-kundenportal: Kundenportal (Strang L6)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:21:18 +00:00
ClaudeandClaude Sonnet 5.5 5d5f6333a4 Merge auftraege/l5-bestaetigung: Bestätigung und Mails (Strang L5)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:21:11 +00:00
ClaudeandClaude Sonnet 5.5 8f53b560d5 Merge auftraege/l7-rechtstexte (ohne Datenschutz-Commit): Rechtstexte (Strang L7)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:20:51 +00:00
ClaudeandClaude Sonnet 5.5 bd12892ed2 Merge auftraege/l4-ab-pdf: Auftragsbestätigung PDF (Strang L4)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:20:45 +00:00
ClaudeandClaude Sonnet 5.5 095694bc44 Merge auftraege/l3-ab-kern: Auftragsbestätigung Kern (Strang L3)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:20:43 +00:00
ClaudeandClaude Sonnet 5.5 e5fc5e2c74 Merge auftraege/l2-rechnungen: Rechnungen (Strang L2)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:20:36 +00:00
ClaudeandClaude Sonnet 5.5 743af802c1 Merge auftraege/l1-projektkonto: Projektkonto (Strang L1)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:20:30 +00:00
ClaudeandClaude Sonnet 5.5 d2c48ab99b Rechnungen: Routen für Projektrechnungen und Vorschau
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:18:36 +00:00
ClaudeandClaude Sonnet 5.5 d990155df9 Kundenportal Aufträge: Playwright-Prüfung mit Bildschirmfotos (Handy 390 px, Desktop 1440 px, dunkel)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:18:23 +00:00
ClaudeandClaude Sonnet 5.5 88a7305e41 Rechnungen: Rechnungsnummer buchen, AB abgerechnet, Storno und Löschen geben frei
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:17:58 +00:00
ClaudeandClaude Sonnet 5.5 ab3e6938da Rechnungen: Sperre je Kunde gegen doppelte Abrechnung (Aufwand, Anzahlung, Schluss)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:17:11 +00:00
ClaudeandClaude Sonnet 5.5 d264f2af5a Rechnungen: Projektrechnungen bei Stripe (Zusatzfelder, A4, Minuszeilen, Projektdatensatz) und Vorschau
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:16:48 +00:00
ClaudeandClaude Sonnet 5.5 3beba876d6 Aufträge L5: Widerruf eines Projektauftrags auf der Widerrufsseite (nur Privatpersonen in der Frist, Nummer optional)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:16:45 +00:00
ClaudeandClaude Sonnet 5.5 60a51c0f68 Widerrufsseite: Vertragsart Projektauftrag mit freiwilliger Nummer der Auftragsbestätigung
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:16:27 +00:00
ClaudeandClaude Sonnet 5.5 e680ea3266 AB-Kern: Admin-Routen zum Senden, Erinnern, für neue Fassungen, zum Stornieren und zum Zuordnen eines Projekts
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:16:09 +00:00
ClaudeandClaude Sonnet 5.5 7d3114d7a3 AB-Kern: Admin-Routen zum Lesen, Anlegen, Ändern, Löschen und für das PDF
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:16:02 +00:00
ClaudeandClaude Sonnet 5.5 c72b252e63 Aufträge L5: K04 und T09 mit Block projekt für den Widerruf eines Projektauftrags
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:16:01 +00:00
ClaudeandClaude Sonnet 5.5 73c5446cf8 Kundenportal Aufträge: Abschnitt im Reiter Rechnungen, Projekt unter der Rechnungsnummer
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:15:56 +00:00
ClaudeandClaude Sonnet 5.5 c116c3cb4f Rechnungen: mapInvoice liefert Projekt, Art und Auftrag
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:15:44 +00:00
ClaudeandClaude Sonnet 5.5 66ec8e0a44 AB-Kern: Projekt nachträglich einer Auftragsbestätigung zuordnen
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:15:37 +00:00
ClaudeandClaude Sonnet 5.5 22a7c8123d Aufträge L5: Test – in der Kundenansicht ist das Bestätigen von Aufträgen gesperrt
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:15:33 +00:00
ClaudeandClaude Sonnet 5.5 b53f9f67ed Kundenportal Aufträge: Abschnitt „Aufträge“ im Portal (Karten, Bestätigen, Ansichtsmodus gesperrt)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:15:29 +00:00
ClaudeandClaude Sonnet 5.5 4f8e956574 Rechnungen: Anzahlung und Schlussrechnung bauen (Minuszeilen, Entwurfsschutz, Selbstheilung)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:15:25 +00:00
ClaudeandClaude Sonnet 5.5 503337d7ae Aufträge L5: Portal-Routen für Aufträge (eigene gesendete ABs, PDF, Bestätigen)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:15:22 +00:00
ClaudeandClaude Sonnet 5.5 c791146af4 AB-Kern: Stornieren versendeter und bestätigter Aufträge
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:15:21 +00:00
ClaudeandClaude Sonnet 5.5 cf87a7e1e0 AB-Kern: Neue Fassung und Ersetzen der alten AB beim Senden
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:15:11 +00:00
ClaudeandClaude Sonnet 5.5 6cb5bfa6c7 Aufträge L5: öffentliche Bestätigung per Link (idempotent, Frühbeginn nur bei Privatpersonen)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:14:59 +00:00
ClaudeandClaude Sonnet 5.5 11531cacb6 Rechnungen: Aufwandsrechnung bauen (Auswahl, Satz aus der AB, Doppelabrechnung, 20 Zeilen)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:14:48 +00:00
ClaudeandClaude Sonnet 5.5 0da5b30119 AB-Kern: Erinnerung mit neuem Token und geprüfter PDF-Datei
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:14:46 +00:00
ClaudeandClaude Sonnet 5.5 aca393d564 Aufträge L5: öffentliche Link-Routen (ansehen, PDF) mit Ratenbegrenzung, Schalter und Statusprüfung
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:14:46 +00:00
ClaudeandClaude Sonnet 5.5 cad9ba7e40 Kundenportal Aufträge: auftrag.html und auftrag.css (noindex, Mail-Stil, Fußzeile, Standalone)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:14:45 +00:00
ClaudeandClaude Sonnet 5.5 c74f7eeea7 AB-Kern: Senden unter Sperre, Fehlerpfade, Dateirest und Mail-Fehler
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:14:29 +00:00
ClaudeandClaude Sonnet 5.5 576a17bfa4 Aufträge L5: Auftrag widerrufen (nur Privatpersonen innerhalb der Frist, unter Sperre)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:14:22 +00:00
ClaudeandClaude Sonnet 5.5 335ac60e54 Aufträge L5: Auftrag bestätigen (idempotent, unter Sperre, Frühbeginn nur bei Privatpersonen)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:14:08 +00:00
ClaudeandClaude Sonnet 5.5 ed7567397d AB-Kern: Senden mit Prüfungen vor der Nummer, Nummer, PDF, Ablage, Token und Mail
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:14:02 +00:00
ClaudeandClaude Sonnet 5.5 38734e99aa Kundenportal Aufträge: Seitenlogik der öffentlichen Bestätigungsseite
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:13:59 +00:00
ClaudeandClaude Sonnet 5.5 b78ca971af Rechnungen: baueRechnung für freie Rechnung und Festbetrag, Testhilfe
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:13:52 +00:00
ClaudeandClaude Sonnet 5.5 3464808a40 AB-PDF: Entwurfs-Kennzeichnung für die Vorschau und Hinweis auf die ersetzte AB
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:13:51 +00:00
ClaudeandClaude Sonnet 5.5 19abac0373 Aufträge L5: Mails zur Auftragsbestätigung (K31 ohne BCC mit Teamkopie ohne Link, K32, T22)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:13:46 +00:00
ClaudeandClaude Sonnet 5.5 3a46210e9c AB-Kern: Vorschau-PDF und austauschbare Abhängigkeiten (deps)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:13:45 +00:00
ClaudeandClaude Sonnet 5.5 6f213dca25 AB-PDF: erzeugeAuftragPdf zeichnet Briefkopf, Tabelle über mehrere Seiten, Belehrung und Fuß mit pdfkit
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:13:34 +00:00
ClaudeandClaude Sonnet 5.5 0fc2eb4516 AB-Kern: Entwürfe anlegen, ändern und löschen
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:13:26 +00:00
ClaudeandClaude Sonnet 5.5 bd87bb115c Kundenportal Aufträge: DOM-Bausteine (Zusammenfassung, Bestätigen mit Häkchen, Sperre)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:13:24 +00:00
ClaudeandClaude Sonnet 5.5 fd189b085d Stripe-Nachbau: Zusatzfelder, Seitengröße und Minuszeilen wie bei Stripe
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:13:17 +00:00
ClaudeandClaude Sonnet 5.5 01406c82e5 AB-PDF: Textleser für PDF-Tests (ToUnicode, nur Node-Bordmittel)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:13:14 +00:00
ClaudeandClaude Sonnet 5.5 f0402a7ea9 Aufträge L5: Mailvorlagen K31 Auftragsbestätigung (mit Teamkopie), K32 Auftrag bestätigt, T22 Hinweis ans Team
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:13:10 +00:00
ClaudeandClaude Sonnet 5.5 f71e3e8345 AB-PDF: Bausteine der Auftragsbestätigung mit Höhen und Zusammenhalt
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:13:02 +00:00
ClaudeandClaude Sonnet 5.5 8e643160ec build-legal-pdfs: Modus auftraege, PDFs und Prüfsummen der Widerrufsbelehrung der Projektaufträge und der AGB
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:12:56 +00:00
ClaudeandClaude Sonnet 5.5 2d91a54e4a Rechnungen: Anzahlung und Schlussrechnung mit Minuszeilen (Positionen)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:12:52 +00:00
ClaudeandClaude Sonnet 5.5 4706f232b5 AB-PDF: Maße und Seitenaufteilung mit wiederholtem Tabellenkopf
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:12:48 +00:00
ClaudeandClaude Sonnet 5.5 ef646f12de AB-Kern: Eingabeprüfung für Auftragsbestätigungen (pruefeEingabe)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:12:47 +00:00
ClaudeandClaude Sonnet 5.5 9fa965521a Projektkonto: Team-Route für das Abzeichen abgerechnet am Arbeitsblatt
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:12:45 +00:00
ClaudeandClaude Sonnet 5.5 846059b455 Projektkonto: Admin-Routen für Konten je Kunde und Detail je Projekt
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:12:40 +00:00
ClaudeandClaude Sonnet 5.5 e6a0fc9acf Kundenportal Aufträge: reine Ansichtslogik (Token, Beträge, Zustände, Status, AB-Nummer)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:12:34 +00:00
ClaudeandClaude Sonnet 5.5 731bc8c05e AB-PDF: Zahlungsplan, Termine, AGB-Satz, Privatperson-Seiten, Fuß und Vorschau in den PDF-Daten
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:12:33 +00:00
ClaudeandClaude Sonnet 5.5 6c1eaf697b Rechnungen: Aufwandszeilen je Tag, Kalenderwochen-Zusammenfassung ab 20 Zeilen
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:12:28 +00:00
ClaudeandClaude Sonnet 5.5 32726fa1c2 Projektkonto: Abzeichen abgerechnet je Ticket (Rechnungsnummer oder Entwurf)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:12:25 +00:00
ClaudeandClaude Sonnet 5.5 aeae17b491 build-legal-html: Satz auftraege für die Widerrufsbelehrung der Projektaufträge und die AGB, beide Seiten erzeugt
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:12:23 +00:00
ClaudeandClaude Sonnet 5.5 7cec85f888 Projektkonto: Detail mit ABs, Rechnungen und offenen Arbeitsblättern
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:12:19 +00:00
ClaudeandClaude Sonnet 5.5 7ad9c12bca AB-PDF: auftragPdfDaten mit Kopf, Anschrift, Positionen und Prüfung der Pflichtangaben
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:12:18 +00:00
ClaudeandClaude Sonnet 5.5 7553253746 Rechnungen: Positionen-Grundlagen (Stundentext, Kalenderwoche, feste Positionen, Prüfung)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:12:07 +00:00
ClaudeandClaude Sonnet 5.5 8032aa67c6 Projektkonto: Konten je Kunde (Projektwahl, Zeitquelle, Zeitwert je Tag, Ohne Projekt, Schalter, Stripe-Ausfall)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:12:01 +00:00
ClaudeandClaude Sonnet 5.5 edccd4d8af AGB-Kopie: Quelle docs/rechtliches/agb.md wortgleich mit der Website (Fassung 2026-09-30), Tests gegen AGB.tsx
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:11:57 +00:00
ClaudeandClaude Sonnet 5.5 b097fedf5a AB-PDF: Zeichen ohne Glyph werden ersetzt statt als Kästchen gedruckt
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:11:54 +00:00
ClaudeandClaude Sonnet 5.5 e3df5383d1 AB-Kern: Nummernvergabe AB-JJJJ-NNNN nach Berliner Jahr
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:11:52 +00:00
ClaudeandClaude Sonnet 5.5 ae6d84b2a4 AB-PDF: Figtree Regular und SemiBold (OFL) mit Schriftlader und Glyphenprüfung
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:11:48 +00:00
ClaudeandClaude Sonnet 5.5 445d234695 Rechtstexte der Aufträge: Endfassung der Textbausteine, Bestätigung, Frühbeginn-Erklärung und Widerrufsbelehrung (Fassung 2026-10-06)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:11:47 +00:00
ClaudeandClaude Sonnet 5.5 cf3e0fd52a Aufträge L5: Bestätigungs-Token (32 Zufallsbytes, nur als Hash gespeichert, 60 Tage gültig)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:11:43 +00:00
ClaudeandClaude Sonnet 5.5 10679ae726 Projektkonto: Stripe-Rechnungen lesen (Liste, Einzellesen fehlender, Ausfall)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:11:41 +00:00
ClaudeandClaude Sonnet 5.5 68ffac24c4 AB-Kern: Testhilfe und Vertragsprüfung der L0-Module
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:11:34 +00:00
ClaudeandClaude Sonnet 5.5 3305371111 Projektkonto: reine Rechenregeln (vereinbart, berechnet, offen, Zeitwert je Tag gerundet, Ohne Projekt)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:11:32 +00:00
ClaudeandClaude Sonnet 5.5 987268e2f0 Kundenportal: Rechnungsliste kennt das Projekt (Feld projekt aus den Stripe-Metadaten)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-07 14:11:30 +00:00
ClaudeandClaude Opus 5.5 8627ed1124 Aufträge: Router-Gerüste und Einbindung in server/index.js und Team-Router
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 14:08:37 +00:00
ClaudeandClaude Opus 5.5 4f467fa9c5 Finanzen: Einstellung Steuernummer für die Auftragsbestätigung
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 14:08:06 +00:00
ClaudeandClaude Opus 5.5 e9e198e53c Aufträge: PDF-Ablage mit Pfadprüfung
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 14:07:32 +00:00
ClaudeandClaude Opus 5.5 98eceaf14c Aufträge: Sichten auf die Auftragsbestätigung (Team, öffentlich, Frühbeginn)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 14:07:15 +00:00
ClaudeandClaude Opus 5.5 47a92811a3 Aufträge: Arbeitsblätter laden, normieren und als abgerechnet erkennen
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 14:06:50 +00:00
ClaudeandClaude Opus 5.5 9cd5ea3038 Aufträge: Speicher der Projektrechnungen
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 14:06:19 +00:00
ClaudeandClaude Opus 5.5 a3db7f310a Aufträge: Speicher der Auftragsbestätigungen
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 14:05:49 +00:00
ClaudeandClaude Opus 5.5 4e4feba4c9 Aufträge: vorläufige Textbausteine der Auftragsbestätigung
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 14:05:02 +00:00
ClaudeandClaude Opus 5.5 004e564479 Aufträge: Setup-Skript für Collections und Zusatzfelder
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 14:04:51 +00:00
ClaudeandClaude Opus 5.5 ddffc7a92d Aufträge: Konfiguration und Pilot-Schalter AUFTRAEGE_ENABLED
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 14:04:48 +00:00
ClaudeandClaude Opus 5.5 0ab3cbbaa3 Aufträge: Appwrite-Schema der Collections auftraege und projektRechnungen
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 14:04:01 +00:00
ClaudeandClaude Opus 5.5 16f08b5ac3 Aufträge: Konstanten und Fehlerklasse (L0)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 14:03:25 +00:00
ClaudeandClaude Opus 5.5 1b5b5b7094 Aufträge: pdfkit und fontkit als Abhängigkeiten, node_modules auch als Symlink ignorieren
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 14:02:50 +00:00
ClaudeandClaude Opus 5.5 9d82fc579f Umsetzungspläne Aufträge und Rechnungen: Übersicht und 12 Strang-Pläne
Parallele Stränge L0–L7 (Portal), W0–W2 (WOMS), Z (Integration und
Kontrolle); Vertragsfragen der Planrunde entschieden (Abschnitt
„Nachträge nach der Planrunde“ in der Übersicht).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 12:49:15 +00:00
ClaudeandClaude Opus 5.5 0bb463eb7d Spezifikation nachgeschärft, Plan-Übersicht mit Verträgen der Stränge
Nachträge aus der Planrunde (Fragment-Link, Teamkopie ohne Link, Schalter
AUFTRAEGE_ENABLED, Projekt später zuordnen, Schlussrechnung bis 40 Zeilen,
zusammengesetzte Sperrschlüssel, Zuständigkeiten).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 12:06:09 +00:00
ClaudeandClaude Opus 5.5 e00b4ae572 Spezifikation: Auftragsbestätigung und projektbezogene Rechnungen
Entwurf aus dem Brainstorming vom 06.10.2026 (Abschnitte im Chat freigegeben):
Projektkonto, Rechnungsarten Anzahlung/Schluss/Aufwand/Festbetrag über Stripe,
Auftragsbestätigung als eigenes PDF mit Bestätigungsklick und Verbraucher-Variante,
zwei Pläne.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 10:03:25 +00:00
ClaudeandClaude Opus 5.5 8814c4aef1 Webshop: fehlendes Stripe-Plattformprofil klar melden statt 'Stripe nicht erreichbar'
Lehnt Stripe die Kontoanlage ab, weil das Connect-Plattformprofil von WEBklar fehlt (oder Connect nicht aktiv ist),
bekommt der Kunde 503 'plattform_nicht_bereit' mit eigenem Du-Text, und das Log nennt die Ursache (ohne Stripe-Text).
Gefunden im Pilot 2026-10-06.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 08:58:20 +00:00
ClaudeandClaude Opus 5.5 50f854ef1c Öffnungszeiten: Datenschutz-Abschnitt heißt 6e (6d ist seit dem Webshop vergeben); Härtungspunkt N13
Entwurf umbenannt (zeiten-datenschutz-6e-entwurf.md), Leistungsbeschreibung, Kanzlei-Fragen,
Livegang-Notiz und Test-Pins ziehen mit. N13: Rückgabe-Marker nach dem Löschen fehlt (vor on).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 06:30:03 +00:00
ClaudeandClaude Opus 5.5 d0691236d5 Öffnungszeiten: Test hält fest, dass ein gescheitertes Löschen der Zeiten den Kunden bis zum nächsten Lauf hält
Seit TP2 bleiben die Abo-Dokumente stehen (held), wenn das Löschen abhängiger Daten scheitert. Der Test für die
Aufbewahrungs-Löschung prüft jetzt auch für die Zeiten: held nennt den Kunden, das Abo-Dokument bleibt, der
nächste Lauf findet den Kunden wieder und erst nach dem Löschen der Zeiten gehen die Abo-Dokumente.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 06:15:58 +00:00
ClaudeandClaude Opus 5.5 3984d468bf Öffnungszeiten: Datenschutz-Entwurf an den Stand von main angepasst (§ 7-Satz, Nummer 6d)
Der Wächter in zeitenRecht.test.js hat den Drift gefunden: Abschnitt 7 in public/datenschutz.html enthält seit TP2
den Satz zu Bestellungen ohne Abo. Das wörtliche Zitat im Entwurf ist nachgeführt, der Vorschlag ändert wie
bisher nur den Anfang des Satzes. Dazu ein Nachtrag im Entwurf: Abschnitt 6d ist seit dem Webshop-Livegang
vergeben, der Abschnitt der Öffnungszeiten muss beim Übernehmen als 6e eingebaut werden (Anker id="zeiten"
bleibt); die Umnummerierung entscheidet der Inhaber.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 06:15:58 +00:00
ClaudeandClaude Opus 5.5 3e66dfa91c Tests nach dem Zusammenführen mit main: Reihenfolge der Funktionsschlüssel und Importe von funktionen.js
Die Öffnungszeiten stehen jetzt hinter dem Webshop (news, termine, shop, zeiten): Register, FEATURE_KEYS und
ticketFreischaltungKeys in zeitenRegister, die drei Listen in app.js (VIEW_HASHES, APP_PARENT, FEATURE_LABELS)
in zeitenBestellen und shopWiring (APP_PARENT endet mit webshop, zeiten). funktionenZeitenTile prüft die Importe
von funktionen.js gegen den Stand von main (fn-util.js und analyse-view.js); die Kachel der Öffnungszeiten
bringt weiterhin keinen neuen Import mit.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 06:15:58 +00:00
ClaudeandClaude Opus 5.5 e87140e5ba Merge remote-tracking branch 'origin/main' into feature/oeffnungszeiten
Zusammenführung von TP2-Abschluss und Webshop (origin/main cab9c33) mit Öffnungszeiten live. Beide
Funktionen bleiben vollständig: jeder Konflikt ist als Vereinigung gelöst, Reihenfolge der Funktionsschlüssel
überall news, termine, shop, zeiten.

Konfliktdateien (28): public/app.js, dashboard.html, funktionen.js, widerrufen.html; scripts/stripe-products.mjs;
server/config.js, index.js, middleware/kundenansichtGuard.js, routes/abo.js, routes/admin/funktionenAdmin.js,
routes/funktionen.js, services/customerAdmin.js, customerViewLog.js, featureRegistry.js, retention.js,
siteFeatures.js, stripeBilling.js; test/customerViewLog, featureFreischaltung, featureRegistry, funktionenRoutes,
funktionenTermine, kundenansichtGuard, mailTemplates, publicForms, siteFeatures, stripeProductsScript (je
.test.js) und test/support/schema.js.

Entscheidungen: Mailvorlagen G01–G15, K01–K30, T01–T21 lückenlos (K24–K26 Webshop, K27–K30 Öffnungszeiten);
Stripe-Katalog mit shopSetup und zeitenSetup; Widerruf kennt shop und zeiten; ABO_FUNKTIONEN bleibt analyse
und termine (kein zeiten); activate() schreibt die Zeiten-Felder nur über extra; kein Halter von
feature-activate:<id> ruft disable() auf; die Aufbewahrungs-Löschung löscht Zeiten-Daten vor dem Abschalten und
hält den Kunden bei einem Fehler (held); die Admin-Antwort trägt ersatzTicket und warnung; Hash-Routen webshop
und zeiten, Ansichten view-webshop und view-zeiten; assertOwnProject behält die Meldung von main.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 06:12:23 +00:00
ClaudeandClaude Opus 5.5 c7cd436ec2 Öffnungszeiten: Mails K24–K27 heißen jetzt K27–K30, Feld k24At heißt einschaltMailAt
K24–K26 sind seit dem Webshop-Livegang (main) vergeben; der Mail-Lader sucht die Vorlage über den
Dateianfang, doppelte Nummern hätten die falsche Mail geschickt. Das Feld ist noch nicht in der
Produktion angelegt (zeiten-setup.mjs lief noch nicht), daher jetzt ein sprechender Name.
Spec und Plan behalten die alten Nummern (Hinweis oben im Dokument).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 06:00:17 +00:00
ClaudeandClaude Opus 5.5 cab9c33db6 Webshop nach TP2-Merge: Shop-Mails in der Klasse normal (kein zusätzliches notEqual in der Outbox-Abfrage)
Seit 2c7cd26 kostet jede Art in VORRANG/NACHRANGIG ein notEqual in der Abfrage der Klasse normal; live stößt die URL
bei nginx an (414). G09–G15 laufen deshalb in der Klasse normal.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 14:59:12 +00:00
Claude a4a18a1c89 Merge branch 'feature/terminplaner-tp2' into feature/webshop 2026-10-05 14:56:43 +00:00