Hermes-Agent Webhook antwortet zweimal bei einem Event, also vermuten Sie nicht, dass der Agent verrückt ist. Die offizielle Webhooks-Dokumentation macht deutlich: Doppelte Lieferungen sollten durch den idempotenten Cache der Liefer-ID blockiert werden. Wenn die Quelle keine Anfrage-ID wie X-GitHub-Delivery oder X-Request-ID hat, ist die Hermes-Deduplizierung deutlich schwächer.
Überprüfen Sie zuerst diese Gegenstände
- Sendet deine Webhook-Quelle einen Liefer-ID-Header?
- Versucht der Upstream-Dienst es von selbst und der Header ändert sich jedes Mal?
- Egal, ob du fälschlicherweise denkst, dass "200 nicht erneut gepostet werden", tatsächlich versuchen einige Plattformen es trotzdem wegen Timeouts oder Richtlinien.
Wie man jetzt mit dem Offiziellen umgeht
Im Dokument steht: Die Liefer-ID wird für 1 Stunde zwischengespeichert, und wenn eine Wiederholungszustellung erreicht wird, wird sie direkt übersprungen und 200 Stunden zurückgegeben. Mit anderen Worten: Was wirklich hinzugefügt werden muss, ist der Upstream-Anfrage-Header, nicht zuerst die Hermes Agent-Logik.
Kurz gesagt: Webhook antwortet wiederholt, überprüft zuerst, ob der Delivery-ID-Header stabil ist, dann überprüft upstream, um es erneut zu versuchen, installiert den Hermes Agent nicht vorher.
Offizielle Open-Source-Adresse: https://github.com/NousResearch/hermes-agent; Offizieller Dokumenteneintrag: https://hermes-agent.nousresearch.com/.