Skip to content

test(scheduler): close #1541's 99% coverage regression on main - #1551

Closed
seonghobae wants to merge 4 commits into
mainfrom
fix-scheduler-coverage-gap
Closed

test(scheduler): close #1541's 99% coverage regression on main#1551
seonghobae wants to merge 4 commits into
mainfrom
fix-scheduler-coverage-gap

Conversation

@seonghobae

@seonghobae seonghobae commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

Root cause

Protected main at 44a3c740f7c46c06e7500174d4127413f3f581eb carries a 99% scripts/ci coverage regression introduced by merged #1541 (fix(governance): dispatch failed-check RCA directly). The same missing lines reproduce from protected main alone; this branch closes that central regression rather than adding a member-repository workaround.

Canonical consolidation

This PR is the canonical root owner after fresh patch comparison and ordinary stacking:

The resulting current delta is five files: the two canonical scheduler test modules, the direct-RCA regression module, CHANGELOG.md, and docs/product-technical-gap-baseline.md.

Covered missing paths

  • scripts/ci/pr_review_fix_scheduler.py::inspect_pr: conflicted draft and conflicted unauthorized-for-auto-resolution returns;
  • scripts/ci/pr_review_merge_scheduler.py::fetch_workflow_names_by_check_suite_rest: pagination, missing workflow-name filtering, permission-denied empty-map behavior, and unrelated failure propagation;
  • direct failed-check RCA arbitration remains distinct from conflict arbitration and is recorded in executable regression/traceability evidence.

Evidence boundary

The pre-stack local evidence on the original root commit showed 100% scripts/ci coverage and 100% docstrings, but it is predecessor evidence after #1548 merged into this branch. Current-head hosted checks and review must be regenerated and are the only landing evidence.

The latest Devin inline item on current head is informational (draft and conflict cases reach distinct gates) and its review thread is resolved. It is not an independent approval. A current-head OpenCode review has been requested once; do not spam unchanged reviewer work.

Merge gate

Merge only through ordinary protected governance after the unchanged current exact head has every live required check terminal-success, zero valid unresolved findings/threads, and a qualifying independent non-author approval satisfying the live last-push rule. Queued, in-progress, skipped-required, failed, predecessor-head, protected-base, author/self, model-only, synthetic, or administrative-bypass evidence is non-passing. Do not weaken coverage, review, or security gates to land this repair.


Devin Review

main currently sits at 99% coverage (fail_under = 100), not caused by this
branch: pr_review_fix_scheduler.py's inspect_pr() has two unexercised
skip paths for a conflicted PR (draft, and not-authorized-for-repair), and
pr_review_merge_scheduler.py's fetch_workflow_names_by_check_suite_rest()
(added by #1541, never directly tested) has no coverage for a non-
permission RuntimeError propagating, a row with a check_suite_id but no
workflow name being skipped, or pagination continuing past a full page.
Verified the same 99% gap reproduces on origin/main alone before writing
these tests. Carried onto this branch so #1537 can pass its own 100%
coverage gate without waiting on a separate fix PR to merge first; also
opening that fix directly against main.
@coderabbitai

coderabbitai Bot commented Sep 1, 2026

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 16 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Team

Run ID: a908a1ff-557a-4be6-a123-57320383ecce

📥 Commits

Reviewing files that changed from the base of the PR and between 5686de4 and ae1106b.

📒 Files selected for processing (34)
  • .github/workflows/noema-review.yml
  • .github/workflows/opencode-review-dispatch.yml
  • .github/workflows/opencode-review.yml
  • .github/workflows/pr-review-autofix.yml
  • .github/workflows/strix.yml
  • CHANGELOG.md
  • docs/adr/0003-contextual-orchestrator-vendored-free-zdr.md
  • docs/adr/0005-sidecar-preflight-token-budget.md
  • docs/product-technical-gap-baseline.md
  • scripts/ci/contextual_orchestrator_review_launcher.py
  • scripts/ci/contextual_orchestrator_review_sidecar.sh
  • scripts/ci/noema_review_gate.py
  • scripts/ci/opencode_review_receipt_gate.py
  • scripts/ci/pr_review_fix_scheduler.py
  • scripts/ci/run_opencode_review_model_pool.sh
  • scripts/ci/strix_quick_gate.sh
  • scripts/ci/test_strix_quick_gate.sh
  • tests/test_contextual_orchestrator_review_runtime_preflight.py
  • tests/test_contextual_orchestrator_sidecar_unbounded_wait_contract.py
  • tests/test_github_hourly_conflict_repair.py
  • tests/test_noema_orchestrator_workflow_contract.py
  • tests/test_noema_review_gate.py
  • tests/test_opencode_agent_contract.py
  • tests/test_opencode_model_pool_runner.py
  • tests/test_opencode_required_verdict_regression.py
  • tests/test_opencode_review_receipt_gate.py
  • tests/test_pr_review_autofix_nvidia_nim_contract.py
  • tests/test_pr_review_fix_hourly_contract.py
  • tests/test_pr_review_fix_scheduler.py
  • tests/test_pr_review_fix_scheduler_direct_rca_regressions.py
  • tests/test_pr_review_merge_scheduler.py
  • tests/test_repository_branch_coverage_review_schedulers.py
  • tests/test_required_workflow_queue_contract.py
  • tests/test_strix_backend_unavailable_after_exempted_finding.py

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Note

This report is out of date. Scroll down for Devin Review's latest report on this PR.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no bugs or issues to report.

Devin Review

devin-ai-integration[bot]

This comment was marked as resolved.

@seonghobae
seonghobae enabled auto-merge (squash) September 1, 2026 05:35

Copy link
Copy Markdown
Contributor Author

@opencode-agent review exact head c858ee4065dbda73b38150c95b635c0db7266a39. #1548 has been stacked into this branch, so the current five-file delta now contains both the missing scheduler/merge-scheduler coverage regressions and the CHANGELOG + docs/product-technical-gap-baseline.md G-13 traceability. The latest Devin item is informational and resolved. Do not transfer predecessor-head review evidence.

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Devin Review found 0 new potential issues.

Devin Review

Copy link
Copy Markdown
Contributor Author

Superseded by #1554 after #1546 merged to protected main. During an attempted non-force two-parent synchronization of this pre-#1546 branch, compare immediately exposed that the candidate merge commit reused the stale branch tree and would have omitted the newly merged #1546 review-control-plane files. Protected main was never modified. I repaired this branch with a forward child commit using the exact protected-main tree; main@5686de41... vs current branch now reports files=[] and behind_by=0, so this PR intentionally carries no effective source delta. #1554 was created directly from current protected main with only the five scheduler regression cases that remain the intended coverage closure. No checks/reviews from this PR transfer.

@seonghobae seonghobae closed this Sep 1, 2026
auto-merge was automatically disabled September 1, 2026 06:09

Pull request was closed

seonghobae pushed a commit that referenced this pull request Sep 1, 2026
Adds a dated traceability entry for the coverage gap this PR closes:
root cause (#1546's uncovered additions plus the older #1547/#1551/
#1554 gap, neither of which merged or transfers evidence here), the
fix and its verification, the resolved Devin false-positive on
sub-clause coverage, and the known pre-existing SIGPIPE test flake
left unremediated as out of scope.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants