Skip to content

Conversation

@btsgh
Copy link
Collaborator

@btsgh btsgh commented Nov 4, 2025

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

Caution

If you modify the content in this section, you are likely to disrupt the CI result for your PR.

Communication

Should the DevRel and Marketing teams inform users about this change?

  • Yes
  • No

jacquesikot and others added 14 commits October 27, 2025 04:50
…rtially enabled (#41318)

Reverts #41317

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Refactor**
* Updated application display conditions for different application
types.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->


/ok-to-test tags="@tag.Sanity"

<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/18837702804>
> Commit: 5a0df5d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=18837702804&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Mon, 27 Oct 2025 11:08:21 UTC
<!-- end of auto-generated comment: Cypress test results  -->
## 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
This reverts commit 07e003f.

## 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
## 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
## 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
## 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="@tag.Sanity"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/18872268996>
> Commit: 89b384e
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=18872268996&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Sanity`
> Spec:
> <hr>Tue, 28 Oct 2025 11:25:59 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Bug Fixes**
* Improved stability of on-load scheduling by defensively handling
missing executables: inconsistent entries are now logged, skipped or
removed to preserve data integrity and avoid failures.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Updated the CI workflow to install the latest version of Google Chrome
instead of a specific version. This change simplifies the installation
process and ensures that the most current version is used for testing.

## 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
Updated the CI workflow to install a specific version of Google Chrome
(129.0.6668.100) instead of the latest version. This change ensures
consistency in the testing environment by using a known version for all
CI runs.

## 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
## 🎯 Overview
This PR implements **Static URL** functionality for Appsmith
applications and pages, allowing users to create clean, URLs without
auto-generated IDs. This feature is gated behind the
`release_static_url_enabled` feature flag.

## 🚀 Key Features

### 1. **Application-Level Static URLs**
- **Enable/Disable Static URLs**: Toggle static URLs on/off at the
application level
- **Custom Application Slug**: Set a unique, human-readable slug for the
entire application (e.g., `my-app` instead of `untitled-application-5`)
- **Real-time Validation**: Client-side and server-side validation for
slug format (lowercase letters, numbers, hyphens only)
- **Availability Check**: Real-time checking if a slug is available or
already taken
- **Slug Suggestions**: Auto-generate slug suggestions based on
application name

### 2. **Page-Level Static URLs**
- **Custom Page Slugs**: Set unique slugs for individual pages (e.g.,
`dashboard` instead of `page1-68fb0a086001f8101c93e34q`)
- **Per-Page Configuration**: Each page can have its own static slug
- **Validation & Uniqueness**: Real-time validation and uniqueness
checking for page slugs

### 3. **URL Format Changes**
**Before (Legacy Format):**
```
/app/application-slug/page-name-<pageId>
```

**After (Static URL Format):**
```
/app/app-slug/page-slug
```

## 🏗️ Technical Implementation

### **New Routes**
- `BUILDER_PATH_STATIC`:
`/app/:staticApplicationSlug/:staticPageSlug/edit`
- `VIEWER_PATH_STATIC`: `/app/:staticApplicationSlug/:staticPageSlug`

### **New Redux Actions**
- `ENABLE_STATIC_URL` / `DISABLE_STATIC_URL`: Toggle static URL feature
- `PERSIST_APP_SLUG` / `PERSIST_PAGE_SLUG`: Save application/page slugs
- `VALIDATE_APP_SLUG` / `VALIDATE_PAGE_SLUG`: Validate slug availability
- `FETCH_APP_SLUG_SUGGESTION`: Get auto-generated suggestions

### **New API Endpoints**

#### Application APIs
- `POST /api/v1/applications/:applicationId/static-url` - Enable static
URL with initial slug
- `PUT /api/v1/applications/:applicationId/static-url` - Update
application slug
- `DELETE /api/v1/applications/:applicationId/static-url` - Disable
static URL
- `GET /api/v1/applications/:applicationId/static-url/:uniqueSlug` -
Validate application slug availability
- `GET /api/v1/applications/:applicationId/static-url/suggest-app-slug`
- Get slug suggestion

#### Page APIs
- `PATCH /api/v1/pages/static-url` - Update page slug
- `GET /api/v1/pages/:pageId/static-url/verify/:uniqueSlug` - Validate
page slug availability

### **URL Assembly Enhancements**
- Extended `URLAssembly` to support static URL generation
- Added `URL_TYPE.STATIC` for static URL routing
- Static URLs only apply in **published/viewer mode** (edit mode uses
regular URLs)
- Automatic fallback: If `staticPageSlug` is not set, falls back to
regular `pageSlug`

## 🎨 UI Components

### **General Settings (Application Level)**
- **Static URL Toggle**: Enable/disable static URLs for the application
- **Application Slug Input**: 
  - Real-time validation with error messages
  - Loading states during validation
  - Success/error indicators
  - URL preview showing the final URL
- **Apply/Cancel Buttons**: Persist or discard changes
- **Confirmation Modal**: Shows before/after URLs when changing or
disabling

### **Page Settings (Page Level)**
- **Page Slug Input**: Similar to application slug with validation
- **URL Preview**: Shows the complete page URL
- **Apply/Cancel Actions**: Per-page slug management

### **StaticURLConfirmationModal**
- Displays "From" and "To" URLs
- Warning message about breaking existing links
- Different modes: "Change" vs "Disable"
- Bold formatting for app/page slugs in URLs

## 🔄 State Management

### **Application Reducer**
- `uniqueSlug`: Stores the application's static slug
- `staticUrlEnabled`: Boolean flag for static URL status

### **Page List Reducer**
- `uniqueSlug`: Stores each page's static slug
- Updates only the specific page when slug is persisted

### **Applications UI Reducer**
- `isValidatingAppSlug`: Validation in progress
- `isApplicationSlugValid`: Validation result
- `isFetchingAppSlugSuggestion`: Fetching suggestion
- `appSlugSuggestion`: Auto-generated suggestion
- `isPersistingAppSlug`: Save in progress

## 🛡️ Validation Rules

**Application/Page Slug Requirements:**
- Only lowercase letters (a-z)
- Numbers (0-9)
- Hyphens (-)
- No spaces or special characters
- Must be unique across the workspace
- Cannot be empty

## 🔀 Navigation & Routing

### **Route Matching Updates**
- Extended `matchBuilderPath` to include `BUILDER_PATH_STATIC`
- Extended `matchViewerPath` to include `VIEWER_PATH_STATIC`
- Updated route params to include optional `staticApplicationSlug` and
`staticPageSlug`

### **Page Navigation**
- New hook: `useStaticUrlGeneration` for generating static URLs in
navigation
- Updated `useNavigateToAnotherPage` to support static URLs
- Menu items and navigation components updated to use static URLs when
available

## 📦 Key Files Changed

**Core Logic:**
- `URLAssembly.ts`: URL generation logic with static URL support
- `ApplicationSagas.tsx`: Sagas for enable/disable/persist operations
- `PageSagas.tsx`: Page-level slug persistence
- `appRoutes.ts`: New static URL routes

**UI Components:**
- `GeneralSettings.tsx`: Application-level static URL configuration
- `PageSettings.tsx`: Page-level static URL configuration
- `StaticURLConfirmationModal.tsx`: Confirmation dialog (new)
- `UrlPreview.tsx`: URL preview component (new)

**State Management:**
- `applicationsReducer.tsx`: Application UI state
- `appReducer.ts`: Application entity state
- `pageListReducer.tsx`: Page list state

## ⚙️ Feature Flag
- `release_static_url_enabled`: Controls visibility of static URL
features

## Automation

/ok-to-test tags="@tag.All"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/18936467359>
> Commit: a74b4ac
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=18936467359&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 30 Oct 2025 10:56:15 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Static URL support for apps and pages: enable/disable static URLs,
edit app/page slugs, validate and persist slugs, and receive slug
suggestions.
* URL preview with click-to-copy and a confirmation modal when changing
or disabling app slugs.

* **Bug Fixes / Improvements**
  * Routing, editor and viewer flows updated for slug-based paths.
* Base page resolution and editor links now derive from application
state for more reliable navigation and loading.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Pedro Santos Rodrigues <pedro@appsmith.com>
## Description

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="@tag.Git, @tag.ImportExport"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/18950652587>
> Commit: 357907a
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=18950652587&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git, @tag.ImportExport`
> Spec:
> <hr>Thu, 30 Oct 2025 19:02:53 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Static URL (slug) support for apps and pages with endpoints to
suggest, create, update, verify, and remove slugs.
* Slug-aware import, cloning, and routing flows so pages/apps can be
resolved by human-readable slugs.

* **Data Model**
* Added slug fields to applications and pages and migration to create
unique, partial indexes enforcing uniqueness.

* **Error Handling**
  * New error for duplicate-slug conflicts.

* **Tests**
* Added tests covering slug creation, uniqueness, lookup, and related
flows.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
…updated instead of new import (#41350)

## 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="@tag.MobileResponsive"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/18967193496>
> Commit: 893949f
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=18967193496&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.MobileResponsive`
> Spec:
> <hr>Fri, 31 Oct 2025 08:53:28 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Introduces a Git-aware page import flow that conditionally handles
pages when an application is connected to Git, improving import
reliability across branches.

* **Chores**
* Minor naming and consistency cleanups and added internal notes for
future Git synchronization enhancements.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Changed the download link for Google Chrome version 129.0.6668.100 in
the CI workflow to a new S3 location, ensuring continued access to the
specified version for consistent testing environments.

## 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
## Description
This PR introduces the ability to regenerate SSH deploy keys for
Git-connected applications. This feature allows users to generate new
deploy keys when their existing keys are invalid, expired, or need to be
rotated.


[Design](https://www.figma.com/design/q3wzbYnQfWm4QAa51aGBop/Generate-new-Deploy-Key?node-id=6-58039&t=vByfXIUQxAqqMZl5-0)

## Changes

### Core Features

- **Generate Deploy Key Modal**: New modal component
(`GenerateDeployKeyModal`) that allows users to generate and configure
new SSH deploy keys
- **Danger Zone Integration**: Added "Generate deploy key" button in the
Git Settings Danger Zone for easy access to the regeneration flow
- **Invalid Key Warning**: Added warning component (`InvalidKeyWarning`)
that detects invalid deploy keys (error code `AE-GIT-4032`) and prompts
users to regenerate
- **API Integration**: New API endpoint integration
(`updateGeneratedSSHKeyRequest`) to persist the most recent regenerated
SSH key on the backend

### UI/UX Improvements

- Settings modal now closes automatically when opening the generate
deploy key modal
- Updated deploy key generation message to fit in 2 lines in the modal's
UI
- Added proper loading states and error handling throughout the flow
- Statusbar component integration for showing progress during key
regeneration

### Component Reorganization

- Moved common Git UI components from `ConnectModal/ConnectInitialize`
to `components/common`:
  - `AddDeployKey.tsx`
  - `CopyButton.tsx`
  - `constants.ts`
  - `types.ts`
- Renamed `common.tsx` to `GitUIComponents.tsx` for better clarity

## Automation

/ok-to-test tags="@tag.Git"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/19032400320>
> Commit: 5f62a52
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=19032400320&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
> Spec:
> <hr>Mon, 03 Nov 2025 12:02:30 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Deploy key generation flow added to Git settings with a modal, UI to
generate/update SSH deploy keys, and in-settings prompt when a key is
invalid.
* Settings now include a direct link to open Git settings from debugger
entries.

* **Debugger Improvements**
  * Debugger recognizes Git entities with a Git icon/link.
* Invalid deploy-key issues are logged and surfaced as error-level
debugger entries.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Pedro Santos Rodrigues <pedro@appsmith.com>
## Description
EE Counterpart: appsmithorg/appsmith-ee#8313


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="@tag.All"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/19035218902>
> Commit: f77f153
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=19035218902&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Mon, 03 Nov 2025 13:55:42 UTC
<!-- end of auto-generated comment: Cypress test results  -->


## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Save and manage SSH key pairs directly on artifacts via a new
endpoint, enabling easier Git deploy-key integration.

* **Improvements**
* Clearer error messages when SSH/git deploy-key configuration fails,
with actionable guidance.
* Better detection and handling of SSH authentication errors across Git
operations for more accurate diagnostics.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
@btsgh btsgh requested a review from laveena-en November 4, 2025 06:55
@btsgh btsgh requested review from a team, abhvsn, nidhi-nair and sharat87 as code owners November 4, 2025 06:55
@btsgh btsgh requested review from rahulbarwal and removed request for a team November 4, 2025 06:55
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Nov 4, 2025

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

🗂️ Base branches to auto review (2)
  • pg
  • release

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.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch release

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.

@btsgh btsgh requested a review from shadabbuchh November 4, 2025 06:59
@btsgh btsgh merged commit cd1a647 into master Nov 4, 2025
166 of 171 checks passed
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.

7 participants