Skip to content

Add transient state recording to QuamRoot#204

Draft
nulinspiratie wants to merge 8 commits into
mainfrom
feature/transient-state
Draft

Add transient state recording to QuamRoot#204
nulinspiratie wants to merge 8 commits into
mainfrom
feature/transient-state

Conversation

@nulinspiratie
Copy link
Copy Markdown
Contributor

Summary

  • Add transient-state bookkeeping and QuamRoot APIs for recording, inspecting, and reverting temporary runtime mutations.
  • Hook transient recording into component, dict, and list writes while preserving parent/child relationships and detached-object behavior.
  • Make QuamRoot.save() transient-aware so active transient values are reverted before persistence, with rollback if serialization fails.
  • Add a tutorial page showing an executable superconducting-qubits calibration-style example.

Test Plan

  • black --check quam/core/transient.py tests/quam_base/test_transient_state.py
  • git diff --check
  • python -m pytest tests/ -q
  • mkdocs build

Notes

  • get_transient_changes() reports changes as path, original, and transient.
  • mkdocs build exits successfully with the repository's existing documentation warnings.

@nulinspiratie nulinspiratie force-pushed the feature/transient-state branch from 15ae797 to 000408a Compare April 23, 2026 13:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant