fix: Improve profile tracing coverage (#12936)
## Why
Profiles should make it clear where time goes during `turbo run`,
including cleanup and early-return paths. A few run phases were either
represented as unexplained gaps or skipped profile markdown generation
entirely.
## What
Adds tracing coverage for remote cache status resolution, remote cache
preflight, signal-handler shutdown, and final log flushing. Also shares
profile finalization so no-task `turbo run --profile` invocations
generate the markdown summary.
## How
Verified with profiled local runs covering normal execution, dry-run,
graph, summarize, JSON logging, only, parallel, affected, and no-task
paths. Also added profile tests for the new spans and no-task markdown
generation.
Tested with:
- `cargo test -p turbo --test profile_test`
- pre-push hooks (`format`, `check:toml`, Rust checks)