Skip to content

Conversation

Cristhianzl
Copy link
Member

@Cristhianzl Cristhianzl commented Oct 13, 2025

This pull request updates the Slack notification logic in the nightly build workflow to provide more accurate reporting of build status. Notifications will now consider the results of both frontend and backend tests, in addition to the release build, ensuring that failures and successes are communicated only when all relevant jobs have completed.

Workflow notification improvements:

  • The slack-notification job now depends on frontend-tests and backend-unit-tests jobs, in addition to release-nightly-build, so notifications reflect the status of all critical jobs.
  • Failure notifications are sent if any of the dependent jobs (release-nightly-build, frontend-tests, or backend-unit-tests) fail, rather than only the release build.
  • Success notifications are sent only if the release build succeeds and both the frontend and backend tests succeed or are skipped, ensuring that a successful notification is only sent when all jobs complete successfully.

Summary by CodeRabbit

  • Chores
    • Enhanced nightly build notifications to reflect the combined status of frontend tests, backend unit tests, and the release process.
    • Improved success and failure criteria to reduce false positives/negatives in alerts.
    • Ensures notifications are sent even when some jobs fail, providing clearer visibility into nightly build outcomes.
    • Streamlined notification logic for more accurate and timely updates in Slack.

…frontend and backend test results in the notification logic.
@Cristhianzl Cristhianzl self-assigned this Oct 13, 2025
Copy link
Contributor

coderabbitai bot commented Oct 13, 2025

Important

Review skipped

Auto incremental reviews are disabled on this repository.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Walkthrough

Updates the GitHub Actions nightly workflow to adjust the Slack notification job: expands its dependencies to include frontend and backend tests, refines the job-level condition using always(), and updates success/failure step conditions to account for outcomes across the three prerequisite jobs.

Changes

Cohort / File(s) Change summary
Nightly workflow and Slack notifications
.github/workflows/nightly_build.yml
Slack notification job now needs [frontend-tests, backend-unit-tests, release-nightly-build]; job if: uses always() with combined success/failure checks; failure step triggers on any dependent job failing; success step requires release-nightly-build success and tests success or skipped.

Sequence Diagram(s)

sequenceDiagram
    autonumber
    actor GH as GitHub Actions Runner
    participant FE as frontend-tests
    participant BE as backend-unit-tests
    participant REL as release-nightly-build
    participant SLK as slack-notification

    GH->>FE: Run job
    GH->>BE: Run job
    GH->>REL: Run job

    Note over SLK: needs: FE, BE, REL<br/>if: always() with combined checks

    FE-->>GH: result (success/failure/skipped)
    BE-->>GH: result (success/failure/skipped)
    REL-->>GH: result (success/failure)

    GH->>SLK: Evaluate job condition

    alt Any failure among FE/BE/REL
        SLK->>Slack: Send failure notification
    else REL success AND FE, BE are success or skipped
        SLK->>Slack: Send success notification
    else Other outcomes
        SLK->>Slack: No notification sent
    end
Loading

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Suggested labels

lgtm

Suggested reviewers

  • jordanrfrazier

Pre-merge checks and finishing touches

✅ Passed checks (7 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title Check ✅ Passed The title “ci: Improve Slack notifications for nightly build status” succinctly describes the primary change by indicating an enhancement to the CI workflow’s Slack notifications and references the nightly build context, making it clear and directly related to the modifications in the pull request. It avoids unnecessary detail and focuses on the main objective from a developer’s perspective.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
Test Coverage For New Implementations ✅ Passed Inspection of the PR diff shows that only the GitHub Actions workflow file .github/workflows/nightly_build.yml is modified to adjust Slack notification conditions, and no application code, backend modules, or frontend components are introduced or changed; consequently there are no new behaviors requiring unit or integration tests and no test files are added or renamed, so the absence of new tests is appropriate for this CI-only update.
Test Quality And Coverage ✅ Passed The pull request only updates the GitHub Actions nightly build workflow to adjust Slack notification dependencies and conditions without introducing or modifying application code, so there is no new functionality requiring automated tests. Because no backend or frontend logic changed, the existing test suite remains unaffected and no additional test coverage is needed for this CI-only update.
Test File Naming And Structure ✅ Passed Only the GitHub Actions workflow file .github/workflows/nightly_build.yml is modified in this pull request, and no backend, frontend, or integration test files are added or altered, so there is nothing new to evaluate against the specified test naming and structural requirements; the existing repository state remains unchanged by this PR, leaving the custom check inapplicable but effectively satisfied.
Excessive Mock Usage Warning ✅ Passed Changed files contain no tests, so there is no evidence of excessive mock usage introduced or modified by this pull request, and the existing workflow change does not affect how tests use mocks.

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 and usage tips.

…tter assertion capabilities

💡 (Basic Prompting.spec.ts): add a temporary test to check assertion functionality
…ertion to improve test readability and maintainability
…d improve test stability

📝 (actionsMainPage-shard-1.spec.ts): Add expect statement to intentionally fail a test for demonstration purposes
Copy link
Contributor

github-actions bot commented Oct 13, 2025

Frontend Unit Test Coverage Report

Coverage Summary

Lines Statements Branches Functions
Coverage: 11%
10.94% (2890/26409) 4.56% (926/20272) 6.5% (372/5721)

Unit Test Results

Tests Skipped Failures Errors Time
1200 0 💤 0 ❌ 0 🔥 13.754s ⏱️

Copy link

codecov bot commented Oct 13, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 24.76%. Comparing base (a5b1511) to head (3fda56b).
⚠️ Report is 1 commits behind head on main.

❌ Your project check has failed because the head coverage (48.71%) is below the target coverage (55.00%). You can increase the head coverage or adjust the target coverage.

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##             main   #10244   +/-   ##
=======================================
  Coverage   24.76%   24.76%           
=======================================
  Files        1090     1090           
  Lines       40108    40108           
  Branches     5550     5550           
=======================================
  Hits         9934     9934           
  Misses      30003    30003           
  Partials      171      171           
Flag Coverage Δ
frontend 10.09% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

… on CI environment

♻️ (actionsMainPage-shard-1.spec.ts): remove unnecessary import and assertion in test case
@github-actions github-actions bot added the lgtm This PR has been approved by a maintainer label Oct 13, 2025
…y depend on the release-nightly-build job result
Copy link

@ogabrielluiz ogabrielluiz added this pull request to the merge queue Oct 13, 2025
github-merge-queue bot pushed a commit that referenced this pull request Oct 13, 2025
* 🔧 (nightly_build.yml): Update Slack notification workflow to include frontend and backend test results in the notification logic.

* ✅ (Basic Prompting.spec.ts): add expect function to test suite for better assertion capabilities
💡 (Basic Prompting.spec.ts): add a temporary test to check assertion functionality

* 🔧 (nightly_build.yml): update Slack notification condition to trigger on specific job results

* ✨ (Basic Prompting.spec.ts): remove unnecessary expect import and assertion to improve test readability and maintainability

* ✨ (playwright.config.ts): Set retries to 0 to disable test retries and improve test stability
📝 (actionsMainPage-shard-1.spec.ts): Add expect statement to intentionally fail a test for demonstration purposes

* 🔧 (playwright.config.ts): update retries configuration to retry tests on CI environment
♻️ (actionsMainPage-shard-1.spec.ts): remove unnecessary import and assertion in test case

* 🔧 (nightly_build.yml): Simplify success notification condition to only depend on the release-nightly-build job result
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Oct 13, 2025
@ogabrielluiz ogabrielluiz added this pull request to the merge queue Oct 13, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Oct 13, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

lgtm This PR has been approved by a maintainer

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants