AckdbSegmentChangesResponse
Properties
segmentIdstringrequiredfilterHashstring (nullable)requiredThe membership's version key - changes iff a defining filter changed (detect an edit). Base segment: md5 of its filter. Derived segment: the composite `own+base`, so a base-filter edit flips it too. Null when edit detection is degraded (pre-migration DB) - null-propagating for derived, never a sentinel that looks like a real hash.
maxSeqintegerrequiredThe segment's current highest seq. You are caught up when your last row's seq === maxSeq.
minRetainedSeqintegerrequiredEarliest seq still retained (prunedThroughSeq + 1).
changesarray ofrequiredhasMorebooleanrequiredMore rows beyond this page - re-poll with since = nextSince.
nextSinceintegerrequiredThe cursor to poll with next (the last returned seq, or `since` if empty).
bootstrappedbooleanPresent + true on the first call (snapshot built, no rows returned; seed via /member-ids).
reconcilebooleanPresent + true when the cursor is unusable - re-seed via /member-ids (see `reason`).
reasonstring"cursor_ahead""cursor_expired"Example
{
"segmentId": "string",
"filterHash": "string",
"maxSeq": 0,
"minRetainedSeq": 0,
"changes": [
{
"seq": 0,
"entityId": "string",
"kind": "enter",
"at": "1970-01-01T00:00:00.000Z"
}
],
"hasMore": false,
"nextSince": 0,
"bootstrapped": false,
"reconcile": false,
"reason": "cursor_ahead"
}