Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
59,705 changes: 7,196 additions & 52,509 deletions CHANGELOG.md

Large diffs are not rendered by default.

11 changes: 9 additions & 2 deletions changelog.d/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@ The fork's `CHANGELOG.md` Unreleased block is **rendered**, not edited
directly. Each PR adds one fragment file under one of the
Keep-a-Changelog sections:

```
```text
changelog.d/
added/ new user-discoverable surface
changed/ enhancement to an existing surface
changed/ enhancement to an existing surface (includes perf — name files perf-<topic>.md)
deprecated/ surface marked for removal
removed/ surface deleted
fixed/ bug fix with user-visible delta
Expand All @@ -17,6 +17,13 @@ changelog.d/
section at the next release tag)
```

There is **no `perf/` or `performance/` directory** — the renderer
warns on any non-Keep-a-Changelog subdirectory and skips its
contents. Performance fragments live in `changed/` with a `perf-`
filename prefix so they sort contiguously inside the rendered
`### Changed` section. See [ADR-0892](../docs/adr/0892-conventional-commits-and-changelog-fragment-hygiene.md)
and [ADR-0913](../docs/adr/0913-changelog-renderer-splice-contract.md).

## How to add a fragment

1. Pick the section directory matching your change (Keep-a-Changelog).
Expand Down
2 changes: 0 additions & 2 deletions changelog.d/added/0253-speed-qa-real-impl.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
## Added

- **`speed_qa` real SpEED-QA implementation** (`core/src/feature/speed_qa.c`):
replaces the 0.0-placeholder scaffold with a working spatial and temporal
entropic-differencing extractor per Bampis et al. 2017 (IEEE SPL 24(9)).
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
## Added

- **Tiny-AI Netflix corpus training scaffold — draft PR registration (ADR-0417).**
Opens `ai/tiny-netflix-training-scaffold` as a formal draft PR so the user can
review and confirm architecture choices before triggering a training run against
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/added/0460-integer-vif-enable-chroma.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## `integer_vif`: add `enable_chroma` option
### `integer_vif`: add `enable_chroma` option

`integer_vif` now accepts `enable_chroma` (bool, default `false`). When enabled,
the four-scale VIF pipeline runs on the Cb and Cr planes in addition to luma and
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## vmaf-tune executor: per-shot and saliency execution modes (ADR-0468)
### vmaf-tune executor: per-shot and saliency execution modes (ADR-0468)

`vmaftune.executor` gains two new execution-mode entry-points that extend the Phase F
base execute mode (ADR-0454):
Expand Down
6 changes: 3 additions & 3 deletions changelog.d/added/0530-hip-integer-motion-flag-promotion.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ clip; before this PR the HIP integer_motion path never executed any
HIP code because `compute_fex_flags()` didn't include the HIP slot
and the per-extractor flag bit was cleared.

## What ships
### What ships

- New picture-buffer enum entry `VMAF_PICTURE_BUFFER_TYPE_HIP_DEVICE`
reserved for the future HIP picture pool. Today's HIP TUs accept
Expand Down Expand Up @@ -48,7 +48,7 @@ and the per-extractor flag bit was cleared.
`hip_kernel_sources` map (previously the source file existed but
was not compiled or linked).

## What does NOT ship
### What does NOT ship

`vmaf_fex_integer_vif_hip` was speculatively flagged in its batch-1
commit but crashes with a GPU memory access fault on the first
Expand All @@ -59,7 +59,7 @@ float_motion / float_ssim / float_psnr / cambi / float_adm /
ssimulacra2) stay unflagged pending per-extractor end-to-end
verification.

## ADRs
### ADRs

- [ADR-0530](../docs/adr/0530-hip-feature-flag-promotion-and-picture-buffer.md)
— this change.
Expand Down
2 changes: 0 additions & 2 deletions changelog.d/added/0546-codec-adapter-two-pass-real.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
## Added

- **Real `two_pass_args` for all 14 codec adapters that previously raised
`NotImplementedError`** (ADR-0546). Software adapters `libaom-av1`
and `libvvenc` now run true two-invocation 2-pass via FFmpeg's
Expand Down
2 changes: 0 additions & 2 deletions changelog.d/added/0550-cross-backend-parity-matrix.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
## Added

- **Cross-backend parity matrix** (`docs/research/0550-cross-backend-parity-matrix-2026-05-18.md`):
systematic audit of all 18 CPU feature extractors across SYCL (Intel Arc A380),
CUDA (RTX 4090), and Vulkan on the Netflix 576x324 golden fixture.
Expand Down
4 changes: 1 addition & 3 deletions changelog.d/added/0550-tiny-model-auto-resize.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
## Added

- **`--tiny-resize {bilinear,nearest,bicubic,disabled}` CLI flag** plus
matching public C API `vmaf_dnn_set_resize_mode(ctx, mode)` and
`VmafDnnResizeMode` enum
Expand All @@ -18,7 +16,7 @@
replicate-edge clamping. Bit-identical to `vmaf_tensor_from_luma`
on the no-resize fast path. ADR-0550.

## Fixed
### Fixed

- **NR tiny-model 0-frames footgun (post-fix probe Finding 11)**:
`vmaf --no-reference --tiny-model nr_metric_v1.onnx --distorted
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## MCP P1 surface: vmaf-tune integration, list_extractors, describe_model, progress notifications (ADR-0608)
### MCP P1 surface: vmaf-tune integration, list_extractors, describe_model, progress notifications (ADR-0608)

Five new MCP tools added to `vmaf-mcp`:

Expand Down
2 changes: 0 additions & 2 deletions changelog.d/added/0608-zed-editor-project-config.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
## Added

- **`.zed/` project configuration** — Zed editor parity with `.vscode/` (ADR-0608):
`.zed/settings.json` (clangd LSP, pyright, ruff, shfmt, vmaf-mcp MCP server,
Claude Agent via ACP, file-type associations for CUDA/HIP/Metal/GLSL, telemetry
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/added/0624-fast-nr-prescoring.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## `vmaf-tune --fast-nr`: NR early-elimination for 2–4× bisect wall-time cut
### `vmaf-tune --fast-nr`: NR early-elimination for 2–4× bisect wall-time cut

Added `--fast-nr` flag to `vmaf-tune compare` and `vmaf-tune tune-per-shot`
(ADR-0624, implementing ADR-0615). At each bisect midpoint the cheap
Expand Down
2 changes: 0 additions & 2 deletions changelog.d/added/0687-chug-hdr-held-out-test-validator.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
## Added

- **`ai/scripts/validate_chug_hdr_mos_head.py`**: held-out test-partition
validator for the CHUG HDR MOS head. Loads a CHUG MOS head ONNX, filters
CHUG feature JSONL shards to `split == "test"` rows (552 rows, never used
Expand Down
2 changes: 0 additions & 2 deletions changelog.d/added/adr-0447-motion-hfr-under-report.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
## Added

- **ADR-0447** — documents the decision to correct motion-feature under-reporting
on HFR (50p+) content by applying `motion_fps_weight = clamp(30/fps, 0.25, 4.0)`
across all motion extractor variants (CPU, CUDA, SYCL, Vulkan). Closes Issue #837
Expand Down
2 changes: 0 additions & 2 deletions changelog.d/added/cambi-cross-backend-parity-gate.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
## Added

- **`cambi` in cross-backend parity gate** (`scripts/ci/cross_backend_parity_gate.py`):
adds `cambi` to the `FEATURE_METRICS` and `FEATURE_TOLERANCE` dicts with the metric
name `Cambi_feature_cambi_score` and places=4 tolerance (5e-5). Closes coverage gap
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/added/cuda-resolution-aware-dispatch.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## Added: Runtime resolution-aware CUDA kernel variant dispatch (ADR-0753)
### Added: Runtime resolution-aware CUDA kernel variant dispatch (ADR-0753)

A new `vmaf_cuda_workload_class(w, h)` classifier (`core/src/feature/cuda/resolution_dispatch.{h,c}`)
maps each frame's luma pixel count to `WS_SMALL` (< 720p), `WS_MEDIUM` (720p–4K), or
Expand Down
2 changes: 0 additions & 2 deletions changelog.d/added/dev-cleanup-script.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
## Added

- **`scripts/dev/cleanup-agent-state.sh`**: developer utility that removes
stale agent worktrees (locked with a dead PID) and drops redundant git
stashes (on `master`, detached HEAD, or branches that still exist locally).
Expand Down
6 changes: 3 additions & 3 deletions changelog.d/added/hip-batch1-psnr-ansnr.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Promotes two HIP feature extractors from `-ENOSYS` scaffolds to real
HIP Module API consumers, following the pattern established by PR #612
(`float_psnr_hip`, ADR-0254).

## What ships
### What ships

- **`psnr_score.hip`** — device kernel for `integer_psnr_hip`:
uint64 atomic-SSE reduction, warp-size-64 `__shfl_down` (split into
Expand All @@ -23,7 +23,7 @@ HIP Module API consumers, following the pattern established by PR #612
(`hipcc --genco` + `xxd -i`), mirroring the CUDA `ptx_arrays` pattern.
Controlled by the existing `enable_hipcc` option.

## How to use
### How to use

```bash
# Build with real HIP kernels (requires ROCm 6+ and hipcc in PATH):
Expand All @@ -39,7 +39,7 @@ vmaf --reference ref.yuv --distorted dis.yuv --feature float_ansnr_hip \
--width 1920 --height 1080 --pixel_format 420
```

## Skipped (batch-2 candidates)
### Skipped (batch-2 candidates)

- `float_ssim_hip`: two-pass design with five intermediate device
buffers and three kernel functions — non-trivial ABI adaptation.
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/added/hip-float-adm-real-kernel.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## HIP float_adm real kernel (ADR-0468)
### HIP float_adm real kernel (ADR-0468)

Port the CUDA `float_adm_cuda.c` / `float_adm_score.cu` four-stage DWT+CSF+CM pipeline
to HIP as the ninth kernel-template consumer. Adds `float_adm_hip.c`,
Expand Down
2 changes: 0 additions & 2 deletions changelog.d/added/hip-float-ansnr-enable-chroma.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
## Added

- **`float_ansnr_hip` `enable_chroma` option** (ADR-0453 parity):
`FloatAnsnrStateHip` gains `bool enable_chroma` (default `false`) and
`unsigned n_planes`. When `enable_chroma=true`, the extractor dispatches
Expand Down
2 changes: 0 additions & 2 deletions changelog.d/added/hip-runtime-t7-10b.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
### Added

- HIP (AMD ROCm) backend runtime — flips
`core/src/hip/{common,kernel_template}.c` from the audit-first
`-ENOSYS` scaffold (ADR-0212) to real HIP runtime calls. New
Expand Down
8 changes: 4 additions & 4 deletions changelog.d/added/metal-kernels-t8-1c-k.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Promotes the seven remaining Metal feature-extractor scaffolds from
`-ENOSYS` stubs to functional MSL kernels, following the `integer_motion_v2`
template established in T8-1c.

## What ships
### What ships

- **`float_psnr.metal`** / **`float_psnr_metal.mm`** (T8-1d): per-pixel
`(ref - dis)^2` float accumulation. 8bpc and 16bpc kernel variants.
Expand Down Expand Up @@ -44,14 +44,14 @@ template established in T8-1c.
intermediate blurred planes in MTLBuffers allocated at init. Features:
`float_ssim`, `float_ms_ssim`.

## Key design note: no `atomic_ulong`
### Key design note: no `atomic_ulong`

All kernels use per-WG `float`/`uint` partials arrays — **not** MSL
`atomic_fetch_add_explicit` for 64-bit types, which fails silently on
Apple Silicon (CI run 25685703780 / job 75408804495). Host reduces in
`double`. See `docs/research/0421-metal-kernel-batch-t8-1c-k.md`.

## Build (macOS only)
### Build (macOS only)

```bash
meson setup build libvmaf -Denable_metal=enabled \
Expand All @@ -60,7 +60,7 @@ ninja -C build
meson test -C build test_metal_smoke
```

## Parity gate
### Parity gate

```bash
scripts/ci/cross_backend_parity_gate.py \
Expand Down
2 changes: 0 additions & 2 deletions changelog.d/added/mkdocs-strict-pre-push-hook.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
## Added

- **`scripts/git-hooks/pre-push-mkdocs-strict.sh` — mkdocs strict-mode pre-push gate
([ADR-0466](../docs/adr/0466-mkdocs-strict-pre-push-hook.md)).**
Detects whether a push touches `docs/` or `mkdocs.yml`; skips immediately on
Expand Down
2 changes: 0 additions & 2 deletions changelog.d/added/model-cards-f5-closeout.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
## Added

- **Model cards for 4 previously undocumented tiny-AI checkpoints**
(`docs/ai/models/vmaf_tiny_v1.md`, `vmaf_tiny_v1_medium.md`,
`smoke_v0.md`, `smoke_fp16_v0.md`): closes the ADR-0042 F5 gap
Expand Down
2 changes: 0 additions & 2 deletions changelog.d/added/moment-sve2-port.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
### Added

- **`float_moment` SVE2 SIMD path** (`core/src/feature/arm64/moment_sve2.c`):
the 1st- and 2nd-moment reductions now use the VLA (vector-length-agnostic)
SVE2 f32→f64 widening pattern on Linux aarch64 hosts that expose
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/added/node-rclone-streaming.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## vmafx-node: rclone remote-asset streaming (Phase 4b.5)
### vmafx-node: rclone remote-asset streaming (Phase 4b.5)

`vmafx-node` now bundles rclone and streams reference and distorted video
directly from remote storage (S3, GCS, Azure Blob, SFTP, HTTP, and 70+ other
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/added/perf-bench-multi-resolution.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## Added multi-resolution performance benchmark baseline
### Added multi-resolution performance benchmark baseline

`scripts/perf/bench-multi-resolution.sh` is now the canonical multi-resolution,
multi-backend, multi-metric throughput benchmark for VMAF. It runs across
Expand Down
2 changes: 0 additions & 2 deletions changelog.d/added/speed-python-compat.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
## Added

- **SpEED Python compat wrappers** (`compat/python-vmaf/core/feature_extractor.py`):
ports `SpeedChromaFeatureExtractor` and `SpeedTemporalFeatureExtractor` from
Netflix/vmaf upstream into the compat harness. Both wrap the `speed_chroma` and
Expand Down
2 changes: 0 additions & 2 deletions changelog.d/added/ssim-sycl-enable-chroma.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
## Added

- `float_ssim_sycl`: add `enable_chroma` option (default `false`) and `n_planes`
field to `SsimStateSycl`, mirroring the CUDA twin (PR #950). The v1 kernel
is luma-only; `n_planes` is clamped to 1. Multi-plane dispatch is deferred
Expand Down
2 changes: 0 additions & 2 deletions changelog.d/added/tiny-codec-preset-crf.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
### Added

- **`--tiny-codec` / `--tiny-preset` / `--tiny-crf` CLI flags** populate
the codec one-hot block of codec-aware tiny models (today
`fr_regressor_v2`) so the model receives the real encoder context
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/added/vmaf-neg-flag.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## vmaf-tune: `--neg` flag for VMAF NEG model variants (ADR-0622)
### vmaf-tune: `--neg` flag for VMAF NEG model variants (ADR-0622)

Add a `--neg` flag to `vmaf-tune recommend`, `compare`, `tune-per-shot`,
`ladder`, and `corpus`. When set, the flag routes the VMAF model to the
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## `vmaf-tune auto` — three additional F.1/F.2 short-circuit predicates
### `vmaf-tune auto` — three additional F.1/F.2 short-circuit predicates

Three new short-circuit predicates (#8, #9, #10) are appended to
`SHORT_CIRCUIT_PREDICATES` in `tools/vmaf-tune/src/vmaftune/auto.py`:
Expand Down
2 changes: 0 additions & 2 deletions changelog.d/added/vmaf-use-tiny-model-ctx-attach-test.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
## Added

- **`core/test/dnn/test_vmaf_use_tiny_model.c`**: 5 new unit tests covering
the `vmaf_use_tiny_model()` public ctx-attach entry point, which had zero
C-unit-test coverage (identified in `audit-test-coverage-2026-05-16.md §2`).
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/added/vmafx-binary-and-aliases.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## `vmafx` binary and AI tool aliases (ADR-0690)
### `vmafx` binary and AI tool aliases (ADR-0690)

- Install `vmafx` as a symlink to `vmaf` in the same `bindir` via Meson
`install_symlink()`. No separate binary; one binary, one symlink.
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/added/vmafx-mcp-go.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## vmafx-mcp: Go implementation of the VMAFX MCP server
### vmafx-mcp: Go implementation of the VMAFX MCP server

Added `cmd/vmafx-mcp/` — a single static Go binary that exposes the same 15
MCP tools as the Python `vmaf-mcp` server with byte-for-byte schema parity
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/added/vmafx-netflix-compat.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## `--netflix-compat` flag for legacy-default opt-out (ADR-0696)
### `--netflix-compat` flag for legacy-default opt-out (ADR-0696)

- Add `--netflix-compat` / `--netflix_compat` CLI flag to both the `vmaf` and
`vmafx` binaries.
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/added/vmafx-phase4-foundation.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## VMAFX Phase 4 language-modernization foundation (ADR-0702)
### VMAFX Phase 4 language-modernization foundation (ADR-0702)

- Added Go workspace root (`go.mod`, module `github.com/VMAFx/vmafx`, Go 1.23)
with `pkg/version` package and `go-ci.yml` CI gate.
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/added/vmafx-sys-rust.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## vmafx-sys Rust FFI crate
### vmafx-sys Rust FFI crate

Add `bindings/rust/vmafx-sys` — bindgen-generated raw FFI bindings to libvmaf plus
a thin safe Rust wrapper layer (`vmafx_sys::safe`). The safe layer exposes
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/added/vmafx-tune-go-stage1.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## vmafx-tune-go Stage 1 — Go port of vmaf-tune compare subcommand
### vmafx-tune-go Stage 1 — Go port of vmaf-tune compare subcommand

Adds `cmd/vmafx-tune/` — a Go port of the Python `vmaf-tune` rate-quality
tuning CLI, installed as `vmafx-tune-go` alongside the Python binary.
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/added/vmafx-tune-go-stage2.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## vmafx-tune-go Stage 2 — `ladder` subcommand (per-title ABR bitrate-ladder)
### vmafx-tune-go Stage 2 — `ladder` subcommand (per-title ABR bitrate-ladder)

Adds `vmafx-tune-go ladder` — the per-title ABR bitrate-ladder generator,
porting the Python `vmaf-tune ladder` Phase E algorithm to Go.
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/added/vulkan-pipeline-cache-persistence.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## Vulkan backend: persistent `VkPipelineCache` (ADR-0445)
### Vulkan backend: persistent `VkPipelineCache` (ADR-0445)

The Vulkan compute backend now persists its compiled pipeline cache to
`$XDG_CACHE_HOME/libvmaf/vulkan-pipeline-cache.bin` across process
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/changed/0546-hip-cuda-orphan-tu-cleanup.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## chore(feature): delete orphan HIP/CUDA TUs (ADR-0546)
### chore(feature): delete orphan HIP/CUDA TUs (ADR-0546)

Removed 6 dead/orphan translation units found by a deep audit of
`core/src/feature/hip/` and `core/src/feature/cuda/`:
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/changed/aiutils-vmaftune-corpus-dedup.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## Deduplicate file-hash and UTC-timestamp helpers in vmaf-tune corpus
### Deduplicate file-hash and UTC-timestamp helpers in vmaf-tune corpus

`tools/vmaf-tune/src/vmaftune/corpus.py` previously contained private inline
implementations of `_sha256_of` (streaming SHA-256 file hash) and `_utc_now_iso`
Expand Down
2 changes: 0 additions & 2 deletions changelog.d/changed/bump-cuda-13.3-r610-local.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
## Changed

- **CUDA toolkit pin bumped to 13.3** (`dev/Containerfile`):
`cuda-toolkit-13-2` → `cuda-toolkit-13-3` (13.3.0-1 from NVIDIA ubuntu2404
apt repo, GA 2026-05-28). Minimum host driver updated to R610.43.02 (Linux
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/changed/ci-concurrency-and-shell-strict.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## chore(ci): add concurrency groups + shell-strict to curl|tar steps
### chore(ci): add concurrency groups + shell-strict to curl|tar steps

Adds top-level `concurrency:` blocks with `cancel-in-progress: true` to three
CI workflows that lacked them, so stale runs are cancelled when a new push or
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/changed/ci-slim-down-v2.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## CI matrix slimmed to 1 build per OS + state-of-the-art sanitizers (ADR-0710)
### CI matrix slimmed to 1 build per OS + state-of-the-art sanitizers (ADR-0710)

`libvmaf-build-matrix.yml` (15 build rows post-ADR-0689) is replaced by
`build.yml` with three matrix rows:
Expand Down
2 changes: 0 additions & 2 deletions changelog.d/changed/claude-md-t7-5-cleanup.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
### Changed

- **CLAUDE.md §12 r12**: dropped the stale "T7-5 NOLINT sweep is pending"
paragraph since PR #327 (refactor pass) and PR #388 (citation closeout,
ADR-0278) discharged that backlog item; every NOLINT in tree now carries
Expand Down
2 changes: 0 additions & 2 deletions changelog.d/changed/codeql-c-bulk-sweep-2026-05-09.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
### Changed

- CodeQL C bulk sweep: fixed 60 of 78 deferred alerts across 18 upstream-mirror
files. Categories addressed: `cpp/integer-multiplication-cast-to-long` (44 of
44 alerts; widening cast prefixed on the LHS operand before multiplication),
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/changed/cpp23-wave-adversarial-review.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## chore(review): adversarial code review — C++23 wave (PRs #41–#58)
### chore(review): adversarial code review — C++23 wave (PRs #41–#58)

Read-only adversarial review of the cpp23 conversion wave. Found 4 CRITICAL, 2 HIGH,
10 MEDIUM, 3 LOW issues across all 9 PRs. Key findings:
Expand Down
Loading
Loading