CenterForDigitalHumanities / CenterForDigitalHumanities/rerum_server_nodejs
Collab Phase 6: Idempotent Overwrite and Conflict Payload Enhancements for Deferred Commit Clients
- 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
Rechercherichtung
Beginne mit den in diesem Issue beschriebenen RERUM-Durability-APIs und dem Workflow des deferred commit client. Kläre die Anforderungen an Idempotenz, Konfliktmetadaten, optionales Bulk-Überschreiben und Metriken, bevor du die relevanten Einstiegspunkte suchst. Als erledigt gilt die Aufgabe, wenn Retries keine Schreibvorgänge duplizieren, Konflikte Reconciliation-Daten offenlegen und die aufgeführten Durability-Metriken ausgegeben werden.
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
- 30/100