from docx import Document
from docx.shared import Pt


DOC_PATH = "/Users/azu/Desktop/VTubeAwards/VTuber Star Awards - Website V2.docx"


def add_paragraph(doc: Document, text: str, style: str | None = None):
    paragraph = doc.add_paragraph(style=style)
    paragraph.paragraph_format.space_after = Pt(5)
    paragraph.paragraph_format.line_spacing = 1.1
    paragraph.add_run(text)


def main():
    doc = Document(DOC_PATH)

    doc.add_heading("24. Umsetzungsstand Sprint Update", level=1)
    add_paragraph(
        doc,
        "Dieses Sprint-Update dokumentiert den aktuellen technischen Umsetzungsstand fuer die zuvor priorisierten Punkte 1 und 3: lokales PostgreSQL-/Migration-Setup fuer die Entwicklung sowie die naehere Angleichung des Frontends an die freigegebene Collector-Editorial-Richtung.",
    )

    add_paragraph(doc, "Backend / Punkt 1", style="Heading 2")
    add_paragraph(
        doc,
        "Die erste EF-Core-Migration wurde bereits erzeugt. Zusaetzlich wurde das lokale Setup so vorbereitet, dass die API ihre PostgreSQL-Verbindung per appsettings oder Umgebungsvariable VTSA_POSTGRES beziehen kann. Fuer die lokale Entwicklung wurde ausserdem eine optionale docker-compose.dev.yml fuer PostgreSQL hinterlegt. Ein eigener Health-Endpunkt fuer die Datenbank liefert den Verbindungsstatus sowie eventuell noch ausstehende Migrationen.",
    )

    add_paragraph(doc, "Frontend / Punkt 3", style="Heading 2")
    add_paragraph(
        doc,
        "Die Startseite und zentrale Produktflaechen wurden visuell weiter in Richtung Collector Editorial verfeinert: mehr White Space, ruhigere Karten, staerkere typografische Hierarchie, eine hochwertigere AppShell sowie ein klarer getrenntes, host-getriebenes Hero-Panel. Auch Nominierungs-, Voting- und Admin-Flaechen wurden in dieselbe Formsprache ueberfuehrt, damit die Seite nicht nur auf der Landingpage, sondern ueber den gesamten MVP hinweg konsistent premium wirkt.",
    )

    add_paragraph(doc, "Offene technische Hinweise", style="Heading 2")
    add_paragraph(
        doc,
        "In der aktuellen Arbeitsumgebung konnte keine laufende lokale PostgreSQL-Instanz gestartet werden, da Docker bzw. lokale PostgreSQL-Binaries hier nicht verfuegbar waren. Der Code- und Setup-Stand ist jedoch so vorbereitet, dass die Migrationen direkt angewendet werden koennen, sobald lokal eine Datenbankinstanz bereitsteht.",
    )

    doc.save(DOC_PATH)


if __name__ == "__main__":
    main()
