Web-MVP (M1): FastAPI-API, Testoberflaeche, tische.ini-Upload, zwei neue Beispiele

- web/main.py: Session-basierte REST-API um den GA-Kern (POST /sitzung,
  .../tische, .../tische-datei, .../personen, .../berechnen,
  GET .../ergebnis[.svg]); Sessions in-memory mit 24h-TTL
- web/static/index.html: einfache Browser-Testoberflaeche (Tisch-Tabelle
  mit Presets, tische.ini-Upload, CSV-Gaesteliste, Kennzahlen, SVG)
- bin/run_web.bat/.sh + run_web_helper.ps1: start/stop/status inkl.
  Aufraeumen verwaister uvicorn-Reload-Kindprozesse (Zombie-Sockets)
- work/hochzeit: 120 Hochzeitsgaeste, Ehrentafel, Kindertisch/Teenager-
  Tisch fest gesetzt, Kinderalter normalverteilt, ~85% Auslastung
- work/innenhoefe: 300 Gaeste in zwei trapezfoermigen Innenhoefen mit
  4er-Tischen, 12 VIPs vor der Buehne, Umfeld.svg mit Tanzflaeche/Band
- Roadmap: Konzeptentscheidungen 1-11 (Zielgruppe, Einmalzahlung, MoR,
  Hetzner, Zwei-Marken-Strategie Sitz&Platz/SeatWonder), Namensrecherche
  im Anhang, M1-Fortschritt und GA-Lasttest-Datenpunkt dokumentiert

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Michael Stangl
2026-07-11 10:21:45 +02:00
parent 5124b7fab6
commit 00dffc59eb
20 changed files with 5706 additions and 20 deletions
+615
View File
@@ -0,0 +1,615 @@
[1]
Nummer=1
Hof=1
Plaetze=4
Nachbarliste=[2, 12]
Koordinaten=(0,0)
[2]
Nummer=2
Hof=1
Plaetze=4
Nachbarliste=[1, 3, 12, 13]
Koordinaten=(1,0)
[3]
Nummer=3
Hof=1
Plaetze=4
Nachbarliste=[2, 4, 13, 14]
Koordinaten=(2,0)
[4]
Nummer=4
Hof=1
Plaetze=4
Nachbarliste=[3, 5, 14, 15]
Koordinaten=(3,0)
[5]
Nummer=5
Hof=1
Plaetze=4
Nachbarliste=[4, 6, 15, 16]
Koordinaten=(4,0)
[6]
Nummer=6
Hof=1
Plaetze=4
Nachbarliste=[5, 7, 16, 17]
Koordinaten=(5,0)
[7]
Nummer=7
Hof=1
Plaetze=4
Nachbarliste=[6, 8, 17, 18]
Koordinaten=(6,0)
[8]
Nummer=8
Hof=1
Plaetze=4
Nachbarliste=[7, 9, 18, 19]
Koordinaten=(7,0)
[9]
Nummer=9
Hof=1
Plaetze=4
Nachbarliste=[8, 10, 19, 20]
Koordinaten=(8,0)
[10]
Nummer=10
Hof=1
Plaetze=4
Nachbarliste=[9, 11, 20, 21]
Koordinaten=(9,0)
[11]
Nummer=11
Hof=1
Plaetze=4
Nachbarliste=[10, 21]
Koordinaten=(10,0)
[12]
Nummer=12
Hof=1
Plaetze=4
Nachbarliste=[1, 2, 13, 22]
Koordinaten=(0.5,1)
[13]
Nummer=13
Hof=1
Plaetze=4
Nachbarliste=[2, 3, 12, 14, 22, 23]
Koordinaten=(1.5,1)
[14]
Nummer=14
Hof=1
Plaetze=4
Nachbarliste=[3, 4, 13, 15, 23, 24]
Koordinaten=(2.5,1)
[15]
Nummer=15
Hof=1
Plaetze=4
Nachbarliste=[4, 5, 14, 16, 24, 25]
Koordinaten=(3.5,1)
[16]
Nummer=16
Hof=1
Plaetze=4
Nachbarliste=[5, 6, 15, 17, 25, 26]
Koordinaten=(4.5,1)
[17]
Nummer=17
Hof=1
Plaetze=4
Nachbarliste=[6, 7, 16, 18, 26, 27]
Koordinaten=(5.5,1)
[18]
Nummer=18
Hof=1
Plaetze=4
Nachbarliste=[7, 8, 17, 19, 27, 28]
Koordinaten=(6.5,1)
[19]
Nummer=19
Hof=1
Plaetze=4
Nachbarliste=[8, 9, 18, 20, 28, 29]
Koordinaten=(7.5,1)
[20]
Nummer=20
Hof=1
Plaetze=4
Nachbarliste=[9, 10, 19, 21, 29, 30]
Koordinaten=(8.5,1)
[21]
Nummer=21
Hof=1
Plaetze=4
Nachbarliste=[10, 11, 20, 30]
Koordinaten=(9.5,1)
[22]
Nummer=22
Hof=1
Plaetze=4
Nachbarliste=[12, 13, 23, 31]
Koordinaten=(1,2)
[23]
Nummer=23
Hof=1
Plaetze=4
Nachbarliste=[13, 14, 22, 24, 31, 32]
Koordinaten=(2,2)
[24]
Nummer=24
Hof=1
Plaetze=4
Nachbarliste=[14, 15, 23, 25, 32, 33]
Koordinaten=(3,2)
[25]
Nummer=25
Hof=1
Plaetze=4
Nachbarliste=[15, 16, 24, 26, 33, 34]
Koordinaten=(4,2)
[26]
Nummer=26
Hof=1
Plaetze=4
Nachbarliste=[16, 17, 25, 27, 34, 35]
Koordinaten=(5,2)
[27]
Nummer=27
Hof=1
Plaetze=4
Nachbarliste=[17, 18, 26, 28, 35, 36]
Koordinaten=(6,2)
[28]
Nummer=28
Hof=1
Plaetze=4
Nachbarliste=[18, 19, 27, 29, 36, 37]
Koordinaten=(7,2)
[29]
Nummer=29
Hof=1
Plaetze=4
Nachbarliste=[19, 20, 28, 30, 37, 38]
Koordinaten=(8,2)
[30]
Nummer=30
Hof=1
Plaetze=4
Nachbarliste=[20, 21, 29, 38]
Koordinaten=(9,2)
[31]
Nummer=31
Hof=1
Plaetze=4
Nachbarliste=[22, 23, 32, 39]
Koordinaten=(1.5,3)
[32]
Nummer=32
Hof=1
Plaetze=4
Nachbarliste=[23, 24, 31, 33, 39, 40]
Koordinaten=(2.5,3)
[33]
Nummer=33
Hof=1
Plaetze=4
Nachbarliste=[24, 25, 32, 34, 40, 41]
Koordinaten=(3.5,3)
[34]
Nummer=34
Hof=1
Plaetze=4
Nachbarliste=[25, 26, 33, 35, 41, 42]
Koordinaten=(4.5,3)
[35]
Nummer=35
Hof=1
Plaetze=4
Nachbarliste=[26, 27, 34, 36, 42, 43]
Koordinaten=(5.5,3)
[36]
Nummer=36
Hof=1
Plaetze=4
Nachbarliste=[27, 28, 35, 37, 43, 44]
Koordinaten=(6.5,3)
[37]
Nummer=37
Hof=1
Plaetze=4
Nachbarliste=[28, 29, 36, 38, 44, 45]
Koordinaten=(7.5,3)
[38]
Nummer=38
Hof=1
Plaetze=4
Nachbarliste=[29, 30, 37, 45]
Koordinaten=(8.5,3)
[39]
Nummer=39
Hof=1
Plaetze=4
Nachbarliste=[31, 32, 40]
Koordinaten=(2,4)
[40]
Nummer=40
Hof=1
Plaetze=4
Nachbarliste=[32, 33, 39, 41]
Koordinaten=(3,4)
[41]
Nummer=41
Hof=1
Plaetze=4
Nachbarliste=[33, 34, 40, 42]
Koordinaten=(4,4)
[42]
Nummer=42
Hof=1
Plaetze=4
Nachbarliste=[34, 35, 41, 43]
Koordinaten=(5,4)
[43]
Nummer=43
Hof=1
Plaetze=4
Nachbarliste=[35, 36, 42, 44]
Koordinaten=(6,4)
[44]
Nummer=44
Hof=1
Plaetze=4
Nachbarliste=[36, 37, 43, 45]
Koordinaten=(7,4)
[45]
Nummer=45
Hof=1
Plaetze=4
Nachbarliste=[37, 38, 44]
Koordinaten=(8,4)
[46]
Nummer=46
Hof=2
Plaetze=4
Nachbarliste=[47, 57]
Koordinaten=(16,0)
[47]
Nummer=47
Hof=2
Plaetze=4
Nachbarliste=[46, 48, 57, 58]
Koordinaten=(17,0)
[48]
Nummer=48
Hof=2
Plaetze=4
Nachbarliste=[47, 49, 58, 59]
Koordinaten=(18,0)
[49]
Nummer=49
Hof=2
Plaetze=4
Nachbarliste=[48, 50, 59, 60]
Koordinaten=(19,0)
[50]
Nummer=50
Hof=2
Plaetze=4
Nachbarliste=[49, 51, 60, 61]
Koordinaten=(20,0)
[51]
Nummer=51
Hof=2
Plaetze=4
Nachbarliste=[50, 52, 61, 62]
Koordinaten=(21,0)
[52]
Nummer=52
Hof=2
Plaetze=4
Nachbarliste=[51, 53, 62, 63]
Koordinaten=(22,0)
[53]
Nummer=53
Hof=2
Plaetze=4
Nachbarliste=[52, 54, 63, 64]
Koordinaten=(23,0)
[54]
Nummer=54
Hof=2
Plaetze=4
Nachbarliste=[53, 55, 64, 65]
Koordinaten=(24,0)
[55]
Nummer=55
Hof=2
Plaetze=4
Nachbarliste=[54, 56, 65, 66]
Koordinaten=(25,0)
[56]
Nummer=56
Hof=2
Plaetze=4
Nachbarliste=[55, 66]
Koordinaten=(26,0)
[57]
Nummer=57
Hof=2
Plaetze=4
Nachbarliste=[46, 47, 58, 67]
Koordinaten=(16.5,1)
[58]
Nummer=58
Hof=2
Plaetze=4
Nachbarliste=[47, 48, 57, 59, 67, 68]
Koordinaten=(17.5,1)
[59]
Nummer=59
Hof=2
Plaetze=4
Nachbarliste=[48, 49, 58, 60, 68, 69]
Koordinaten=(18.5,1)
[60]
Nummer=60
Hof=2
Plaetze=4
Nachbarliste=[49, 50, 59, 61, 69, 70]
Koordinaten=(19.5,1)
[61]
Nummer=61
Hof=2
Plaetze=4
Nachbarliste=[50, 51, 60, 62, 70, 71]
Koordinaten=(20.5,1)
[62]
Nummer=62
Hof=2
Plaetze=4
Nachbarliste=[51, 52, 61, 63, 71, 72]
Koordinaten=(21.5,1)
[63]
Nummer=63
Hof=2
Plaetze=4
Nachbarliste=[52, 53, 62, 64, 72, 73]
Koordinaten=(22.5,1)
[64]
Nummer=64
Hof=2
Plaetze=4
Nachbarliste=[53, 54, 63, 65, 73, 74]
Koordinaten=(23.5,1)
[65]
Nummer=65
Hof=2
Plaetze=4
Nachbarliste=[54, 55, 64, 66, 74, 75]
Koordinaten=(24.5,1)
[66]
Nummer=66
Hof=2
Plaetze=4
Nachbarliste=[55, 56, 65, 75]
Koordinaten=(25.5,1)
[67]
Nummer=67
Hof=2
Plaetze=4
Nachbarliste=[57, 58, 68, 76]
Koordinaten=(17,2)
[68]
Nummer=68
Hof=2
Plaetze=4
Nachbarliste=[58, 59, 67, 69, 76, 77]
Koordinaten=(18,2)
[69]
Nummer=69
Hof=2
Plaetze=4
Nachbarliste=[59, 60, 68, 70, 77, 78]
Koordinaten=(19,2)
[70]
Nummer=70
Hof=2
Plaetze=4
Nachbarliste=[60, 61, 69, 71, 78, 79]
Koordinaten=(20,2)
[71]
Nummer=71
Hof=2
Plaetze=4
Nachbarliste=[61, 62, 70, 72, 79, 80]
Koordinaten=(21,2)
[72]
Nummer=72
Hof=2
Plaetze=4
Nachbarliste=[62, 63, 71, 73, 80, 81]
Koordinaten=(22,2)
[73]
Nummer=73
Hof=2
Plaetze=4
Nachbarliste=[63, 64, 72, 74, 81, 82]
Koordinaten=(23,2)
[74]
Nummer=74
Hof=2
Plaetze=4
Nachbarliste=[64, 65, 73, 75, 82, 83]
Koordinaten=(24,2)
[75]
Nummer=75
Hof=2
Plaetze=4
Nachbarliste=[65, 66, 74, 83]
Koordinaten=(25,2)
[76]
Nummer=76
Hof=2
Plaetze=4
Nachbarliste=[67, 68, 77]
Koordinaten=(17.5,3)
[77]
Nummer=77
Hof=2
Plaetze=4
Nachbarliste=[68, 69, 76, 78, 84]
Koordinaten=(18.5,3)
[78]
Nummer=78
Hof=2
Plaetze=4
Nachbarliste=[69, 70, 77, 79, 84, 85]
Koordinaten=(19.5,3)
[79]
Nummer=79
Hof=2
Plaetze=4
Nachbarliste=[70, 71, 78, 80, 85, 86]
Koordinaten=(20.5,3)
[80]
Nummer=80
Hof=2
Plaetze=4
Nachbarliste=[71, 72, 79, 81, 86, 87]
Koordinaten=(21.5,3)
[81]
Nummer=81
Hof=2
Plaetze=4
Nachbarliste=[72, 73, 80, 82, 87, 88]
Koordinaten=(22.5,3)
[82]
Nummer=82
Hof=2
Plaetze=4
Nachbarliste=[73, 74, 81, 83, 88]
Koordinaten=(23.5,3)
[83]
Nummer=83
Hof=2
Plaetze=4
Nachbarliste=[74, 75, 82]
Koordinaten=(24.5,3)
[84]
Nummer=84
Hof=2
Plaetze=4
Nachbarliste=[77, 78, 85]
Koordinaten=(19,4)
[85]
Nummer=85
Hof=2
Plaetze=4
Nachbarliste=[78, 79, 84, 86]
Koordinaten=(20,4)
[86]
Nummer=86
Hof=2
Plaetze=4
Nachbarliste=[79, 80, 85, 87]
Koordinaten=(21,4)
[87]
Nummer=87
Hof=2
Plaetze=4
Nachbarliste=[80, 81, 86, 88]
Koordinaten=(22,4)
[88]
Nummer=88
Hof=2
Plaetze=4
Nachbarliste=[81, 82, 87]
Koordinaten=(23,4)