Repository navigation
Conversation
lusoris
enabled auto-merge (squash)
May 29, 2026 10:26
lusoris
disabled auto-merge
May 29, 2026 11:43
lusoris
marked this pull request as draft
May 29, 2026 11:43
lusoris
force-pushed
the
chore/release-please-draft-mode-wt
branch
2 times, most recently
from
May 29, 2026 14:04
a0949ff to
8a4b316
Compare
Set `"draft": true` in `release-please-config.json` root package so the next release PR opens as a draft, requiring manual review before merge. Prevents an unintended `4.0.0` major bump caused by three incorrectly marked breaking commits (PR #52, #80, #108). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
lusoris
force-pushed
the
chore/release-please-draft-mode-wt
branch
from
May 29, 2026 15:31
8a4b316 to
6ea0651
Compare
lusoris
marked this pull request as ready for review
May 31, 2026 13:37
Contributor
Author
|
Superseded by master after merge marathon 2026-05-31. |
Contributor
Author
|
Superseded by #520 — bundled per 2026-06-01 triage. |
lusoris
added a commit
that referenced
this pull request
Jun 2, 2026
lusoris
added a commit
that referenced
this pull request
Jun 2, 2026
…-24.04 pin + #173 Renovate grouping + #183 release-please draft) (#520) * chore(ci): nightly workflow audit — remove redundant TSan, fix retention + Python ver (ADR-0793) Three targeted fixes surfaced by a periodic nightly-CI audit: 1. Remove the `tsan` job from nightly.yml. sanitizers.yml already fires TSan on every push to master (ADR-0710); the daily cron duplicate burned ~45 runner-minutes/night for zero additional signal. 2. Add explicit `retention-days` to both nightly artifacts: 14 d for the clang-tidy-full-report (diagnostic value expires quickly) and 30 d for nightly-benchmark-results (one month of period-over-period comparisons). Both previously defaulted to GitHub's 90-day retention. 3. Fix `python-version: "3.14.5"` → `"3.12"` in nightly-bisect.yml. Python 3.14 is a pre-release alpha series with no stable release; the step name ("Set up Python 3.12") was correct and the version string was wrong. This would cause the job to fail trying to download a non-existent release. No functional changes to test coverage. All nightly signal is preserved. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * chore(ci): pin ubuntu-latest to ubuntu-24.04 across all non-Docker runners (ADR-0802) Replace floating `ubuntu-latest` runner alias with `ubuntu-24.04` across 15 workflow files to prevent silent toolchain drift when GitHub promotes the alias to Ubuntu 26.04 (expected H2 2026). Add ADR-0802 documenting the pin policy. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * chore(deps): Renovate — Go/Cargo grouping, off-hours schedule, PR-cap (ADR-0812) - Global schedule: "at any time" → "before 6am on weekdays" (Europe/Vienna); vulnerability alerts retain their existing "at any time" override. - Add gomod packageRule: minor+patch grouped, auto-merged Monday mornings; major individual, manual review. - Add cargo packageRule: same group-and-automerge pattern; major manual. - prConcurrentLimit: 12 → 10 (Go grouping reduces PR count per cycle). - ADR-0812 documents the decision and alternatives. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * chore(release): set release-please draft mode for manual version review Set `"draft": true` in `release-please-config.json` root package so the next release PR opens as a draft, requiring manual review before merge. Prevents an unintended `4.0.0` major bump caused by three incorrectly marked breaking commits (PR #52, #80, #108). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * chore(ci): add bundle CHANGELOG fragment for CI workflow hygiene PRs #141 #165 #173 #183 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Lusoris <lusoris@pm.me>
lusoris
added a commit
that referenced
this pull request
Jun 12, 2026
…s, empty-except) (#870) * fix(codeql): resolve py/unused-import, py/unnecessary-lambda, and related Python note alerts (batch 1) Fixes 32 py/unused-import, 10 py/unnecessary-lambda, 4 py/unused-local-variable, 1 py/repeated-import, and 1 py/import-and-import-from CodeQL alerts: - Remove unused imports: asyncio/math/Path (test_mcp_hardening_wave1.py), tempfile (test_result_store.py), MagicMock (test_cross_validation.py), patch (test_result.py), patch+Result (test_quality_runner.py), np+FeatureExtractor (test_feature_assembler.py), AsyncMock+patch module-level (test_coverage_round3.py), os+shutil (test_server.py), subprocess (test_coverage_round2.py, test_probe_backend_pr850.py), patch (test_mcp_p0_adr0608.py), svmutil from libsvm (quality_runner.py), repeated asyncio (test_probe_backend_pr850.py). - Fix py/import-and-import-from in quality_runner.py: consolidate `import vmaf` + `from vmaf import` into a single from-import; add model_path to the import list and replace vmaf.model_path() calls with the direct name. - Mark plt re-export in compat/python-vmaf/__init__.py with # noqa: F401 so CodeQL sees it is intentional; add type: ignore for the None fallback assignment. - Fix py/unnecessary-lambda: replace `lambda p: Path(p)` with Path directly in test_http_transport.py, test_coverage_round{2,3,4}.py, test_http_transport_round5.py. - Fix py/unused-local-variable: remove unused fake_payload (test_mcp_p0_adr0608.py), rename unused registry to _registry (test_coverage_round3.py), remove unused _fake_event_wait function (test_http_transport_round5.py). Skipped (genuine false positives / intentional patterns): - run_testing.py imports with # noqa: F401 + side-effect comment: intentional registration. - misc.py sleep re-export with # noqa: F401: downstream callers import sleep from here. - test_iserror_invariant.py aiohttp/prometheus_client: optional-dep probes with noqa. - test_smoke_e2e.py pytest_asyncio: needed for asyncio mode, already has noqa. - train_test_model.py `== None`: numpy element-wise comparison; is None is incorrect there. - test_tools_misc.py Child class: class definition IS the test side-effect; CodeQL FP. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(codeql): resolve py/empty-except alerts — add explanatory comments to all silent except-pass blocks All 6 open CodeQL py/empty-except alerts (alerts #183–188, #338) are addressed: - compat/python-vmaf/config.py: OSError on temp-file removal during download cleanup - mcp-server/…/http_transport.py: CancelledError + KeyboardInterrupt on event-loop shutdown - mcp-server/…/server.py (_describe_model): JSONDecodeError/OSError on malformed model JSON - mcp-server/…/server.py (progress-token extraction): LookupError/AttributeError when called outside request context - mcp-server/…/server.py (JSON-RPC parse error): bare Exception on unparseable stdin line - mcp-server/…/server.py (ladder/tune-per-shot): JSONDecodeError fallback to raw stdout - mcp-server/…/tests/test_coverage_round2.py: replace try/except/pass with contextlib.suppress per SIM105; add contextlib import, remove unused subprocess import Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(codeql): ruff cleanup after cherry-pick — remove stale noqa, fix import ordering Remove two unused `# noqa: PLW0603` directives from server.py (PLW0603 was not in the ruff enabled-ruleset, making them RUF100 violations) and fix ruff I001 import-ordering in test_coverage_round3.py (formatter blank-line normalisation after local patch/AsyncMock imports were added to resolve the conflict with the batch-1 cherry-pick). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Lusoris <lusoris@pm.me> Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
"draft": trueinrelease-please-config.jsonfor the root package so the next release PR opens as a DRAFT, requiring manual review before merge.4.0.0major bump by adding a human gate to catch mislabelled breaking commits.Breaking-commit analysis (the problem this fixes)
The current
3.0.0-lusoris.0baseline has 5 commits with!markers. Three are incorrectly tagged:feat(core)!: drop Vulkan backendlibvmaf_vulkan.hpublic header + CLI flags removedfeat!: sunset legacy native build modesfix(cuda)!: wrap __global__ kernels in extern "C"feat!: sunset VmafLegacyQualityRunnerfix(cuda)!: remove committed conflict markerNet: 2 of 5
!markers are genuine breaking changes. The other 3 are implementation-level changes that were labelled breaking by mistake.Recommended version on review
3.1.0-lusoris.0— both genuine breaking changes (Vulkan drop, LegacyRunner removal) are fork-local extensions with no upstream Netflix/vmaf counterpart. The fork has not bumped its upstream-tracking MAJOR; jumping to4.0.0would misrepresent the relationship tonetflix/vmaf v3.x.When you un-draft the release-please PR, edit the version in
CHANGELOG.mdand.release-please-manifest.jsonfrom4.0.0to3.1.0before merging.Why not
"versioning": "always-bump-minor"?That would permanently mask future real majors.
"draft": trueadds exactly one manual review gate per release without changing the versioning algorithm — the maintainer can still accept4.0.0if a future MAJOR is genuinely warranted.Reproducer
Deep-dive deliverables (ADR-0108)
changelog.d/changed/release-please-draft-mode.mddocs/rebase-notes.mdentry added (no rebase impact: release-tooling-only)Bug-status hygiene (ADR-0165)
no state delta: no bug opened or closed.
Netflix golden-data gate
assertAlmostEqualvalues modified.🤖 Generated with Claude Code