Conversation
WalkthroughThis pull request introduces AI agent feature enhancements. Two new message constants are added to improve user guidance and the feature flag Changes
Sequence Diagram(s)sequenceDiagram
participant U as User
participant SU as SignUp Component
participant SA as AI Agent Selector
participant RF as Redux Store
U->>SU: Navigate to SignUp Page
SU->>SA: Invoke getIsAiAgentFlowEnabled(state)
SA->>RF: Check "license_ai_agent_enabled" flag
RF-->>SA: Return flag state
SA-->>SU: Provide flag result
alt AI Agent Flow Enabled
SU->>SU: Render AI_AGENT_AUTH_SUBTITLE and LOGIN_PAGE_TITLE<br/>(Hide cloud hosting message)
else
SU->>SU: Render default SignUp title and subtitle
end
sequenceDiagram
participant U as User
participant A as Applications Component
participant SEL as AI Agent Selector
participant R as Redux Store
U->>A: Load Applications Page
A->>SEL: Invoke getIsAiAgentFlowEnabled(state)
SEL->>R: Request flag status for "license_ai_agent_enabled"
R-->>SEL: Return flag state
SEL-->>A: Provide flag result
alt AI Agent Flow Enabled
A->>A: Render Anvil applications with conditional empty state message
else
A->>A: Render standard application cards list
end
Possibly related PRs
Suggested labels
Suggested reviewers
Poem
📜 Recent review detailsConfiguration used: .coderabbit.yaml 📒 Files selected for processing (7)
🚧 Files skipped from review as they are similar to previous changes (6)
🧰 Additional context used🧬 Code Definitions (1)app/client/src/pages/UserAuth/SignUp.tsx (2)
⏰ Context from checks skipped due to timeout of 90000ms (8)
🔇 Additional comments (6)
🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
Documentation and Community
|
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (1)
app/client/src/ce/constants/messages.ts (1)
219-220: Consider handling line breaks in component rather than message string.The newline (
\n) in this message string might not render as expected in HTML contexts unless handled properly in the component.-export const AI_AGENT_AUTH_SUBTITLE = () => - `Sign up with any Google account.\n Support for email will be available soon.`; +export const AI_AGENT_AUTH_SUBTITLE = () => + `Sign up with any Google account. Support for email will be available soon.`;
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (8)
app/client/src/ce/constants/messages.ts(1 hunks)app/client/src/ce/entities/FeatureFlag.ts(2 hunks)app/client/src/ce/pages/Applications/index.tsx(4 hunks)app/client/src/ce/selectors/aiAgentSelectors.ts(1 hunks)app/client/src/ee/selectors/aiAgentSelectors.ts(1 hunks)app/client/src/pages/UserAuth/Container.tsx(1 hunks)app/client/src/pages/UserAuth/SignUp.tsx(5 hunks)app/client/src/utils/hooks/useFeatureFlagOverride.ts(1 hunks)
🧰 Additional context used
🧬 Code Definitions (3)
app/client/src/ce/selectors/aiAgentSelectors.ts (1)
app/client/src/ce/entities/FeatureFlag.ts (1)
FEATURE_FLAG(2-60)
app/client/src/pages/UserAuth/SignUp.tsx (2)
app/client/src/ce/selectors/aiAgentSelectors.ts (1)
getIsAiAgentFlowEnabled(5-7)app/client/src/ce/constants/messages.ts (3)
AI_AGENT_AUTH_SUBTITLE(219-220)SIGNUP_PAGE_TITLE(74-74)LOGIN_PAGE_TITLE(67-67)
app/client/src/ce/pages/Applications/index.tsx (2)
app/client/src/ce/selectors/aiAgentSelectors.ts (1)
getIsAiAgentFlowEnabled(5-7)app/client/src/ce/constants/messages.ts (3)
APPLICATIONS(214-214)AI_APPLICATION_CARD_LIST_ZERO_STATE(217-218)AI_AGENTS_APPLICATIONS(216-216)
⏰ Context from checks skipped due to timeout of 90000ms (7)
- GitHub Check: perform-test / server-build / server-unit-tests
- GitHub Check: perform-test / client-build / client-build
- GitHub Check: client-check-cyclic-deps / check-cyclic-dependencies
- GitHub Check: client-unit-tests / client-unit-tests
- GitHub Check: client-prettier / prettier-check
- GitHub Check: client-build / client-build
- GitHub Check: client-lint / client-lint
🔇 Additional comments (18)
app/client/src/ce/entities/FeatureFlag.ts (2)
20-20: Feature flag naming follows conventionsThe new feature flag
license_ai_agent_enabledfollows the established naming convention for license-based features.
79-79: Default value set correctlySetting the default value to
falseis appropriate for a new license-dependent feature.app/client/src/ee/selectors/aiAgentSelectors.ts (1)
1-2: Follows EE module patternThe re-export of CE selectors follows the established pattern for Enterprise Edition modules. This allows for potential extensions or overrides in the enterprise version.
app/client/src/utils/hooks/useFeatureFlagOverride.ts (1)
18-18: Added to override list correctlyThe feature flag has been properly added to the available overrides, which will enable testing and development of this feature.
app/client/src/pages/UserAuth/Container.tsx (1)
71-71: Enhanced subtitle text formattingAdding
whitespace-pre-lineis appropriate for maintaining line breaks in multi-line text, which likely supports the AI agent flow subtitle formatting.app/client/src/ce/selectors/aiAgentSelectors.ts (1)
1-7: Well-structured AI agent selector that follows Redux selector patterns.The implementation correctly uses the feature flag
license_ai_agent_enabledto determine if the AI agent flow should be enabled. The code is concise and follows the functional selector pattern.app/client/src/ce/constants/messages.ts (1)
217-218: Message constant follows consistent naming and implementation pattern.This message constant for the zero state of AI agent card list follows the project's convention of using uppercase function constants.
app/client/src/ce/pages/Applications/index.tsx (5)
11-12: Adding new constant for AI agent application list zero state.The new constant
AI_APPLICATION_CARD_LIST_ZERO_STATEwill be used to display a message when no AI agents are available in the workspace.
21-21: New selector import for AI agent flow state.Importing
getIsAiAgentFlowEnabledselector to determine if the AI agent feature is enabled through the feature flag system.
557-557: Added new feature flag state for AI agent flow.The component now uses the
getIsAiAgentFlowEnabledselector to conditionally render UI elements based on whether the AI agent feature is enabled.
902-918: Conditionally rendering application card list based on AI agent flow.The non-Anvil applications list is now only displayed when the AI agent flow is disabled. This implements the UI switching behavior needed for the new feature.
919-942: Enhanced conditional rendering for AI applications.Now displaying Anvil applications when either:
- Anvil is enabled and there are Anvil applications
- AI agent flow is enabled
The component also conditionally provides an empty state message for AI agents when appropriate.
app/client/src/pages/UserAuth/SignUp.tsx (6)
31-32: Added new message constants for AI agent auth flow.Importing
AI_AGENT_AUTH_SUBTITLEandLOGIN_PAGE_TITLEconstants to support the new AI agent authentication flow.
68-68: New selector import for AI agent flow state.Importing the
getIsAiAgentFlowEnabledselector to determine if the AI agent feature is enabled.
106-106: Added AI agent flow state in the SignUp component.Using the selector to track whether the AI agent feature is enabled to modify component behavior.
109-109: Updated redirection logic to consider AI agent flow state.The redirect to login URL now only happens when both
isFormLoginEnabledandisAiAgentFlowEnabledare false, allowing the signup page to be displayed for AI agent flow.
233-233: Conditionally displaying cloud hosting information.The cloud hosting section is now only displayed when the AI agent flow is disabled, simplifying the UI for AI agent signup.
254-262: Updated container props based on AI agent flow state.Modified the Container component to:
- Set the subtitle to AI agent authentication message when applicable
- Use different title text based on the AI agent flow state
- Maintain the footer section
This provides appropriate context for users in the AI agent flow.
98ad70e to
0fb8b6d
Compare
## Description Part of [EE PR](appsmithorg/appsmith-ee#6704) 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 --> > [!IMPORTANT] > 🟣 🟣 🟣 Your tests are running. > Tests running at: <https://github.com/appsmithorg/appsmith/actions/runs/14106727889> > Commit: 0fb8b6d > Workflow: `PR Automation test suite` > Tags: `@tag.Sanity` > Spec: `` > <hr>Thu, 27 Mar 2025 12:36:47 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** - Introduced informative messaging for AI Agent features in the applications and sign-up experiences. - Enabled dynamic interface behavior that conditionally displays content based on the activation of AI Agent functionality. - **Style** - Enhanced text formatting in authentication views to improve readability and support multi-line content. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
Description
Part of EE PR
Fixes #
Issue Numberor
Fixes
Issue URLWarning
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
Warning
Workflow run: https://github.com/appsmithorg/appsmith/actions/runs/14106727889
Commit: 0fb8b6d
Cypress dashboard.
Tags: @tag.Sanity
Spec:
It seems like no tests ran 😔. We are not able to recognize it, please check workflow here.
Thu, 27 Mar 2025 12:53:30 UTC
Communication
Should the DevRel and Marketing teams inform users about this change?
Summary by CodeRabbit
New Features
Style