Browse documentation

Current writer default: v4 (requires opentine 0.26+). Legacy v1/v2 files and v3 repositories remain readable. Bare tine migrate now writes a sibling file; use --dry-run for preview only. Read upgrade notes.

Docs target stable release v0.30.0; v0.31.0 on main is unreleased.Stable vs main checked 2026-11-03

Upgrade to v0.30

Terminal
python -m pip install --upgrade "opentine==0.30.0"
tine fork --help
tine migrate old.tine --dry-run

Edited-step forks are published

Since v0.28, --set and --edit-file can replace a selected step's inputs, model, or tool metadata. Earlier steps stay recorded. The edited step has outputs, error, cost, and usage cleared and has not been executed. Continue explicitly with a harness and prompt. Edits are refused with --ref repository forks.

Save performance is workload-dependent

v0.29 memoizes redaction by exact bytes within a save, bounded at 64 MiB and dropped afterward. A synthetic 6000-step v4 save on the reference machine fell from 38.8s to 19.1s with byte-identical output. This is a benchmark, not a universal speed guarantee; redaction is not weakened.

Compatibility coverage expanded

v0.30 adds golden fixtures generated by 13 published wheels from v0.18.1 through v0.28.0, including the first v4 artifacts and repositories in the backward-compatibility suite. This strengthens test coverage; it does not make older readers understand v4.

Keep the v4 boundary visible

Final files and repository writes still default to v4, requiring opentine 0.26 or newer. Legacy files and repositories remain readable. Bare migrate writes a sibling file; --dry-run is preview-only. Autosave drafts and warned fallback cases can remain v2. Read the v4 transition guide before upgrading automation or sharing with older clients.

Python remains 3.11–3.14. See edited-step fork commands and release status. The v0.31 timestamp work is source-only, not part of v0.30.