fix(ci): unblock nix flake check after clippy 0.1.95 bump (#1368)
The nixpkgs bump to clippy 0.1.95 / cargo 1.95.0 added + strengthened a large batch of lints. CI denied ALL warnings (`-D warnings`) against the `pedantic = warn` workspace lint, so the bump hard-failed `nix flake check` workspace-wide with zero code changes — and would recur on every future clippy bump. Posture fix (the durable part): CI now runs `-D warnings -A clippy::pedantic`, so the default/correctness/style lints stay a hard gate while the "extra, opinionated" pedantic group is advisory only (still `warn` for local `cargo clippy` via the workspace lints table, just non-blocking in CI). `-A` rather than `-W` so the group drop doesn't re-enable the specific pedantic lints the workspace allows (e.g. `must_use_candidate`). Also fixes the genuine DEFAULT/STYLE lints the bump surfaced across the workspace (doc_lazy_continuation, collapsible_if, ptr_arg, match_like_matches_macro, …) via `cargo clippy --fix` + manual stragglers (`too_many_arguments` #[allow] on the host-config constructors), and three tests that had rotted while the CI runner was offline (#1221): - topology::top_level_agents_in_multi_root — hardcoded unsorted expected - rebuild_queue::depends_on_evicted_dep_counts_as_resolved — needs MAX_HISTORY_PER_KIND newer terminals to evict, not one - coordinator::agent_paths doctest — illustrative pseudo-code, now `ignore` Validated: clippy + formatting + cargo-test checks all pass.
This commit is contained in:
parent
35717c7bac
commit
734fe88858
18 changed files with 129 additions and 103 deletions
|
|
@ -108,10 +108,8 @@ fn render_bash_run(id: &str, resp: Result<DaemonResponse>) -> String {
|
|||
match resp {
|
||||
Ok(DaemonResponse::Ok { payload }) => {
|
||||
let finished = payload["finished"].as_bool().unwrap_or(false);
|
||||
if finished {
|
||||
if let Some(task) = payload.get("task") {
|
||||
return format_task(id, task);
|
||||
}
|
||||
if finished && let Some(task) = payload.get("task") {
|
||||
return format_task(id, task);
|
||||
}
|
||||
format!("task started: id={id}")
|
||||
}
|
||||
|
|
|
|||
|
|
@ -69,19 +69,18 @@ async fn dispatch(req: DaemonRequest) -> DaemonResponse {
|
|||
// Inline wait: if requested and the task finishes quickly,
|
||||
// return the full status instead of just the task ID.
|
||||
let wait = wait_seconds.unwrap_or(0);
|
||||
if wait > 0 {
|
||||
if let Some(task) = runner::wait_for_task(&id, wait).await {
|
||||
if matches!(
|
||||
task.status,
|
||||
TaskStatus::Done | TaskStatus::TimedOut | TaskStatus::Interrupted
|
||||
) {
|
||||
return DaemonResponse::ok(&serde_json::json!({
|
||||
"id": id,
|
||||
"finished": true,
|
||||
"task": task,
|
||||
}));
|
||||
}
|
||||
}
|
||||
if wait > 0
|
||||
&& let Some(task) = runner::wait_for_task(&id, wait).await
|
||||
&& matches!(
|
||||
task.status,
|
||||
TaskStatus::Done | TaskStatus::TimedOut | TaskStatus::Interrupted
|
||||
)
|
||||
{
|
||||
return DaemonResponse::ok(&serde_json::json!({
|
||||
"id": id,
|
||||
"finished": true,
|
||||
"task": task,
|
||||
}));
|
||||
}
|
||||
DaemonResponse::ok(&serde_json::json!({ "id": id, "finished": false }))
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue