Interface OfflineEditConflictResolutionOutcome

The closure of one conflict, recorded against the edit that raised it.

It carries the closed conflict's identity and timing — conflictId, detectedAt, serverGeneration — because the conflict outcome itself is cleared by the transition: a record must not claim to be both conflicted and resolved. The audit history keeps the ordered account; this member is the current outcome slot, exactly as applied and cancellation are.

interface OfflineEditConflictResolutionOutcome {
    acknowledgement: "unacknowledged-by-server";
    choice: OfflineEditConflictResolutionChoice;
    conflictId: string;
    detectedAt: string;
    disposition: OfflineEditConflictResolutionDisposition;
    note?: string;
    resolvedAt: string;
    resolvedBy?: string;
    serverGeneration?: string;
}

Properties

acknowledgement
conflictId: string
detectedAt: string

Carried from the conflict this resolution closed.

note?: string

Reviewer note; screened before it is persisted.

resolvedAt: string
resolvedBy?: string

Opaque non-secret reviewer identity; screened before it is persisted.

serverGeneration?: string

Carried from the conflict this resolution closed, when it named one.