diff --git a/cli/bash/commands/basectl/subcommands/doctor.sh b/cli/bash/commands/basectl/subcommands/doctor.sh index d5a4099a..1f4e66fd 100644 --- a/cli/bash/commands/basectl/subcommands/doctor.sh +++ b/cli/bash/commands/basectl/subcommands/doctor.sh @@ -237,9 +237,9 @@ base_doctor_run_ci_runtime_text() { fi if [[ -n "$project" ]]; then - base_std_log_info "Base CI doctor found $errors blocking issue(s) for project '$project'." + base_std_log_error "Base CI doctor found $errors blocking issue(s) for project '$project'." else - base_std_log_info "Base CI doctor found $errors blocking issue(s)." + base_std_log_error "Base CI doctor found $errors blocking issue(s)." fi return 1 } @@ -427,9 +427,9 @@ base_doctor_subcommand_main() { fi if [[ -n "$project" ]]; then - base_std_log_info "Base doctor found $errors blocking issue(s) for project '$project'." + base_std_log_error "Base doctor found $errors blocking issue(s) for project '$project'." else - base_std_log_info "Base doctor found $errors blocking issue(s)." + base_std_log_error "Base doctor found $errors blocking issue(s)." fi return 1 } diff --git a/cli/bash/commands/basectl/tests/ci.bats b/cli/bash/commands/basectl/tests/ci.bats index 2b911963..377ef591 100644 --- a/cli/bash/commands/basectl/tests/ci.bats +++ b/cli/bash/commands/basectl/tests/ci.bats @@ -86,6 +86,17 @@ prepare_ci_runtime() { [ "$(cat "$TEST_STATE_DIR/project-setup-ci")" = "true" ] } +@test "basectl doctor --ci logs a blocking summary at error level" { + create_system_python3_stub + create_project_setup_venv_stub "$TEST_HOME/.base.d/base/.venv" + touch "$TEST_STATE_DIR/pyyaml-installed" + + run_base_command OSTYPE=linux-gnu doctor --ci base + + [ "$status" -eq 1 ] + [[ "$output" == *" ERROR "*"Base CI doctor found 1 blocking issue(s) for project 'base'."* ]] +} + @test "basectl setup --ci json output summarizes stderr without embedding log stream" { local workspace="$TEST_TMPDIR/workspace" diff --git a/cli/bash/commands/basectl/tests/doctor.bats b/cli/bash/commands/basectl/tests/doctor.bats index fee57afb..cb17df48 100644 --- a/cli/bash/commands/basectl/tests/doctor.bats +++ b/cli/bash/commands/basectl/tests/doctor.bats @@ -665,7 +665,7 @@ EOF [[ "$output" == *"error"*"Homebrew"*"Homebrew is not installed."* ]] [[ "$output" == *"Fix: Run 'basectl setup' to install Homebrew, or install it manually from https://brew.sh/."* ]] [[ "$output" == *$'\n Fix: Run '\''basectl setup'\'' to install Homebrew, or install it manually from https://brew.sh/.'* ]] - [[ "$output" == *" INFO "*"Base doctor found"*"blocking issue(s)."* ]] + [[ "$output" == *" ERROR "*"Base doctor found"*"blocking issue(s)."* ]] [[ "$output" != *$'\n\n'*"Base doctor found"* ]] }