Module: RubynCode::Checkpoint
- Defined in:
- lib/rubyn_code.rb,
lib/rubyn_code/checkpoint/hook.rb,
lib/rubyn_code/checkpoint/manager.rb
Overview
Checkpoints let a user rewind a session, mirroring Claude Code’s /rewind. A checkpoint is taken at the start of each user turn and captures:
- the conversation state (so chat can be rolled back), and
- the original contents of every file mutated during that turn (so code
can be restored).
File contents are captured lazily by Checkpoint::Hook on :pre_tool_use, just before a mutating tool runs, so only files that actually change are snapshotted.
Defined Under Namespace
Constant Summary collapse
- ABSENT =
Marker stored for a path that did not exist when first touched, so a rewind deletes it rather than recreating empty content.
:absent