CluPilotCloud/docs/superpowers/specs
nexxo 9e890243f6 Entwurf: der Versandtakt
Der Betreiber will nicht, dass zweihundert Rechnungen als Schub bei einem
Empfaengerserver ankommen und die Absenderadresse dort als Spam eingestuft wird.
Heute sind es elf Kunden und zwei Rechnungen — die Regel wird fuer den Zustand
gebaut, in dem sie fehlen wuerde.

Drei Spuren, rund um die Uhr, kein Zeitfenster: Direkt (ungedrosselt), Wichtig
(30 je 5 Minuten), Zeit lassen (20 je 10 Minuten). Die Trennung laeuft nicht
zwischen Massenversand und Einzelmail, wie ich zuerst annahm, sondern zwischen
dringend und nicht dringend — eine Ausfallmeldung geht an alle UND eilt, und
bekommt deshalb ein hoeheres Kontingent statt gar keines.

Die sieben Direkt-Mails entstehen einzeln, weil ein Mensch gerade geklickt hat
und wartet. Sie koennen keinen Schub bilden; Drosseln nuetzt dort nichts und
kostet einen Supportfall je verzoegertem Kennwort. Sie lassen sich deshalb auch
nicht nach unten verschieben.

Gebaut wird es als Zwischenschicht an der Mail selbst: alle vierzehn Klassen
sind bereits ShouldQueue, und kein einziger Aufrufer aendert sich. Verworfen:
eine eigene Ausgangstabelle (zwanzig Absendestellen umbauen, zwei
Warteschlangen nebeneinander) und drei Arbeiter mit festem Takt (die Zahlen
staenden im Container statt in der Konsole).

Die Falle steht im Entwurf, weil sie den Bau still kaputtmachen kann: der
Arbeiter laeuft mit --tries=3, und eine gedrosselte Rueckstellung zaehlt als
Versuch. Ohne Vorkehrung waere jede Rechnung nach dem dritten Drosseln
gescheitert statt verschickt. Das ist der erste Test, vor der ersten Zeile
Drossel.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-03 15:18:47 +02:00
..
2026-07-25-host-onboarding-design.md fix(engine): fail on unresolvable pipeline step; make worker the WG hub 2026-07-25 10:53:40 +02:00
2026-07-27-mailboxes-design.md Design mailboxes as records, not as one more secret 2026-07-27 20:51:03 +02:00
2026-07-27-operator-identity-design.md Delete the users row once the operator has moved out of it 2026-07-27 20:44:56 +02:00
2026-07-30-betriebsmodus-und-betriebsbereitschaft-design.md Design a test/live switch and a page that says what is missing 2026-07-30 10:11:26 +02:00
2026-07-30-host-uebernahme-statt-installation-design.md Write down the network boundary, the subdomain, and two decided follow-ups 2026-07-30 19:05:23 +02:00
2026-07-30-stripe-adoption-followups-design.md Name the recurring filter, and stop the spec contradicting itself 2026-07-30 19:24:18 +02:00
2026-07-30-stripe-price-adoption-design.md Give the operator something to do about an orphan nobody can adopt 2026-07-30 18:36:06 +02:00
2026-07-31-zahlungsmittel-und-mahnlauf-design.md Hetzner-Cloud-DNS, Bereitschaftsseite aus sich heraus behebbar 2026-07-31 19:50:01 +02:00
2026-08-01-host-detailseite-last-design.md Release v1.3.93 — die Seite konnte den Host gar nicht fragen 2026-08-01 11:23:00 +02:00
2026-08-01-host-konsole-zertifikat-design.md Der Tunnel bekommt einen eigenen Container 2026-08-03 07:49:29 +02:00
2026-08-01-hostname-vergabe-design.md Fix-Runde 2: Warnung fuer nicht reparierte Hosts, case-sichere Vorabpruefung, wiederholbare Migration 2026-08-01 14:52:15 +02:00
2026-08-01-network-bridge-design.md Entwurf: vmbr0 automatisch bauen 2026-08-01 11:47:38 +02:00
2026-08-01-neue-pakete-design.md Entwurf: geprueft, dass ein laufender Vertrag seine Version einfriert 2026-08-01 11:55:30 +02:00
2026-08-01-vorlagenbau-design.md Release v1.3.88 — die Vorlage baut sich selbst 2026-08-01 05:01:44 +02:00
2026-08-02-terminal-container-design.md Terminal-Bruecke: ein Container, eine Aufgabe, ein Ticket 2026-08-02 19:09:15 +02:00
2026-08-02-versandtakt-design.md Entwurf: der Versandtakt 2026-08-03 15:18:47 +02:00
2026-08-03-fruehwarnsystem-design.md Spec richtiggestellt: Gaeste werden ueber den Proxmox-Gastagenten gelesen, nicht ueber SSH 2026-08-03 12:23:41 +02:00