The ADS compliance check relies on the condition
`github.pull_request.base.ref == 'true'`, but this variable just doesn't
exist. There's no `pull_request` under the `github` context, so this ADS
compliance check never worked.
If we want this check, we can add it later as part of the
`client-build.compliance.js` script. Here's a PoC for the record, based
on the intention I interpreted:
```javascript
function doADSCheck({core, github, context, affectedFiles}) {
const filesForADSCheck = affectedFiles.filter(f => (f.status === "added" || f.status === "modified") && f.filename.startsWith("app/client/src/"));
const violatedFiles = new Set();
for (const f of filesForADSCheck) {
const content = fs.readFileSync(f.filename, "utf8");
if (content.match(/(color|Color).*#|border.*#|(color|Color).*"/)) {
violatedFiles.add(f.filename);
}
}
if (violatedFiles.size === 0) {
return;
}
const body = [
"🔴 Below files are not compliant with ADS. Please fix and re-trigger ok-to-test",
...Array.from(violatedFiles).sort().map(f => "1. " + f),
].join("\n");
github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: prNumber,
body,
});
}
```
/test sanity
We have a check when running Cypress tests to ensure that no new `.js`
files are added under Cypress folder. This PR moves this check to a
separate JS file. There's another check that does some ADS compliance,
which I'll port in a follow-up PR.
Why am I hitting on this? One, to move away from `umani/changed-files`
workflow, which has randomly failed for us in the past, and id doesn't
do so much special for us anyway. Two, this workflow is the last usage
of `APPSMITH_CI_TEST_PAT` secret, so I should be able to remove that
secret as well. One less secret.
## Description
By default the value of overwrite is false. In previous versions of
upload-artifact, this setting was implicit and true. Making this change
to fix the error `Failed to CreateArtifact: Received non-retryable
error: Failed request: (409) Conflict: an artifact with this name
already exists on the workflow run` in Github actions.
## Automation
/ok-to-test tags=""
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!CAUTION]
> If you modify the content in this section, you are likely to disrupt
the CI result for your PR.
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
Adds support for a `/test` command, without breaking the existing
`/ok-to-test` habits.
This is a _sloppy_ version of `/ok-to-test`. Turns out humans are
sloppy. So let's embrace the human. 🤯
Example incantation:
```
/test sanity workflow
```
The sloppy parser at work:

Of course, if a PR body contains `/ok-to-test`, that takes precedence,
and any `/test` is ignored.
We're also moving the logic of parsing the tags to a separate Javascript
file. It's still not in a form that's easily testable, perhaps, but I
hope this is a start for us to get to a "unit-tested CI". ❤️
---------
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
## Description
> [!TIP]
> _Add a TL;DR when the description is longer than 500 words or
extremely technical (helps the content, marketing, and DevRel team)._
>
> _Please also include relevant motivation and context. List any
dependencies that are required for this change. Add links to Notion,
Figma or any other documents that might be relevant to the PR._
Fixes #`Issue Number`
_or_
Fixes `Issue URL`
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags=""
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!CAUTION]
> If you modify the content in this section, you are likely to disrupt
the CI result for your PR.
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
---------
Co-authored-by: yatinappsmith <84702014+yatinappsmith@users.noreply.github.com>
The step to get the PR number when run manually has error in its code.
The `res=` line doesn't work, in that it'll mangle the JSON output from
the `curl` command, before setting it into the variable. It should've
been
```sh
res="$(curl ...)"
```
Considering we don't use this functionality today, and it doesn't work
either, we're removing it.
This workflow is only used with `repository_dispatch`, and we make that
explicit.
1. Add validation for the tag before building the image or doing
anything. This is strict case-sensitive validation, that will allow only
three numbers in the version, and the first number has to be a single
digit. Support for `-beta` versions is also being removed, as we just
don't use it. Thanks to removing this, we'll build the `latest` and
`v1.2.3` images together, instead of building two separate images.
2. The server and client are reading version from `version` key in
`info.json`, but RTS is reading it from `githubRef` key in `info.json`.
This discrepancy is debt, and has no reason to exist. We fix RTS to also
read the version from the `version` field.
Why are we doing this? [Slack
conversation](https://theappsmith.slack.com/archives/C0341RERY4R/p1714098736865219?thread_ts=1714066995.288859&cid=C0341RERY4R).
1. Change usage of ports bound to 3000, 5000 and 8000 to 4200, which
will be the canonical port for TED in the future.
2. Switch to using TED's native git repo management APIs, instead of the
Gitea compatibility layer.
3. Remove code from GitHub ages.
/ok-to-test tags="@tag.Sanity, @tag.Git"<!-- This is an auto-generated
comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8785291879>
> Commit: b38f4eb388716f7fcfc2a032d788c2ebb951568b
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8785291879&attempt=2"
target="_blank">Click here!</a>
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Enhanced Git integration by shifting from GitHub to Gitea for
repository operations in test environments.
- Updated URLs and endpoints across various test scripts and data
fixtures to align with new configurations.
- **Tests**
- Modified test scenarios to reflect changes in Git operations and URL
configurations.
- **Chores**
- Updated CI workflows by replacing old secrets with new ones for better
configuration management.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Update Storybook and related dependencies
- Delete the stories for old widget components
- Rewrite stories for new widgets(mdx to tsx)
Note: local chromatic doesn't work because of this
https://github.com/storybookjs/storybook/issues/22531
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced new component stories across various packages to enhance
design system documentation and user experience.
- **Documentation**
- Updated `.gitignore` files to optimize version control settings for
Storybook and build logs.
- **Refactor**
- Modified UI element positioning in Storybook theming for improved
layout management.
- **Style**
- Adjusted CSS properties for the `Select` component to ensure better
visual presentation.
- **Chores**
- Updated dependencies and scripts in package configurations to maintain
up-to-date development tools.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
This changes to publish TED's canonical app port, `4200`.
What's wrong with the currently used ports?
57f63003ef/app/app.ts (L18-L20)
Quoting here:
> 8000, // Past static webserver port, to be removed, after switching to
4200, clashes with CloudServices on CI.
> 5000, // Past Postgraphile port, to be removed, after switching to
4200, clashes with macOS AirDrop.
> 3000, // Past Gitea port, to be removed, after removing Gitea, because
it clashes with `yarn start` in Appsmith.
/ok-to-test tags="@tag.Sanity"
## Description
Add a check to validate PRs
Fixes #`32763`
## Automation
/ok-to-test tags=""
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!CAUTION]
> If you modify the content in this section, you are likely to disrupt
the CI result for your PR.
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Integrated a new workflow step to validate tags in pull requests,
providing guidance for corrections and halting the workflow if tags are
incorrect.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
This is to make it apparent what TED tag was used to run a workflow, so
that runs that happened with an unstable (non `latest`) tag of TED
aren't taken seriously.
Change TBP Schedule
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Chores**
- Modified the schedule for running the workflow to trigger every 6
hours instead of every 3 hours on weekdays.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
> [!TIP]
> _Add a TL;DR when the description is longer than 500 words or
extremely technical (helps the content team)._
>
> _Please also include relevant motivation and context. List any
dependencies that are required for this change. Add links to Notion,
Figma or any other documents that might be relevant to the PR._
This is a maintenance fix that removes the warnings in our CI runs to
make it more readable.
Refer:
https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/
> [!WARNING]
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._
## Automation
/ok-to-test tags="@tag.Sanity"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!IMPORTANT]
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/8386795331>
> Commit: `2b1bfe7ed505ad9ba67bfe9211d50ebabb8ea0ce`
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8386795331&attempt=1"
target="_blank">Click here!</a>
> All cypress tests have passed 🎉🎉🎉
<!-- end of auto-generated comment: Cypress test results -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Chores**
- Updated DockerHub login action across multiple workflows to version 3
for enhanced security and performance.
- Updated various GitHub Actions to newer versions in different
workflows for improved compatibility and performance.
- Modified file path pattern in a workflow step for consistency and
clarity.
- Updated setup actions for Java to version 4 for better Java
environment setup.
- Updated setup-node version in a workflow and adjusted comments for
Cypress test results.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- update node version and appropriate git workflow
- added the path to webpack cache folder, this should speed up bundle
creation about a minute
[Test, build and push Docker
Image](https://github.com/appsmithorg/appsmith/actions/runs/8421752151)
[Build Client, Server & Run only
Cypress](https://github.com/appsmithorg/appsmith/actions/runs/8421752151)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Chores**
- Updated actions/cache and actions/setup-node to v4 across various
workflows for improved caching and Node.js setup.
- Modified the `yarn install` command to use `--immutable` flag,
enhancing dependency management.
- **Documentation**
- Updated comments within workflows to include cautionary and important
notes, ensuring better clarity.
- **Refactor**
- Adjusted caching paths and keys for more efficient caching behavior.
- Changed Node.js installation to version 20.11.1 in Dockerfile,
aligning with the latest version for better performance and security.
- **Tests**
- Modified assertion in `getCurrentLocationSaga` test to check for the
presence of a property, improving test accuracy.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Aman Agarwal <aman@appsmith.com>
With this, we should be able to set the image tag (`latest` or `nightly`
for example), to be used for the TED run for Cypress tests.
Unless we already have a different method to run Cypress with nightly
TED, this should give us that flexibility.
In testing we saw that updating `ci-test-result` has a chance of failing
if the correct check is not found.
When we are creating the `ci-test-result` check via the Github Api, it
successfully marked the PR check with the result. It did not seem to
have any issue even if a `ci-test-result` job already existed
By removing the logic of finding an existing check of the same name, and
always creating the check, we assume this will improve the PR check
updates
fixes: #31601
The current `TestResultLoggerExtension` extension only finds failed
tests from the server module, and not from any of the plugin or other
modules.
To fix this, this PR collects failed tests using the Surefire XML test
reports already generated by the `mvn test` command.
## Description
- This PR does some clean up of comments - in DeployHelper.ts
- This PR replaced external image api with TED mock api in
ServerSide/OnLoadTests/OnLoadActions_Spec.ts
- Extrenal example api to TED in Widgets/Image/Image_spec.js
- Extrenal api links in
app/client/cypress/e2e/Regression/ServerSide/ApiTests/API_Bugs_Spec.js
to TED api's
- Flaky fixes /ServerSide/LoginTests/LoginFailure_spec.js - for EE CI
run failure (Added multiple Dynamic checks)
- support command.js method LoginUser() - added Dynamic check
- Encapsulated Datasources/Arango_Basic_Spec.ts into conditional check
to run in CE alone, instead of entirely skipping, since its failing in
EE due to chrome crash
#### Media
#### Type of change
- Script fix (non-breaking change which fixes an issue)
## Testing
#### How Has This Been Tested?
- [X] Cypress CI runs
## Checklist:
#### QA activity:
- [X] Added `Test Plan Approved` label after Cypress tests were reviewed
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Tests**
- Updated Cypress regression tests to use flower images instead of cat
images for API calls.
- Modified limited test configurations to run with different spec files.
- Adjusted GitHub Actions workflow to change `matrix_count` values based
on the event type and retrieve PR number for manual triggers.
- Updated Docker image tag in CI tests to `nightly`.
- **Refactor**
- Enhanced `DataManager` class with new properties for flower image
URLs.
- Improved `EntityExplorer` class method to ensure more reliable
triggering of events.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
#### PR fixes following issue(s)
Fixes # (issue number)
#### Media
#### Type of change
- New feature (non-breaking change which adds functionality)
## Testing
#### How Has This Been Tested?
- [X] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
#### Test Plan
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Chores**
- Introduced a new step in the CI/CD pipeline to trigger an automated
analysis workflow.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
This should show the failed test list in the GitHub actions summary so
we don't have to load the _extremely large_ full log file of the server
tests, just to see the list of tests that failed.
Show the commit SHA in the version popup, instead of a snapshot version
number like `v1.11-SNAPSHOT`. But if the version number doesn't have a
`-SNAPSHOT` at the end, we show the version number as is. So if it's
`v1.12`, we show that instead of the commit SHA.

## Description
> Modified the message thrown when no tests ran from
`It seems like there are some failures 😔. We are not able to recognize
it, please check this manually`
to
` It seems like no tests ran 😔. We are not able to recognize it, please
check workflow`
#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Chores**
- Improved messaging for test failure scenarios to clarify when no tests
have been run.
- Updated the link for checking the workflow status.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Fixing minor syntax issues when notifying on Slack on failure of the Test build Docker workflow.
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Chores**
- Improved Slack notification messages by adjusting link formatting.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- This PR includes the flaky fixes of the below specs:
- jsEditor.NavigateToNewJSEditor() using TS helpers (Addressing
flakyness in specs /BugTests/JS_Bug29131_spec.ts,
BugTests/invalidLintError_Spec.ts,
ClientSide/BugTests/JS_Bug28764_Spec.ts,
/ClientSide/BugTests/Bug29566_Spec.ts,
ServerSide/JsFunctionExecution/JSFunctionExecution_spec.ts)
- /Widgets/ListV2/Listv2_onItemClick_spec.js (toast validation updated
to ts helper)
- /Apps/MongoDBShoppingCart_spec.ts (Flaky fix 2nd case)
- /Regression/Apps/PromisesApp_spec.js (1st test)
- /ClientSide/OtherUIFeatures/ApplicationURL_spec.js (whole spec for
static wait removal + flaky fixes)
- /ClientSide/Templates/Fork_Template_spec.js (complete spec fixes,
cypress exception fix)
- /Sanity/Datasources/Arango_Basic_Spec.ts (3rd test)
- /ServerSide/OnLoadTests/JSOnLoad2_Spec.ts (8th case flaky fix)
- /ClientSide/MobileResponsiveTests/AutoFillWidgets_Reflow_spec.ts (2nd
testcase, flow update)
- /ClientSide/OtherUIFeatures/Resize_spec.js (import update)
- /ClientSide/Templates/Fork_Template_spec.js (1st & 3rd for flaky fix,
removed 2nd - redundant check)
- /Git/GitSync/RepoLimitExceededErrorModal_spec.js flaky fix for EE repo
failure
- /ServerSide/ApiTests/API_Bugs_Spec.js (3rd case, removed waits, moved
to TED Api)
- /Apps/EchoApiCMS_spec.js (removed redundant action)
- /AppNavigation/Sidebar_spec.ts, /AppNavigation/TopInline_spec.ts,
/AppNavigation/TopStacked_spec.ts - added refresh calls for CI flakyness
- homePage.RenameWorkspace() & homePage.NavigateToHome() &
homePage.Signout() - removed static wait, added dynamic check
- homePage.CreateNewApplication() - removed static wait
- homePage.CreateAppInWorkspace() - removed commented code
- homePage.CreateNewWorkspace() - logic improved
- agHelper.AssertURL() - added timeout, removed static wait, calling
assertHelper.AssertDocumentReady()
- Few of agHelper methods timeout & error mesg text update
- cy.Signup() - updated validations
- agHelper.CheckForErrorToast() to agHelper.FailIfErrorToast() - method
name
- /ClientSide/BugTests/DSDiscardBugs_spec.ts - removed unnecessary
method call
#### Type of change
- Script fix (non-breaking change which fixes an issue)
## Testing
#### How Has This Been Tested?
- [X] Cypress CI runs
## Checklist:
#### QA activity:
- [X] Added `Test Plan Approved` label after all changes were reviewed
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Enhanced timeout handling across various helper methods for improved
stability.
- Streamlined interactions with UI elements using updated helper
methods.
- Adjusted test suites to utilize configuration values for consistency.
- **Tests**
- Temporarily disabled specific test suites to address current issues.
- Updated test assertions and interaction patterns for clarity and
reliability.
- Added new test cases and assertions to cover additional
functionalities.
- **Chores**
- Updated workflow variables for more efficient CI processes.
- Curated the list of limited tests to focus on critical test scenarios.
- **Documentation**
- Clarified test descriptions and intentions for better understanding.
- **Bug Fixes**
- Fixed UI element interactions to prevent test flakiness and improve
user experience.
- Implemented page refresh before application imports to ensure clean
state for tests.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Chores**
- Updated GitHub workflow to include PostgreSQL client installation
steps.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Scheduled TBP workflow to run 4 times a day with 3hrs interval
- Made changes in TBP workflow to run all the steps only while running
with schedule or manual workflow trigger
- Added condition to run ci-test and ci-test-result only during schedule
or manual workflow run.
#### Type of change
- Workflow changes
## Testing
>
#### How Has This Been Tested?
- [x] CI Run
>
>
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Chores**
- Updated the workflow schedule for Docker image build tests to run at
new times: 7:00 AM, 10:00 AM, 1:00 PM, and 4:00 PM IST on weekdays.
- Modified conditional triggers in the CI pipeline to exclude jobs from
running on push events.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
> Added: **step** - Add suggestion in the PR on using @tag.All in
workflow `.github/workflows/integration-tests-command.yml`
> This will post a comment in the PR to use specific tags.
#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)
## Testing
> tested with tbp
#### How Has This Been Tested?
- [ ] Manual
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Integration tests now suggest using specific tags for more efficient
testing.
- Docker image build tests prompt for using `@tag.All` when appropriate,
with a link to documentation for guidance.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
fix server test rerun
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Chores**
- Updated workflow to ensure test extraction step runs when certain
tests fail.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
> Added step to check if @tag.All mentioned is as expected, if not throw
a message to use `/ok-to-test tags="@tag.All"` and exit the run
#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)
## Testing
> TBP with tags
#### How Has This Been Tested?
- [x] Manual
- [x] TBP
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
The existing bullet-point list is still valid and does not need to be
updated.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
fix empty commit failures for server build
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Chores**
- Updated the server build workflow to allow commits with empty
messages.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Added restore cache from git for client build
#### Type of change
- New feature (non-breaking change which adds functionality)
## Testing
Tested in local fork
#### How Has This Been Tested?
- [X] Manual
- [ ] JUnit
- [ ] Jest
- [ ] Cypress
## Checklist:
#### Dev activity
- [X] My code follows the style guidelines of this project
- [X] I have performed a self-review of my own code
- [X] I have commented my code, particularly in hard-to-understand areas
- [X] I have made corresponding changes to the documentation
- [X] My changes generate no new warnings
- [X] I have added tests that prove my fix is effective or that my
feature works
- [X] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Optimized the client build workflow to trigger only on relevant
changes or specific events, ensuring resource-efficient operations.
- **Chores**
- Updated workflow conditions to improve the CI/CD process, enhancing
overall development efficiency.
- **Documentation**
- Provided triage instructions to streamline the handling of workflow
changes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
Add Caching support for Client Build
#### PR fixes following issue(s)
#### Type of change
- New feature (non-breaking change which adds functionality)
## Testing
#### How Has This Been Tested?
Tested in a fork
## Checklist:
#### Dev activity
- [X] My code follows the style guidelines of this project
- [X] I have performed a self-review of my own code
- [X] I have commented my code, particularly in hard-to-understand areas
- [X] I have made corresponding changes to the documentation
- [X] My changes generate no new warnings
- [X] I have added tests that prove my fix is effective or that my
feature works
- [X] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Implemented caching for release builds to enhance performance.
- **Chores**
- Updated workflow to ensure successful status updates during build
processes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
> Added excludeForAirgap tgs
#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)
## Testing
> running tbp
> /ok-to-test tags="@tag.excludeForAirgap"
#### How Has This Been Tested?
- [ ] Manual
- [ ] Cypress
>
>
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Test Enhancements**
- Improved test descriptions and added relevant tags for better
categorization and filtering across various test suites.
- Consolidated test logic and descriptions for clarity and coherence in
test suites.
- **Bug Fixes**
- Updated test cases to reflect accurate scenarios for bugs and feature
testing.
- Adjusted test sequences and assertions for enhanced reliability and
coverage.
- **Refactor**
- Restructured test suites for a more logical flow and clearer
objectives.
- Enhanced test setup steps and assertions for comprehensive validation.
- **Chores**
- Implemented a new tagging functionality for organizing test suites and
cases.
- Added new tags to the tagging system for improved test management.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Added checks for scheduled changes
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Updated the workflow to trigger certain actions on a scheduled basis
as well as other specified events.
- **Documentation**
- No changes in public API documentation required.
- **Chores**
- Triage process remains unchanged.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Chores**
- Updated the build process to use a new self-hosted deployment runner
with enhanced resources.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
added changes to skip server incase of no changes
#### PR fixes following issue(s)
#### Type of change
- New feature (non-breaking change which adds functionality)
## Checklist:
#### Dev activity
- [X] My code follows the style guidelines of this project
- [X] I have performed a self-review of my own code
- [X] I have commented my code, particularly in hard-to-understand areas
- [X] I have made corresponding changes to the documentation
- [X] My changes generate no new warnings
- [X] I have added tests that prove my fix is effective or that my
feature works
- [X] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Chores**
- Improved the efficiency of the build process by only running
server-related jobs when there are changes in the server folder.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
> Added client-unit-tests, server-unit-tests in package-master step
#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)
## Testing
> running tbp on the branch
#### How Has This Been Tested?
- [ ] TBP run
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Chores**
- Updated the build process to require both client and server unit tests
to pass before packaging.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Adding logs to debug ci-test-result
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Refactor**
- Improved error handling and logging in integration test workflows.
- **Documentation**
- Fixed typographical error in the name of the test workflow.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- This PR removed static wait from spec - API_with_List_Widget_spec
- Git/GitSync/GitSyncedApps_spec.js (fixes for EE flakyness - WIP -
still failing in chrome, pass in electron)
- Remove wait from OpenPaneAndChangeThemeColors() & added n/w check
- Upgrading Cypress from 13.3 to 13.6
- Flaky fix:
- ClientSide/Widgets/Text/Text2_Spec.ts
- ClientSide/Widgets/Select/Select2_Spec.ts
- cypress/e2e/Regression/ClientSide/JSLibrary/Library_spec.ts
- /ClientSide/Git/GitWithJSLibrary/GitwithCustomJSLibrary_spec.js
#### Type of change
- Script fix (non-breaking change which fixes an issue)
## Testing
#### How Has This Been Tested?
- [X] Cypress CI runs
## Checklist:
#### QA activity:
- [X] Added `Test Plan Approved` label after Cypress tests were reviewed
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Enhanced Git synchronization capabilities with improved user interface
interactions.
- Streamlined navigation back to the editor from deployment mode.
- Implemented more robust table loading checks to ensure data is
properly displayed.
- **Bug Fixes**
- Fixed issues with element presence assertions to improve test
reliability.
- Addressed the visibility of certain UI elements to ensure they appear
as expected.
- **Tests**
- Updated end-to-end test scripts to reflect new interactions and
assertions.
- Added a new test file `GitSyncedApps_spec.js` to cover Git-synced
applications.
- Removed outdated test file `Fork_Template_spec.js`.
- **Refactor**
- Improved method calls for querying and interacting with elements to
enhance test stability.
- Optimized wait conditions for element visibility to reduce flakiness
in tests.
- **Chores**
- Adjusted the GitHub Actions workflow for client-server build to refine
output for matrix counts.
- Updated CI test workflow to incorporate Electron setup and remove
Chrome setup steps.
- **Documentation**
- Included comments to explain the rationale behind certain timeout
values and method changes.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Added logic to handle the runner count based on the tags
#### Type of change
- Workflow files
## Testing
- Workflow run
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced a `tag-check` job to validate the presence of tags in
workflow commands.
- Workflows now comment on PRs with documentation links for tags when
tags are missing.
- **Enhancements**
- Enhanced CI workflows to conditionally run jobs based on tag presence.
- Added matrix inputs to improve job configuration flexibility.
- **Documentation**
- Added comments to PRs with links to workflow runs when tags are
specified.
- **Refactor**
- Centralized tag and matrix setup across multiple workflows for
consistency.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
> Added schedule event name in package-release and master steps to run
those on scheduled cron
#### Type of change
- Chore (housekeeping or task changes that don't impact user perception)
## Testing
> running tbp manually in the branch
#### How Has This Been Tested?
> Please describe the tests that you ran to verify your changes. Also
list any relevant details for your test configuration.
> Delete anything that is not relevant
- [ ] Manual
## Checklist:
#### Dev activity
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
#### QA activity:
- [ ] [Speedbreak
features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-)
have been covered
- [ ] Test plan covers all impacted features and [areas of
interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-)
- [ ] Test plan has been peer reviewed by project stakeholders and other
QA members
- [ ] Manually tested functionality on DP
- [ ] We had an implementation alignment call with stakeholders post QA
Round 2
- [ ] Cypress test cases have been added and approved by SDET/manual QA
- [ ] Added `Test Plan Approved` label after Cypress tests were reviewed
- [ ] Added `Test Plan Approved` label after JUnit tests were reviewed
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Chores**
- Updated workflow to trigger certain job steps on a scheduled basis.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Server build cache
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Chores**
- Improved the caching process for release builds to enhance the
efficiency of our deployment workflows.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
fix server build added missing quotes
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Chores**
- Improved the handling of user information in the automated server
build process to ensure compatibility with values containing spaces.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->