syntaqxA run that is still going offers Cancel run, and not the re-runs, on every page of it. Which buttons a run's page shows is worked out in one place (runControls, lib/run-controls.ts): the run is going while its latest attempt is, as the attempt list's last entry says, whichever attempt the page shows, and on the latest attempt a job that has not finished (waiting for the jobs it needs, held for an environment's approval, queued for a runner, running) keeps it going whatever the run's own status says. So an earlier attempt's page, and its ?job= links, offer Cancel run while a later attempt runs, where they offered nothing, and keep refreshing until it ends; the re-runs show only on the latest attempt of a finished run. A page left open on a finished run asked for nothing and heard nothing when the run was re-run from somewhere else (the API, the MCP tool, another tab): it kept showing the attempt that had ended, with its Re-run buttons and no Cancel run, until a job of the new attempt started or finished. A re-run now tells pages open on the run, as a job starting or finishing does. The run view's status for its current attempt is read by one function (shown_status), with tests that a job queued for a self-hosted runner leaves its run in progress and a job held at an environment makes it wait. The Actions guide says when Cancel run shows.73a1fc9History
- ..
- about.rs
- archive_links.rs
- backups.rs
- blame.rs
- catch_up.rs
- coalesce.rs
- commit_file.rs
- contributors.rs
- diff.rs
- drift.rs
- fallback.rs
- forks.rs
- git_http.rs
- git_ops.rs
- hidden_refs.rs
- import.rs
- land.rs
- languages.rs
- last_commits.rs
- lib.rs
- license.rs
- lifecycle.rs
- limits.rs
- listing.rs
- meters.rs
- mirror.rs
- moves.rs
- namespaces.rs
- pack_cache.rs
- pack_limits.rs
- push_checks.rs
- push_commits.rs
- refs.rs
- refs_cache.rs
- registry.rs
- resilience.rs
- rule_facts.rs
- rules.rs
- run_access.rs
- secret_scan.rs
- shards.rs
- shared.rs
- signatures.rs
- stats.rs
- store.rs
- test_merge.rs
- transfer.rs
- workflow_gate.rs