ClaudeandClaude Sonnet 5.5 41ae7ffd3f Endprüfung Nachrunde R7: Test der Zeitgrenze (D14) für reply, approve-preview und start-build wiederhergestellt
Der Commit 1536a3b hatte den Test „reply, approve-preview und start-build warten länger als die übrigen
Pult-Aktionen“ gelöscht. Der neue Test prüft gegen den heutigen Code (ACTION_TIMEOUT_MS 65 s,
REQUEST_TIMEOUT_MS 20 s, Optionen timeoutMs / actionTimeoutMs) mit den Uhren von node:test statt echter
Wartezeit: keine Abhängigkeit von der Last, Grenzen auf die Millisekunde (eine Millisekunde vor der Frist
läuft der Abruf, mit ihr endet er). Die drei langsamen Aktionen nehmen eine Antwort zwischen kurzer und langer
Frist an, claim/sent/discard/done/paste und das Lesen enden mit der kurzen Frist (DOWN_TEXT, status 0, Signal
abgebrochen), ein hängender Abruf endet nach der langen Frist. Derselbe Ablauf mit Standard- und mit
eingespeisten Fristen; ein zweiter Test pinnt, dass auch der Wiederholungsversuch nach einer 401 die Frist
der Aktion behält.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-18 23:54:10 +00:00
2025-12-17 17:55:13 +01:00
2026-01-06 00:40:54 +01:00

WOMS – Ticketsystem von WEBklar

Internes Ticketsystem unter https://ticket.webklar.com: Tickets, Arbeitsblätter mit Zeiterfassung, Kunden und Leads, Website-Projekte, Planboard und Finanzen (Rechnungen schreiben und verwalten, Buchungen zuordnen; nur für Admins). React/Vite im Browser, Daten in Appwrite (Projekt 6a1058610003c5a13a05, Datenbank woms-database, API unter https://ticket.webklar.com/v1).

Entwickeln und live stellen

  • Lokal starten: siehe LOCAL_DEV.md (Vite-Proxy + .env.local).
  • Live ist der Branch test im Gitea-Repo JUSN/tickte-system. Ein Push löst auf dem Server Build und Deploy aus.
  • Achtung: Der Webhook baut jeden gepushten Branch und stellt ihn live. Feature-Branches deshalb nicht pushen; live geht es mit git push origin <branch>:test.

Datenmodell (Kurzfassung)

Datum speichert WOMS als Text dd.mm.yyyy, Uhrzeiten als hhmm (z. B. 0930).

Collection Inhalt Wichtige Felder
workorders Tickets woid (fortlaufend ab 10000), topic, details, status, priority, type (Webpage, Migration, Project, Akquise), serviceType, customerId/customerName, assignedTo/assignedName, requestedBy, startDate/startTime/endTime, deadline
worksheets Arbeitsblätter wsid (fortlaufend ab 100000), woid + workorderId, employeeId/employeeName, serviceType, oldStatus/newStatus, totalTime (Minuten), startDate/startTime/endDate/endTime, details, isComment, countsToPlan (Abo-Stunden)
customers Kunden und Leads code (Kundennummer), name/companyName, customerStatus (z. B. lead, customer, lost), archived, Rechnungsadresse, Portal-Zugang, invoiceNinjaClientId (nicht mehr genutzt, Daten bleiben)
employees Mitarbeiter userId (Appwrite-Benutzer), displayName, email, shortcode (Kürzel)
websiteProjects Website-Projekte und Vorschauen customerId (steuert, was der Kunde im Portal sieht), ticketId (Ziel der Git-Push-Arbeitsblätter), Subdomain, Repo
leads, leadPipeline, leadSettings Lead-Automatik Recherche-Ergebnisse, Pipeline-Schritte, Sucheinstellungen
roadmaps, roadmapNodes alte Projektpläne wird von WOMS nicht mehr gelesen (Plan mit Schritten, verknüpft mit einem Ticket)
config alte Einstellungen wird von WOMS nicht mehr gelesen (Prioritäten, alte Listen)

Zusammenspiel mit anderen Systemen:

  • Kundenportal (project.webklar.com): legt bei jedem Git-Push ein Arbeitsblatt an (employeeId gitea, serviceType GIT, ohne Beginn). Die Zeit wird in WOMS nachgetragen, danach zählt sie als Arbeitszeit. Termine aus der Rechnungsanalyse landen am Akquise-Ticket des Kunden und erscheinen im Planboard. Kunden-, Mitarbeiter- und Projektverwaltung laufen über die Admin-API des Portals.
  • Finanzen-API des Portals (/api/admin/finanzen): Übersicht, Rechnungen (Stripe), Buchungen (Bank), Einstellungen und Fixkosten. WOMS spricht sie mit dem Appwrite-JWT an und zeigt sie unter /finance (Einstellungen: /finance/einstellungen).
  • ticket-integrations (/api/integrations): wird von WOMS nicht mehr genutzt (weder InvoiceNinja noch Paperless; Paperless selbst ist gestoppt).
S
Description
tickte-system
Readme
41 MiB
0 Stars 0 Watchers 0 Forks
Languages
JavaScript 94.7%
CSS 5.3%