TLS-Gate: Demo-Stammdaten (mockup.sql), Probelauf des Entwurfs, Befund UNIQUE bei NULL (Nachtrag)
Von: Branko â OZMAI
Stand: 6. Oktober 2026
Typ: EXTERNAL_SOURCE (Inbox-Regel §3 â keine automatische Geltung, kein Brain-Status)
Charakter: STAND + NACHTRAG. Setzt 2026-10-06_TLS-GATE-ENTWURF-DOMAINS-ORDERS-KATEGORIEN-NACHTRAG_BRANKO.md fort. Ersetzt eine Aussage dieser Datei: Dort steht unter âFestlegungenâ die Regel âkeine Nummer ratenâ mit der Eindeutigkeit der Order-Nummer; der Probelauf zeigt, dass die vorgesehene Eindeutigkeit bei provider = acme|manual nicht greift (§3). Alles andere gilt unverĂ€ndert.
Quelle: Repo TLS-Gate-Mock-Pipeline (git.crumbforest.org), Commit b0712c5 (database/demo/, tests/test_demo_mockup.sh, docs/DESIGN_DOMAINS_KATEGORIEN.md §6a). Tag-Stand unverÀndert v3.7.0.
Belege: tests/test_demo_mockup.sh (21); VM-Suiten run 52, p3 48, p4 54, p5 31, p6 22 grĂŒn nach Neubau.
Legende: â real/gebaut · đ§Ș gebaut, getestet, nicht live · đ spezifiziert · ⏠OPEN · â UNKNOWN
Keine Zugangsdaten, keine Kunden-Domains, keine Reseller-IDs (Demo-Daten: *.invalid, example.org).
1. Was gebaut ist
- đ§Ș
database/demo/mockup.sql: Demo-Stammdaten fĂŒr das aktuelle Schema, gleiche Anweisungen fĂŒr SQLite und MariaDB. Vier Gruppen (demo-crew,demo-trial,demo-admin,demo-kunde), vier Konten (ungĂŒltiger Hash, nicht anmeldbar), sechs Produkte, sechs Freigaben, zwei Verbrauchszeilen. Kommentare nennen je Tabelle Pflicht- und optionale Felder. Alle Slugs beginnen mitdemo-, Mehrfachladen bricht an UNIQUE ab. - â
Bewusst nicht enthalten:
soap_credentials(ein verschlĂŒsselter Blob wird nicht gefĂ€lscht), Kategorien/Domains/Orders (nicht im Schema). - đ§Ș
database/demo/mockup_entwurf.sql: der Entwurf als SQLite-DDL plus Beispieldaten. Kein Schema, nirgends geladen auĂer im Test. - â
In der Klicktest-Instanz
ozm03(MariaDB) geladen; nicht aufozm01/ozm02.
2. Was die Auswertung zeigt (Chain::status, fester Zeitpunkt, SQLite und MariaDB identisch)
| Gruppe | login | crew | schluessel | ca | hosting | ssl |
|---|---|---|---|---|---|---|
| demo-crew | ok | ok | missing | open | ok | missing |
| demo-trial | ok | ok | missing | open | missing | missing |
| demo-admin | ok | ok | missing | open | ok | missing |
| demo-kunde | missing | ok | missing | open | missing | ok |
- demo-trial: Freigabe mit Start in der Zukunft gilt als nicht verfĂŒgbar (30-Minuten-Regel), die deaktivierte zĂ€hlt nicht.
- Beobachtung: Ohne SOAP-Zugang (
schluessel) isthostingfĂŒr alle Gruppen gesperrt,sslbei demo-kunde zusĂ€tzlich wegen fehlender Anmeldung (vorgaenger_fehlt). Das ist die Kette wie in v3.6.0 festgelegt, bestĂ€tigt aber die offene Frage, ob SSL/Hosting an einen SOAP-Zugang hĂ€ngen sollen. ⏠Entscheidung offen. - â Kein Dashboard getestet: Es gibt noch keine Dashboard-Seite (
index.phpist die SSL-Konsole,Chainin keiner Seite verdrahtet). Getestet ist nur die Auswertung der Stammdaten.
3. Befund: Eindeutigkeit der Order-Nummer greift bei NULL nicht (ersetzt Aussage der VorgÀngerdatei)
Der Entwurf sah UNIQUE (credential_id, order_number) vor. Der Probelauf in SQLite zeigt: Ist credential_id NULL (provider = acme|manual), lĂ€sst sich dieselbe Nummer doppelt einfĂŒgen. Die Invariante âzwei Zeilen mit gleicher Nummer sind unmöglichâ gilt damit nur fĂŒr provider = soap.
- đ§Ș Der Test hĂ€lt den Befund fest und schlĂ€gt an, sobald eine Dublette abgewiesen wird (dann Entwurf nachziehen).
- ⏠Abhilfen im Entwurf genannt, nicht entschieden: zusĂ€tzliche Eindeutigkeit ĂŒber
(provider, order_number), oder Platzhalterzeile fĂŒr Nicht-SOAP. Die erste wĂŒrde zulassen, dass zwei SOAP-ZugĂ€nge dieselbe Nummer fĂŒhren, obwohl Nummern je Registrar-Zugang gelten. - â MariaDB-Verhalten nicht geprĂŒft (nur SQLite); der Standard erlaubt mehrere NULL in UNIQUE, gleiches Verhalten ist wahrscheinlich, nicht belegt.
4. Bezug zum PrĂŒffall (Branko, nicht OZMAI-Geltung)
Der Probelauf hat eine Aussage des Entwurfs widerlegt, bevor sie Schema wurde. Das entspricht der Regel âWiederholung â BestĂ€tigungâ: Dass der Entwurf plausibel klingt, galt nicht als Beleg; erst der Ein-Zeichen-Test (hier: Dublette einfĂŒgen) hat ihn geprĂŒft.
5. Offene Punkte
- ⏠Antworten der Crew auf die sieben Fragen im Entwurf; Schema erst danach.
- ⏠Dashboard-Seite (Kacheln aus Freigaben) existiert nicht.
- ⏠Entscheidung, ob
schluesselfĂŒrhostingVoraussetzung sein soll. - â Order-ID-Frage aus v3.6.1 bleibt offen, bis ein echter
sslReplacedas Rohlog fĂŒllt.