Skip to content

Troubleshooting

Symptom Check and remedy
Cannot begin, navigate or snapshot after construction Call history.initialize(*roots) once with at least one same-manager root. Construction alone does not establish history.
Managed setter raises TransactionRequiredError Begin an edit on the owning manager; current/pinned views remain read-only.
A cache or label survives rollback Ordinary/local/lazy/constant storage is nonversioned; declare reversible values as managed.
Mutable/custom value raises FrozenValueError Convert to the supported stable surface with freeze; use thaw for its editable working form.
Retained child raises ObjectAbsentError It is absent from the selected managed graph. Navigate to a frame where it is present or choose the documented absent-read policy.
UnavailableNodeError after failed construction/edit No surviving visible baseline exists for that node; do not resurrect aborted or future-only creations.
A retained .current changes It is a live view. Keep a FrameSnapshot for pinned committed managed data.
Redo disappeared A new successful commit after undo replaces the redo tail, including no-op commits.
Nested rollback cancels more than the inner block Same-manager nesting joins; it does not create savepoints.
A factory's input is unknown or unresolved Parameter names select providers; check spelling, cycles, lazy defaults and opt-in self ordering.
Validation failed but preview remains editable validate() keeps the edit open for repair; final commit failure aborts it.
Callback mutation raises ReentrantOperationError Keep callbacks pure; perform changes outside their factory/converter/validator invocation.
A model cannot be hashed eq=True deliberately makes all its facades unhashable.
A cache hit does not appear Inspect cache diagnostics; check startup environment, identity and storage trust/availability.
Windows CPython 3.15 install lacks an Astichi wheel See installation qualification; a source build is not qualified here.

Known declaration limitation

A field named schema currently collides with a generated capture and fails during decoration. Use another name. The integration preserves that existing limitation; it does not claim arbitrary field-name support.

HistoryFaultError means unexpected backend ownership/completion evidence. There is no recovery/reset operation; consult the failure reference without assuming an unconfirmed publication is safe to use. The manager does not guarantee concurrent thread/task isolation or reversal of external side effects.