Skip to content

Conversation

@hanabi1224
Copy link
Contributor

@hanabi1224 hanabi1224 commented Dec 16, 2025

Summary of changes

@LesnyRumcajs please update the repo setting to make tests not requried.

Changes introduced in this pull request:

  • disable debug tests as they do the same as codecov tests

Reference issue to close (if applicable)

Closes

Other information and links

Change checklist

  • I have performed a self-review of my own code,
  • I have made corresponding changes to the documentation. All new code adheres to the team's documentation standards,
  • I have added tests that prove my fix is effective or that my feature works (if possible),
  • I have made sure the CHANGELOG is up-to-date. All user-facing changes should be reflected in this document.

Summary by CodeRabbit

  • Chores

    • Simplified CI by removing redundant/no-op test jobs and streamlining workflows.
    • Release pipeline now skips draft pull requests so release tests run only for ready PRs.
    • Coverage step updated to surface failures instead of ignoring them.
  • Tests

    • Split test flow to run documentation-related tests separately and added dedicated doc-test steps.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 16, 2025

Walkthrough

Removed the tests job from .github/workflows/unit-tests.yml, expanded the tests-release job with additional steps and conditional draft-pr check, removed the no-op override_unit_tests job from .github/workflows/docs-required-override.yml, and added test-docs / test-release-docs targets and adjusted codecov behavior in the Makefile.

Changes

Cohort / File(s) Change Summary
GitHub Actions — unit tests workflow
​.github/workflows/unit-tests.yml
Deleted the entire tests job. Modified tests-release job: added draft PR guard, added steps (Show IP, checkout, cache restore, setup sccache, setup-go, install nextest), split make test-release into make test-release-docs then make test-release, and introduced additional cache/hash-related steps and multiline run blocks.
GitHub Actions — docs override workflow
​.github/workflows/docs-required-override.yml
Removed the no-op override_unit_tests job and its full job block (name, runs-on, needs, if, steps).
Build Configuration / Makefile
Makefile
Added test-docs and test-release-docs targets (doctest-focused targets) and updated codecov target to remove --ignore-run-fail, so cargo llvm-cov failures now propagate.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20–30 minutes

  • Inspect .github/workflows/unit-tests.yml — verify tests-release new steps, draft PR condition, cache keys, and that removing tests doesn't break other workflow dependencies.
  • Confirm .github/workflows/docs-required-override.yml — ensure no other workflows reference the removed job.
  • Review Makefile additions (test-docs, test-release-docs) for correctness (flags, profiles) and verify removing --ignore-run-fail in codecov is intentional.

Possibly related PRs

Suggested reviewers

  • akaladarshi
  • sudo-shashank

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'fix(ci): disable debug tests' accurately describes the main change: removing the debug tests job from CI workflows and reorganizing test execution.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch hm/no-ci-debug-test

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

@hanabi1224 hanabi1224 marked this pull request as ready for review December 16, 2025 16:26
@hanabi1224 hanabi1224 requested a review from a team as a code owner December 16, 2025 16:26
@hanabi1224 hanabi1224 requested review from akaladarshi and sudo-shashank and removed request for a team December 16, 2025 16:26
@hanabi1224 hanabi1224 force-pushed the hm/no-ci-debug-test branch 2 times, most recently from 3646ef3 to 5213709 Compare December 16, 2025 16:37
@codecov
Copy link

codecov bot commented Dec 16, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 50.67%. Comparing base (08b2e2c) to head (6b2cd27).

Additional details and impacted files

see 10 files with indirect coverage changes


Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 08b2e2c...6b2cd27. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Makefile Outdated

test-release:
cargo nextest run --cargo-profile quick --workspace --no-fail-fast
cargo nextest run --release --workspace --no-fail-fast
Copy link
Member

Choose a reason for hiding this comment

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

why not the quick profile?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

To align with #6344

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@LesnyRumcajs switched back to quick profile as discussed.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (1)
.github/workflows/unit-tests.yml (1)

64-66: Confirm sequential execution is intentional.

The commands run sequentially, so make test-release will be skipped if make test-release-docs fails. This fail-fast behavior is efficient but means you won't discover issues in test-release until test-release-docs passes.

If both test suites should always run (for complete visibility), consider using set +e or running them in separate steps:

-      - run: |
-          make test-release-docs
-          make test-release
+      - name: Run release doc tests
+        run: make test-release-docs
+        env:
+          RUSTFLAGS: "-C linker=clang -C link-arg=-fuse-ld=lld"
+      - name: Run release tests
+        run: make test-release
         env:
-          # To minimize compile times: https://nnethercote.github.io/perf-book/build-configuration.html#minimizing-compile-times
           RUSTFLAGS: "-C linker=clang -C link-arg=-fuse-ld=lld"
📜 Review details

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 3646ef3 and 57b2cf5.

📒 Files selected for processing (3)
  • .github/workflows/docs-required-override.yml (0 hunks)
  • .github/workflows/unit-tests.yml (1 hunks)
  • Makefile (1 hunks)
💤 Files with no reviewable changes (1)
  • .github/workflows/docs-required-override.yml
🚧 Files skipped from review as they are similar to previous changes (1)
  • Makefile
🧰 Additional context used
🧠 Learnings (1)
📓 Common learnings
Learnt from: hanabi1224
Repo: ChainSafe/forest PR: 6074
File: src/rpc/methods/chain.rs:55-56
Timestamp: 2025-09-17T11:32:44.185Z
Learning: In the Forest codebase, hanabi1224 prefers that CodeRabbit should not warn about potential compilation issues (such as Send bounds, async/await compatibility, etc.) since they are already guarded by CI tests. Focus should be on higher-level design and logic issues instead.
Learnt from: hanabi1224
Repo: ChainSafe/forest PR: 5946
File: src/rpc/methods/state.rs:1459-1463
Timestamp: 2025-08-19T11:25:56.710Z
Learning: hanabi1224 prefers that CodeRabbit should not warn about compilation errors in the Forest codebase since they are already guarded by CI tests. Focus should be on higher-level design and logic issues instead.
Learnt from: hanabi1224
Repo: ChainSafe/forest PR: 5930
File: build.rs:64-77
Timestamp: 2025-08-13T09:43:20.301Z
Learning: hanabi1224 prefers hard compile-time errors in build scripts rather than runtime safeguards or collision detection, believing it's better to fail fast and fix root causes of issues like malformed snapshot names.
Learnt from: hanabi1224
Repo: ChainSafe/forest PR: 6057
File: src/cli/subcommands/f3_cmd.rs:0-0
Timestamp: 2025-09-09T10:37:17.947Z
Learning: hanabi1224 prefers having default timeouts (like 10m for --no-progress-timeout) to prevent commands from hanging indefinitely, even when the timeout flag isn't explicitly provided by users. This fail-fast approach is preferred over requiring explicit flag usage.
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (7)
  • GitHub Check: cargo-publish-dry-run
  • GitHub Check: Build MacOS
  • GitHub Check: Build Ubuntu
  • GitHub Check: Coverage
  • GitHub Check: All lint checks
  • GitHub Check: Build forest binaries on Linux AMD64
  • GitHub Check: tests-release
🔇 Additional comments (1)
.github/workflows/unit-tests.yml (1)

40-40: The draft PR guard is working as designed and does not prevent test feedback.

The workflow explicitly triggers on ready_for_review (line 13), so tests will run when developers mark the PR ready for review—not skipped entirely. The draft guard simply conserves runner resources for unfinished drafts. No changes needed.

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.

3 participants