symfonic.capabilities.memory.journal_node_patch¶
journal_node_patch ¶
Conditional node patches recorded against a durable read guard.
bind_graph ¶
Expose the optional port only on wrappers with a capable durable store.
Source code in src/symfonic/capabilities/memory/journal_node_patch.py
patch
async
¶
patch(journal: Any, durable: Any, scope: Any, node_id: Any, expected: OwnedNodeVersion, properties: dict[str, Any]) -> Any
Stage property changes; replay uses the original durable version.
Source code in src/symfonic/capabilities/memory/journal_node_patch.py
read
async
¶
Capture a detached row and immutable guard before overlay writes occur.
Source code in src/symfonic/capabilities/memory/journal_node_patch.py
refuse_after_patch ¶
refuse_after_patch(journal: Any, durable: Any, name: str, args: tuple[Any, ...], kwargs: dict[str, Any]) -> None
Do not queue a same-row write after a guarded patch was promised.
Source code in src/symfonic/capabilities/memory/journal_node_patch.py
refuse_conflict ¶
A guarded patch cannot replay against its own earlier node revision.