@@ -5,6 +5,117 @@ All notable changes to this project will be documented in this file.
55The format is based on [ Keep a Changelog] ( https://keepachangelog.com/en/1.1.0/ ) ,
66and this project adheres to [ Semantic Versioning] ( https://semver.org/spec/v2.0.0.html ) .
77
8+ ## [ 0.4.5] - 2026-08-21
9+
10+ ### ⚠️ Breaking Changes
11+
12+ - Unify local and release performance workflows
13+ - Require Rust 1.97.1
14+ - Require Rust 1.98.0
15+
16+ ### Merged Pull Requests
17+
18+ - Bump the dependencies group with 3 updates [ #211 ] ( https://github.com/acgetchell/la-stack/pull/211 )
19+ - Bump the github-actions group with 7 updates [ #200 ] ( https://github.com/acgetchell/la-stack/pull/200 )
20+
21+ ### Added
22+
23+ - Persist release report artifacts for rerendering [ ` 600445c ` ] ( https://github.com/acgetchell/la-stack/commit/600445c325ade517631d50a5f625923f56387f1c )
24+
25+ - Store deterministic comparison CSV with an adjacent schema-versioned provenance sidecar before temporary worktrees are removed.
26+ - Render and promote reports only from validated artifact reloads, with fail-closed path checks and transactional rollback.
27+ - Add performance-rerender and document artifact retention, GitHub assets, and the release workflow.
28+ - Refresh Rust, Python, contributor-tool, and GitHub Action pins, and separate Dependabot security update groups.
29+
30+ ### Dependencies
31+
32+ - Bump the github-actions group with 7 updates [ #200 ] ( https://github.com/acgetchell/la-stack/pull/200 )
33+ [ ` 9728daf ` ] ( https://github.com/acgetchell/la-stack/commit/9728dafc026bb2a849bae49feaca6144c5598698 )
34+
35+ ### Fixed
36+
37+ - Enforce pinned uv in local recipe guards [ ` 938aff6 ` ] ( https://github.com/acgetchell/la-stack/commit/938aff62517d5055d1db49bc7734e4069ef74d72 )
38+
39+ - Reject missing or mismatched uv versions with actionable diagnostics.
40+ - Reuse the canonical version guard across uv-backed validation helpers.
41+ - Harden release artifact promotion [ ` 8b8537b ` ] ( https://github.com/acgetchell/la-stack/commit/8b8537b86226285a343976ea987cf2759bf3dd7d )
42+ - Treat CRLF and LF archive reports as equivalent while preserving stored bytes.
43+ - Share comparison selection and report-update guidance across generation paths.
44+ - Isolate artifact path resolution and retained-artifact rendering.
45+ - Clarify that durable benchmark downloads are GitHub Release assets.
46+ - Harden numerical and release evidence [ ` c878701 ` ] ( https://github.com/acgetchell/la-stack/commit/c8787017122c3e94958e82d327fdab8a305999b8 )
47+ - Surface determinant overflow even when error-bound terms underflow.
48+ - Measure complete benchmark operations symmetrically and bind retained reports to atomic, validated provenance.
49+ - Fail closed on inconsistent release metadata, tags, changelog sections, Semgrep annotations, and recorded CPU provenance.
50+ - Align docs.rs feature annotations, citation identifiers, all-target linting, and configurable property-test runs with documented contracts.
51+ - Harden release and validation edge cases [ ` 260afb8 ` ] ( https://github.com/acgetchell/la-stack/commit/260afb85fdc8eaa873bdb64b6d7eae76ab6b9abc )
52+ - Preserve archived changelog bytes during rollback and reject malformed Unreleased headings.
53+ - Match overlapping Semgrep fixture spans deterministically and centralize immutable benchmark provenance handling.
54+ - Document exact matrix/RHS scaling and the power-of-two factor that preserves linear systems.
55+ - [ ** breaking** ] Unify local and release performance workflows
56+ [ ` c601c41 ` ] ( https://github.com/acgetchell/la-stack/commit/c601c4146b01868a29288b7221e413706e3e01c7 )
57+ - Retain local Markdown, CSV, and provenance artifacts while allowing same-version comparisons of tracked changes.
58+ - Exclude untracked files explicitly and isolate the narrowed non-exact comparison bundle.
59+ - Promote distinct-release artifacts through performance-doc and keep performance-release atomic and rollback-capable.
60+ - Render one consolidated table per benchmark suite and reject invalid release publication states.
61+ - Isolate algebraic float fixture scans [ ` 56e848f ` ] ( https://github.com/acgetchell/la-stack/commit/56e848fb3dbbc93f2fd4c0b566d71489c96dc857 )
62+ - exclude intentional algebraic float violations from production Semgrep scans while preserving direct fixture validation
63+ - cover f64 associated-call syntax alongside f32 and receiver forms
64+ - forbid dead-code suppressions and remove blanket allowances from static-analysis fixtures
65+
66+ ### Maintenance
67+
68+ - Gate auto-merge on CodeRabbit approval [ ` 2a37961 ` ] ( https://github.com/acgetchell/la-stack/commit/2a37961ee8c95f2482541910de78680af22bb968 )
69+
70+ - Request one SHA-scoped CodeRabbit review for each Dependabot update.
71+ - Enable squash auto-merge only for the triggering head after required checks pass.
72+ - Group GitHub Actions updates, remove autopep8, and refresh pinned tooling.
73+ - Print an explicit release title in tag-release follow-up guidance.
74+ - [ ** breaking** ] Require Rust 1.97.1 [ ` 99bac26 ` ] ( https://github.com/acgetchell/la-stack/commit/99bac263ae773cc8cb42c418630c8e7dd7d023b8 )
75+ - align contributor, CI, release, and Clippy toolchain baselines
76+ - compile benchmarks with Cargo's warning policy to preserve cache reuse
77+ - publish CodeRabbit's canonical review check for ruleset enforcement
78+ - Restore ruleset-compatible status [ ` 5235365 ` ] ( https://github.com/acgetchell/la-stack/commit/5235365efaf38a0d4035d74a46a7468ad10921d0 )
79+ - publish the legacy CodeRabbit commit status required by the main ruleset
80+ - keep review progress disabled until CodeRabbit can publish the required check run
81+ - Standardize validation and centralize tool pins [ ` 54a7e3a ` ] ( https://github.com/acgetchell/la-stack/commit/54a7e3a8e8a640fa5069d5c07fffbf1c1dfab903 )
82+ - Compose CI from orthogonal leaf validators with one release-profile nextest pass and separate doctests.
83+ - Resolve workflow tooling through the justfile and shared setup action.
84+ - Document focused validation, notebook scope, and Rust 1.97 tooling policy.
85+ - Refresh development tools, security actions, Dependabot schedules, and lockfiles.
86+ - [ ** breaking** ] Require Rust 1.98.0 [ ` 2f9e0a8 ` ] ( https://github.com/acgetchell/la-stack/commit/2f9e0a83c4fd974f34f87f29409cf1eac4da5343 )
87+ - align the MSRV, contributor toolchain, dependency locks, and documented maintenance baseline
88+ - forbid algebraic float operations in numerical kernels to preserve IEEE-754 error and reproducibility contracts
89+ - add a scoped just update workflow with atomic Cargo tool-pin reconciliation
90+ - clean failed changelog and performance staging files without disturbing published artifacts
91+ - Bump the dependencies group with 3 updates [ #211 ] ( https://github.com/acgetchell/la-stack/pull/211 )
92+ [ ` 493068a ` ] ( https://github.com/acgetchell/la-stack/commit/493068ac653724959f7083f34d5c909a496314bd )
93+
94+ Updates the requirements on [ ruff] ( https://github.com/astral-sh/ruff ) , [ ty] ( https://github.com/astral-sh/ty ) and
95+ [ setuptools] ( https://github.com/pypa/setuptools ) to permit the latest version.
96+
97+ Updates ` ruff ` from 0.16.1 to 0.16.2
98+ - [ Release notes] ( https://github.com/astral-sh/ruff/releases )
99+ - [ Changelog] ( https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md )
100+ - [ Commits] ( https://github.com/astral-sh/ruff/compare/0.16.1...0.16.2 )
101+
102+ Updates ` ty ` from 0.0.66 to 0.0.69
103+ - [ Release notes] ( https://github.com/astral-sh/ty/releases )
104+ - [ Changelog] ( https://github.com/astral-sh/ty/blob/main/CHANGELOG.md )
105+ - [ Commits] ( https://github.com/astral-sh/ty/compare/0.0.66...0.0.69 )
106+
107+ Updates ` setuptools ` to 84.0.0
108+ - [ Release notes] ( https://github.com/pypa/setuptools/releases )
109+ - [ Changelog] ( https://github.com/pypa/setuptools/blob/main/NEWS.rst )
110+ - [ Commits] ( https://github.com/pypa/setuptools/compare/v83.0.0...v84.0.0 )
111+
112+ ### Performance
113+
114+ - Reduce checked determinant query overhead [ ` 2bdf1d3 ` ] ( https://github.com/acgetchell/la-stack/commit/2bdf1d3dc4b4a27928a888be678b4c360916e94c )
115+
116+ - Aggregate D≥5 range proofs before a single cold scaled replay.
117+ - Preserve immediate small-dimension fallback and range-safe determinant behavior.
118+
8119## [ 0.4.4] - 2026-07-13
9120
10121### ⚠️ Breaking Changes
@@ -67,6 +178,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
67178 - fail benchmark publication closed on invalid samples or mismatched provenance
68179 - make release and changelog tooling transactional, path-safe, and Windows-portable
69180 - align benchmark CI with pinned local tools and least-privilege publishing
181+ - Harden changelog and version generation [ ` 2e1eb2e ` ] ( https://github.com/acgetchell/la-stack/commit/2e1eb2e965333fab51934c2b605fe3465e4b57e6 )
182+ - Reject tag prefixes embedded in longer non-semver revisions
183+ - Preserve fenced examples when stripping Dependabot metadata
184+ - Document the conditional exact-solve scaling invariant
185+ - Regenerate the v0.4.4 changelog through the release workflow
70186
71187### Maintenance
72188
@@ -775,6 +891,7 @@ Older releases are archived by minor series:
775891- [ 0.2.x] ( docs/archive/changelog/0.2.md )
776892- [ 0.1.x] ( docs/archive/changelog/0.1.md )
777893
894+ [ 0.4.5 ] : https://github.com/acgetchell/la-stack/compare/v0.4.4...v0.4.5
778895[ 0.4.4 ] : https://github.com/acgetchell/la-stack/compare/v0.4.3...v0.4.4
779896[ 0.4.3 ] : https://github.com/acgetchell/la-stack/compare/v0.4.2...v0.4.3
780897[ 0.4.2 ] : https://github.com/acgetchell/la-stack/compare/v0.4.1...v0.4.2
0 commit comments