Repository navigation
Releases: xuanheng-tech/snapshot-runner
Release list
Snapshot Runner v2.5.12
- Complete the GitHub and Gitea default-branch migration to
mainand remove the temporary
masterquality trigger. Historical receipts continue to acceptrefs/heads/master. - Release control: receipts accept
refs/heads/mainand, for releases recorded before the
rename,refs/heads/master. Record recovery checks out the repository default branch. - Docs: explain why Ubuntu 24.04's system Python 3.12.3 is below the verified 3.12.13 floor
(the nestedprepareentry's argument parsing differs and the test suite fails there) and
show auv-managed interpreter for that platform. No package change.
Package: https://pypi.org/project/snapshot-runner/2.5.12/
Package source commit: 26675e92843cb9a4bd9b99a70ff5d4d7e20aa067
Release-control commit: 26675e92843cb9a4bd9b99a70ff5d4d7e20aa067
Build receipt: https://github.com/xuanheng-tech/snapshot-runner/actions/runs/39905134613
Snapshot Runner v2.5.11
- Fixed: repo-status resolves configured upstream names through exact and wildcard
fetch refspecs, including negative exclusions, instead of assuming a remote-name
namespace. Unborn branches and missing tracking refs retain configuration evidence;
absent mappings or merge targets no longer prevent ordinary status collection. - Fixed: ordinary source-file type changes preserve Git's paired delete/add patch
sections in workspace and branch reviews. Duplicate or unrelated patch sections
remain refused, symlink targets are never followed, and a replacement regular file
retains its file context. Existing CSV and attribute-file restrictions remain enforced. - Development: added an opt-in 18-scenario installed-CLI baseline with completeness,
deterministic identity, targeted-read and read-only checks, elapsed time, optional RSS
and output/store byte measurements. Documented the 2.x compatibility policy and the
distinction between patch-section counts and distinct paths.
Package: https://pypi.org/project/snapshot-runner/2.5.11/
Package source commit: 26adfc43a9ec8c089dbe0cbafd5d24c5fb4c4a7b
Release-control commit: 26adfc43a9ec8c089dbe0cbafd5d24c5fb4c4a7b
Build receipt: https://github.com/xuanheng-tech/snapshot-runner/actions/runs/39177193774
Snapshot Runner v2.5.10
- Fixed: capability preflight applies the 255-byte conversion-driver name limit only
tofilteranddiffconfiguration sections. Valid long branch tracking metadata,
including UTF-8 and dotted names, no longer blocks repository evidence collection.
Conversion-driver bounds, unsafe configuration checks and capture limits remain enforced.
Package: https://pypi.org/project/snapshot-runner/2.5.10/
Package source commit: cdd76933144051c32579c5d7e41736aaf870098c
Release-control commit: cdd76933144051c32579c5d7e41736aaf870098c
Build receipt: https://github.com/xuanheng-tech/snapshot-runner/actions/runs/39172622147
Snapshot Runner v2.5.9
- Fixed: capability preflight reads up to 1 MiB of Git configuration key names,
allowing repositories with substantial accumulated branch tracking metadata.
Oversized, failed or truncated reads still refuse collection; unsafe settings
after the previous 64 KiB boundary remain subject to the full preflight.
Package: https://pypi.org/project/snapshot-runner/2.5.9/
Package source commit: d36523ca7a4f5c2ff9134e4c2198634c41d857a4
Release-control commit: d36523ca7a4f5c2ff9134e4c2198634c41d857a4
Build receipt: https://github.com/xuanheng-tech/snapshot-runner/actions/runs/38717635540
Snapshot Runner v2.5.8
- Fixed: branch-review uses the sealed target commit's attributes for both change
classification and unified diffs. Modified, staged, deleted or untracked
.gitattributesfiles in the worktree no longer turn committed text changes into
binary-only evidence. Committed attribute behavior and stored artifact schemas
and security eras remain unchanged.
Package: https://pypi.org/project/snapshot-runner/2.5.8/
Package source commit: 766d7f8a651f6b6fe1d266099a2dcf9cf599f058
Release-control commit: 766d7f8a651f6b6fe1d266099a2dcf9cf599f058
Build receipt: https://github.com/xuanheng-tech/snapshot-runner/actions/runs/37126429240
Snapshot Runner v2.5.7
- Fixed: branch-review includes bounded CSV additions, modifications and supported
renames in its unified diff. CSV versions are validated from the sealed merge-base
and target HEAD with the existing 64 KiB, UTF-8 and regular-file restrictions, so
dirty or missing worktree copies do not affect the evidence. Existing content
sanitization, ordinary CSV file-context gaps and metadata-only branch deletions
retain their behavior; stored artifacts keep their existing schema and security era.
Package: https://pypi.org/project/snapshot-runner/2.5.7/
Package source commit: 28272f90070ef7e8b2c4f73861ded4206a07d725
Release-control commit: 28272f90070ef7e8b2c4f73861ded4206a07d725
Build receipt: https://github.com/xuanheng-tech/snapshot-runner/actions/runs/37049354125
Snapshot Runner v2.5.6
- Release control: recognize premature EOF in declared-length HTTP responses after
bounded reads and reuse the existing incomplete-response classification and safe GET
retry. Partial responses are discarded and closed before another attempt. The 8 MiB
response limit, HTTP framing semantics, write-request boundary and identity checks
retain their existing behavior. Tests exercise real HTTPResponse parsing with
in-memory wire data rather than relying only on injected exceptions.
Package: https://pypi.org/project/snapshot-runner/2.5.6/
Package source commit: e3fb50169ee20ea2a2daf43b1bc20024217a2ad6
Release-control commit: e3fb50169ee20ea2a2daf43b1bc20024217a2ad6
Build receipt: https://github.com/xuanheng-tech/snapshot-runner/actions/runs/37043089148
Snapshot Runner v2.5.5
- Release control: GET requests without a body retry typed timeouts, connection resets
and incomplete responses once, including failures while reading the response. Other
failures and write requests still stop immediately; diagnostics withhold private
details. PyPI propagation polling retains its missing-document-only contract and
bounded attempt count, without rebuilding or reuploading original artifacts.
Package: https://pypi.org/project/snapshot-runner/2.5.5/
Package source commit: cb96258a1d7c8861fb8a922a08ac63656c385a80
Release-control commit: cb96258a1d7c8861fb8a922a08ac63656c385a80
Build receipt: https://github.com/xuanheng-tech/snapshot-runner/actions/runs/37029454956
Snapshot Runner v2.5.4
- Fixed: branch-review captures complete unified diffs beyond the default 2 MiB Git
command bound when they fit the shared 8 MiB snapshot quota. A single global rename
candidate set preserves rename matching and existing patch bytes; metadata and JSON
escaping consume the same quota, and oversized diffs still refuse publication. - Release control: validate selected release notes against the receipt's 1–8192 character
bound before building or writing artifacts, receipts or workflow outputs. Empty note
overrides retain the source changelog fallback.
Package: https://pypi.org/project/snapshot-runner/2.5.4/
Package source commit: dd977a26ad29e7060fe65cff2659f5a7245d1507
Release-control commit: dd977a26ad29e7060fe65cff2659f5a7245d1507
Build receipt: https://github.com/xuanheng-tech/snapshot-runner/actions/runs/37022629648
Snapshot Runner v2.5.3
- Fixed: README contract and artifact declarations match the current producer security
epoch 5. Contract tests compare the documented current schema versions and epoch
with runtime declarations; historical epoch-4 compatibility remains unchanged. - Internal: share context-path count limits across ordinary text, extensionless text
and raster-image evidence, and combine identical prepared branch-context handling.
Path order, quotas, gap wording and canonical snapshot bytes remain unchanged.
Package: https://pypi.org/project/snapshot-runner/2.5.3/
Package source commit: 32e3cf0a6c61ad917033176bf4e812c5c60f3b72
Release-control commit: 32e3cf0a6c61ad917033176bf4e812c5c60f3b72
Build receipt: https://github.com/xuanheng-tech/snapshot-runner/actions/runs/36987587636