Canonical points to a redirect
What this means
The rel=canonical target is itself a redirect rather than a final 200 URL. Google has to follow another hop to find the real canonical, and treats the indirection as a weak signal — it may keep this URL, pick the redirect target, or pick a third URL entirely. Canonicals should always name the settled destination.
How to fix it
Point the canonical directly at the URL the redirect resolves to, so the tag names a 200 response with no further hops.
Fix effort
This check needs review: the change can be drafted for you, but a person has to approve the wording or choose the target before it ships.
Authoritative source
https://developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls
Find every page this affects
CrawlX runs this check — and 161 others — across your whole site, ranks the findings by estimated impact, and opens the fixable ones as pull requests. Free for 500 URLs.