Skip to content

Releases: Corvus-226/RunTrace

RunTrace v0.3.0

Choose a tag to compare

@Corvus-226 Corvus-226 released this 20 Aug 16:18
7dfa468

RunTrace v0.3.0 adds a small, explicit bridge between local reproducibility records and external logs, metrics, and traces: every command launched by ml-runtrace run receives the exact saved RunTrace ID as RUNTRACE_RUN_ID.

Highlights

  • Saves the snapshot before exposing its 12-character ID to the child process.
  • Lets applications attach the shared ID to logs, metric labels, resources, or spans as runtrace.run.id.
  • Replaces a stale inherited RUNTRACE_RUN_ID for the child without modifying the parent environment.
  • Keeps snapshot schema v1 and all v0.2.0 run-wrapper and dependency-provenance contracts intact.
  • Remains local-first: RunTrace does not create spans, add an observability dependency, configure exporters, or send telemetry.

Install or upgrade

python -m pip install --upgrade ml-runtrace==0.3.0
ml-runtrace --version

Python 3.10–3.12 on Windows and Linux is supported.

Verified release evidence

The attached wheel, source distribution, SHA256SUMS, and RELEASE_PROVENANCE are the exact files produced by the tag-triggered publishing workflow.

See the complete release notes and run-correlation guide.

RunTrace v0.2.0

Choose a tag to compare

@Corvus-226 Corvus-226 released this 17 Aug 12:56
aca08ec

RunTrace v0.2.0 adds atomic snapshot-before-execution and privacy-conscious provenance for Python packages installed from direct sources.

Install or upgrade

python -m pip install --upgrade ml-runtrace==0.2.0
ml-runtrace --version

Python 3.10–3.12 on Windows and Linux is supported.

Highlights

  • ml-runtrace run -- COMMAND... saves a snapshot before starting the exact child argument vector.
  • Capture failure prevents the experiment from starting; child failure keeps the snapshot and returns the child exit code.
  • No implicit shell is inserted, so argument boundaries remain unambiguous.
  • Sanitized PEP 610 provenance records VCS commits, archive hashes, and safe relative subdirectories when available.
  • show and diff expose exact arguments and direct-package provenance.
  • Existing v0.1.0 schema-v1 snapshots remain readable by v0.2.0.

Privacy boundary

URL credentials, queries, fragments, unsafe subdirectories, and local absolute package paths are omitted. Remote hosts, repository paths, revisions, and safe relative subdirectories can still identify private projects, so review local snapshot YAML before sharing it.

Verified release evidence

  • Annotated tag v0.2.0 points to aca08ecefb5d630cba1779438d54f818ad719a18.
  • Final main CI passed all four jobs.
  • Non-publishing Candidate #4 passed tests, Ruff, package metadata, clean-wheel installation, and the offline coexistence audit against that exact commit.
  • Trusted Publishing run passed through the protected pypi environment without a password or API token and uploaded digital attestations.
  • PyPI v0.2.0 identifies both files as Trusted Publishing uploads and binds their attestations to this repository, tag, workflow, and commit.
  • A separate Windows Python 3.12.7 no-cache install from PyPI passed pip check, both entry points, help, and init → run → snapshot → list/show/diff.

SHA-256

b0415a8954edacb446cc847781d01db36c06ee8b2f50288ed255d906d919fd0e  ml_runtrace-0.2.0-py3-none-any.whl
633e52245f466d57fed0c9cd96eaf81f5e5eef04a1b6a40d0834caf253b0426d  ml_runtrace-0.2.0.tar.gz

The attached distributions, SHA256SUMS, and RELEASE_PROVENANCE are the exact retained files from the tag-triggered publishing workflow. See the versioned release notes and changelog for details.

RunTrace v0.1.0

Choose a tag to compare

@Corvus-226 Corvus-226 released this 13 Aug 08:48
db03cb9

RunTrace v0.1.0 is the first public release of a lightweight, local-first CLI for recording and comparing machine-learning experiment context.

Install

python -m pip install ml-runtrace==0.1.0
ml-runtrace --version
python -m ml_runtrace --version

Python 3.10, 3.11, and 3.12 are supported.

Highlights

  • Capture Git commit, branch, detached state, and dirty state.
  • Capture Python, platform, installed distributions, and optional NVIDIA GPU/CUDA metadata.
  • Store validated, human-readable YAML snapshots under .runtrace/runs/.
  • Record optional experiment names, commands, and repository-local YAML configs.
  • List and inspect runs, then recursively compare configuration, Git, runtime, platform, and dependency changes.
  • Work locally without an account, server, database, or automatic upload.

First workflow

ml-runtrace init
ml-runtrace snapshot --name baseline --config configs/train.yaml --command "python train.py --config configs/train.yaml"
ml-runtrace list
ml-runtrace show <run-id>
ml-runtrace diff <baseline-id> <candidate-id>

See the Getting Started guide for a complete walkthrough.

Privacy and scope

RunTrace does not upload source, experiment data, credentials, environment variables, or artifacts. Values explicitly supplied through --config and --command are stored locally and should be reviewed before sharing. RunTrace records reproducibility context; it does not track metrics, host a dashboard, schedule jobs, or store model artifacts.

Release verification

  • Source tag v0.1.0 points to db03cb9999f8428962caa1e62c3bea5df4682b9d.
  • Final non-publishing candidate run 31682370801 passed with zero annotations.
  • Trusted Publishing run 31682596354 passed through the protected pypi environment and generated digital attestations.
  • A clean, no-cache PyPI install passed pip check, both entry points, and an end-to-end init → snapshot → list → show → diff acceptance test.

SHA-256

  • ml_runtrace-0.1.0-py3-none-any.whl: ebed8b75fec1ecda3e2e341278d54197b95cb86f88049ca52dd76885d14931c2
  • ml_runtrace-0.1.0.tar.gz: 1301e8b3555aa82927872af604c3fe5185c19d51556061311f00de3ce4c271a9

The distributions published on PyPI are the exact artifacts from the successful formal publication workflow. Its retained workflow artifact also contains SHA256SUMS and RELEASE_PROVENANCE.