Skip to content

fix(ci): provider-health workflow shouldn't fail on missing .ca/ (#487)#497

Merged
justn-hyeok merged 1 commit intomainfrom
fix/487-provider-health-ci
Apr 20, 2026
Merged

fix(ci): provider-health workflow shouldn't fail on missing .ca/ (#487)#497
justn-hyeok merged 1 commit intomainfrom
fix/487-provider-health-ci

Conversation

@justn-hyeok
Copy link
Copy Markdown
Collaborator

Problem

Every weekly provider-health cron was creating a spurious `Provider health check failed` issue. Latest: #487 (2026-04-20).

Root cause: `doctor --live` runs its base environment checks first — including `.ca/ directory` and `Config file` — and treats missing state as failure. Those checks are correct for a user's local machine but wrong in CI: the workspace intentionally ships without `.ca/` (it's gitignored), so the run always fails regardless of actual provider availability.

Fix

Workflow writes a minimal stub `.ca/config.json` before invoking `doctor --live`. Stub mirrors the Groq-based shape used by `review.yml`'s fallback branch — 1 reviewer + moderator + head.

Now the cron's exit code reflects only the live provider pings, which is what the check was supposed to measure in the first place.

Alternatives considered

  • New `--providers-only` flag on `doctor` that skips env checks — cleaner API but ~50 LOC change vs 15 LOC here, and CLI users never hit this path
  • Delete the workflow — dubious signal anyway, but nice to keep a smoke test against real APIs

Test plan

The weekly provider-health cron was creating spurious "bug" issues
every run because \`doctor --live\` treats a missing .ca/ directory
and config file as failures. Those checks are meaningful for user
environments but not in CI — the workspace legitimately ships without
.ca/ (it's gitignored).

Write a minimal stub config before invoking doctor so the env checks
pass. The workflow's exit code now reflects only the live provider
pings — which is what the cron is actually supposed to measure.

Config mirrors the Groq-based shape already used by review.yml's
fallback branch.
@github-actions github-actions Bot added the size/S <50 lines label Apr 20, 2026
Copy link
Copy Markdown
Contributor

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ CodeAgora: ACCEPT

no issues | 5 reviewers

No findings or discussions were raised, and there are no critical, warning, or unresolved issues to evaluate. Based on the available review evidence, there is nothing indicating a blocking defect or ambiguous risk, so the change appears safe to merge.


CodeAgora · Session: 2026-04-20/001

@justn-hyeok justn-hyeok merged commit ef3741a into main Apr 20, 2026
5 checks passed
@justn-hyeok justn-hyeok deleted the fix/487-provider-health-ci branch April 20, 2026 13:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/S <50 lines

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Provider health check failed (2026-04-20)

1 participant