- Actions moved to their latest majors: checkout v4->v7, cache v4->v6
(restore/save too), upload-artifact v4->v7, download-artifact v4->v8,
action-gh-release v2->v3. rust-cache and rust-toolchain already track
their latest majors.
- vcpkg caches now save under a per-run key and restore through
`restore-keys` (newest entry for the exact manifest first, then the
newest entry for that OS): saving can no longer fail because the key
already exists ("update if present, create if not"), and a manifest
change reuses vcpkg's content-addressed archives instead of rebuilding
every port.
- Every Test step gets an explicit 40-minute bound. macOS had no watchdog
at all (the Linux/openKylin scripts carry their own) and the current run
has been sitting in Test with no progress; a hung suite now fails the
step instead of running to the job timeout.