CommitOutcome Enum
Details about what changes from a commit were applied or not.
To use, import via fluid-framework/alpha.
For more information about our API support guarantees, see here.
Signature
export declare enum CommitOutcome
Flags
| Flag | Alerts | Description |
|---|---|---|
| FullyApplied | Alpha | All of the changes in the commit were applied. |
| FullyDropped | Alpha | None of the changes in the commit were applied. |
| NewContentOnly | Alpha | Only the creation of new content was applied. All other changes (including the insertion and/or modification of the new content) were dropped. |
FullyApplied
All of the changes in the commit were applied.
For more information about our API support guarantees, see here.
Signature
FullyApplied = 0
FullyDropped
None of the changes in the commit were applied.
For more information about our API support guarantees, see here.
Signature
FullyDropped = 1
Remarks
This occurs when an implicit constraint has been violated. Implicit constraints are those that are automatically enforced by SharedTree on all changes.
Such a violation typically arises in one of two scenarios: 1. A schema change conflicts with a concurrent data or schema change that was sequenced before it. 2. A data change conflicts with a concurrent schema change that was sequenced before it.
NewContentOnly
Only the creation of new content was applied. All other changes (including the insertion and/or modification of the new content) were dropped.
For more information about our API support guarantees, see here.
Signature
NewContentOnly = 2
Remarks
This occurs when at least one explicit constraint has been violated (and no implicit constraints were violated.)
Explicit constraints are those that are explicitly added through preconditions or preconditionsOnRevert.
The new content may be edited (and potentially inserted) by subsequent commits, assuming those commits are not themselves subject to constraint violations. Note that, if left uninserted, new content will eventually be garbage-collected from the document.
Applications typically choose to treat this outcome as equivalent to FullyDropped and, when reattempting the change, generate a different copy of the new content if any.