fix: make the check name part of the checks-list link, not just the status
commit
ef88f5efix: make the check name part of the checks-list link, not just the status
check_list_row only wrapped the status badge in the anchor, so a visitor clicking directly on a check’s name got nothing; the link target sat in the row’s empty space beyond it. The name and badge now render together inside one anchor when there is somewhere to go.
Assisted-by: Claude:claude-sonnet-5
Reviews
No reviews of this commit yet — record a verdict below.
Start a review
crates/git-ents-server/src/web/pages.rs
@@ -1026,8 +1026,7 @@
let href = format!("/{rel}/checks/{head}/{}", check.name);
html! {
div.card-row.signer-row {
- code.key { (check.name) }
- (super::render::check_list_row(outcome, &href))
+ (super::render::check_list_row(&check.name, outcome, &href))
}
}
}
crates/git-ents-server/src/web/render.rs
@@ -267,17 +267,27 @@
html! { span class=(class) { (status.to_string()) } }
}
-/// One check's row on the "Checks on HEAD" card: a status badge, linked to
-/// `href` when there's a live view or a recording behind it, or "no run yet"
-/// when `outcome` is absent (just added, or its run has not landed).
-pub(super) fn check_list_row(outcome: Option<&RunOutcome>, href: &str) -> Markup {
+/// One check's row on the "Checks on HEAD" card: the check's `name` and a
+/// status badge, both part of one link to `href` when there's a live view or
+/// a recording behind it, or "no run yet" when `outcome` is absent (just
+/// added, or its run has not landed).
+pub(super) fn check_list_row(name: &str, outcome: Option<&RunOutcome>, href: &str) -> Markup {
html! {
@match outcome {
- None => span.muted { "no run yet" }
- Some(outcome) if outcome.recording.is_some() || is_in_progress(outcome.status) => {
- a href=(href) { (status_badge(outcome.status)) }
+ None => {
+ code.key { (name) }
+ span.muted { "no run yet" }
+ }
+ Some(outcome) if outcome.recording.is_some() || is_in_progress(outcome.status) => {
+ a.row-link href=(href) {
+ code.key { (name) }
+ (status_badge(outcome.status))
+ }
+ }
+ Some(outcome) => {
+ code.key { (name) }
+ (status_badge(outcome.status))
}
- Some(outcome) => (status_badge(outcome.status))
}
}
}