Blog

Beiträge

Ideen, Tutorials und Updates von unserem Team.

  • tanstack router

    Tenant-Subdomains in TanStack Start mit Router-Rewrites

    Ich habe jedes BugDump-Portal von bugdump.com/p/acme-store nach acme-store.bugdump.com umgezogen, ohne eine einzige Route-Datei zu verschieben: TanStack Router schreibt die URL auf dem Hin- und auf dem Rückweg um. Ein Output-Rewrite, der seine URL verändert, schickt Links auf den falschen Host, navigate() kann keinen anderen Ursprung ansteuern, und eine Wildcard-Route in Workers läuft vor jeder Custom Domain der Zone.

  • Entwickler-Tools

    JavaScript-Error-Tracking für kleine Web-Apps: was du wirklich brauchst

    Error-Tracking für eine kleine Web-App läuft auf vier Dinge hinaus: fangen, was kaputtgeht, Wiederholungen gruppieren, den Stack in deinem eigenen Code lesen und die Minute vor dem Absturz aufbewahren. Wie jedes davon im Browser funktioniert, was du wegwerfen kannst und wann du ein vollwertiges Monitoring-Tool brauchst.

  • Benachrichtigungen

    Benachrichtigungen im Bug-Tracker: Wer soll von einer Änderung erfahren?

    Eine Benachrichtigung, auf die niemand reagiert, bringt allen bei, die nächste zu ignorieren. Wie ich in BugDump entschieden habe, wer von einer Änderung an einer Aufgabe erfährt: Wer benachrichtigt wird, ergibt sich aus der Aufgabe selbst, über deine eigenen Änderungen kommt nichts, und eine Serie von Triage-Klicks geht als eine Nachricht raus.

  • OAuth

    OAuth für den MCP-Server: Claude und ChatGPT verbinden sich ohne Token

    Die benutzerdefinierten Connectors von Claude und ChatGPT haben kein Feld für ein Token, deshalb können sie sich jetzt am MCP-Server von BugDump anmelden. Wie der Ablauf funktioniert und die vier Entscheidungen dahinter: eine Verbindung für alle Projekte, nur bekannte Clients, Prüfungen bei jedem Request und Änderungen, die zuordenbar bleiben.

  • widget

    Ein eingebettetes Widget lokalisieren: Seitensprache oder Browsersprache?

    Ein eingebettetes Widget kann das html lang der Seite lesen, die navigator.languages des Browsers oder das, was die Website ihm vorgibt. Oft widersprechen sie sich. Welche Reihenfolge ich für das Widget von BugDump gewählt habe, warum die Seite zuerst kommt und welche Kleinigkeiten unterwegs kaputtgingen.

  • MCP

    Warum dein KI-Agent 40 Aufrufe für eine einzige Frage braucht

    Bitte einen Agenten um einen wöchentlichen Statusbericht und sieh zu, wie er jedes Ticket einzeln öffnet. Er ist nicht dumm, er tut genau das, wozu deine API ihn zwingt. Das N+1-Problem, umgezogen von deinem ORM auf deinen MCP-Server, und die drei Fragen, die es beheben.

  • Entwickler-Tools

    Der Maschinenname, der zugleich der Anzeigename war

    Ich habe jeder Priorität einen stabilen Key gegeben, damit sich Integrationen darauf verlassen können. Unbemerkt wurde dieser Key auch zu dem Wert, den die Clients bekamen. Prioritäten editierbar zu machen hieß deshalb, neun Stellen zu finden, die ihn lesen, vier switch-Statements, die still scheitern, und eine Annahme, die schon im Plan falsch war.

  • workflow

    Prioritätsstufen für Bugs: warum vier feste Stufen nie passen

    Jeder Bug-Tracker bringt niedrig/mittel/hoch/kritisch mit, und jedes Team benennt die Stufen im Kopf still um. Wofür eine Prioritätsskala eigentlich da ist, wie viele Stufen du brauchst und warum die Wörter deine eigenen sein müssen.

  • MCP

    MCP-Server-Authentifizierung: warum KI-Agenten persönliche Tokens brauchen

    Ein gemeinsamer API-Key reicht, solange ein KI-Agent nur liest. Sobald er Aufgaben verschiebt und Kommentare schreibt, zählt die Frage „Wer war das?“. Wie die Authentifizierung am MCP-Server mit persönlichen Tokens funktioniert und was ich dafür in BugDump geändert habe.

  • workflow

    Bug-Tracking-Metriken, die wirklich zählen

    Die meisten Bug-Dashboards zählen Dinge. Die nützlichen beantworten eine einzige Frage: Kommt das Team hinterher? Vier Metriken, die das leisten, die beliebten, die unbemerkt in die Irre führen, und ein fünfminütiger Wochen-Review, der auf ihnen aufbaut.