CenterForDigitalHumanities / CenterForDigitalHumanities/rerum_server_nodejs

Collab Phase 6: Idempotent Overwrite and Conflict Payload Enhancements for Deferred Commit Clients

Offen
#265 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
JavaScript
Sterne
3
Forks
6
Ø Merge
2 T. 47 Min.
Gemergte PRs (30 T.)
4

Beschreibung

## Summary
Enhance RERUM durability APIs for deferred commit workloads with idempotency and richer conflict metadata.

## Scope
- Support idempotency keys for overwrite and retry safety.
- Ensure conflict responses include current revision and current document metadata.
- Evaluate optional bulk overwrite endpoint for batched page flushes.
- Emit metrics for write rate, conflict rate, and latency.

## Acceptance Criteria
- Retries using same idempotency key do not duplicate writes.
- Conflict response contains fields needed for client reconciliation.
- Metrics are emitted for durability observability.

## Dependency
- Aligns with TPEN services durable flush worker issue.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne damit, die in der Issue referenzierten Durability-APIs und den Worker für verzögertes Commit oder dauerhaften Flush zu lokalisieren, und verfolge anschließend die Behandlung von Überschreibungen, Wiederholungen, Konflikten und Metriken. Erledigt ist die Aufgabe, wenn Wiederholungen mit einem Idempotency-Key keine Schreibvorgänge duplizieren, Konflikte die aktuelle Revision und Dokumentmetadaten offenlegen und Schreib-, Konflikt- und Latenzmetriken ausgegeben werden; kläre den optionalen Bulk-Endpunkt vor der Implementierung.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
javascript
Bereich
api, backend, observability
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Ruhig
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.