refactor(metrics): centralize registry and lifecycle tracking - #446
Merged
zijiren233 merged 10 commits intoAug 25, 2026
Conversation
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
nightly-2026-08-25-D warningsCompatibility
Nightly memory regression
The failed CI jobs were terminated by the runner while compiling
synctv-api-http(SIGTERM, exit 143). Local peak-RSS measurements for that crate were:nightly-2026-08-21nightly-2026-08-25, global next solvernightly-2026-08-25,-Znext-solver=coherenceRust enabled
-Znext-solver=globallyby default on nightly in rust-lang/rust#160619. The same memory blow-up is tracked in rust-lang/rust#161748, and the official tracking issue documents-Znext-solver=coherenceas the temporary opt-out. The workspace now applies that option in.cargo/config.toml.The Dockerfile previously set
RUSTFLAGSfor linker options, which overrode the workspace configuration and re-enabled the global solver inside image builds. It now usescargo rustcto pass linker flags only to the final binary, preserving the workspace solver setting for every crate.All rustc
#![recursion_limit = "256"]attributes were removed. The default limit passes with the coherence-only solver, confirming that a higher recursion limit was unrelated to the CI termination.Validation
make build-workspacemake clippy-check(--workspace --all-targets -- -D warnings)cargo check --locked -p synctv-api-httpcargo check --locked -p synctv-api-common -p synctv-api-grpccargo test -p synctv-api-common --lib(655 passed, 165 Docker tests ignored)cargo test -p synctv-core metrics --lib(9 passed)make fmt-checkdocker build --check .make validate-helmactionlint .github/workflows/ci.yml .github/workflows/helm-ci.ymlnpm run validateindocs(124 pages, 353 links, Astro 0 errors/warnings)