15 lines
880 B
Go
15 lines
880 B
Go
// Package contract defines the shared full-sync domain and service boundaries.
|
|
// It contains no Redis, filesystem, replay execution, or HTTP handler code.
|
|
//
|
|
// Legacy queue models remain in internal/queue/zset until adapters adopt this
|
|
// package. Their existing JSON fields are retained here; new run fields are
|
|
// optional so historical records still decode. Missing extended counters mean
|
|
// unknown, not a reconstructed total. FailedCount is the historical terminal
|
|
// count for a run; cleaning source failures changes PendingFailureCount only.
|
|
//
|
|
// Implementations must preserve these boundaries: run-local Redis keys share
|
|
// one hash tag, global indexes do not; archive summaries never contain card
|
|
// details; cursors are opaque and scoped to the original query; replay writes
|
|
// are idempotent and fenced by a lease before source cleanup is allowed.
|
|
package contract
|