Skip to content

Conversation

adalpari
Copy link
Contributor

@adalpari adalpari commented Oct 14, 2025

Description

This PR is adding a new screen to start bot conversations with Odie. The screen is using dummy data as the real data request is being done in a second iteration for PR clarity.

Although the data is not real, you should be able to see and write conversations.

Testing instructions

Note: the entry point to this screen is hardcoded, and a TODO has been added to avoid merging this PR until those hardcoded lines are removed. So, don't pay attention to that part of the code.

  1. Log into a WP.COM site
  2. Go to "Me screen" -> Help and support -> Contact support
  • Play with the bot conversations and check they look ok.
Screenshot 2025-10-14 at 16 27 34 Screenshot 2025-10-14 at 16 27 43

@dangermattic
Copy link
Collaborator

dangermattic commented Oct 14, 2025

4 Warnings
⚠️ strings.xml files should only be updated on release branches, when the translations are downloaded by our automation.
⚠️ This PR is larger than 300 lines of changes. Please consider splitting it into smaller PRs for easier and faster reviews.
⚠️ Class AIBotSupportViewModel is missing tests, but unit-tests-exemption label was set to ignore this.
⚠️ PR is not assigned to a milestone.

Generated by 🚫 Danger

@wpmobilebot
Copy link
Contributor

wpmobilebot commented Oct 14, 2025

Project manifest changes for WordPress

The following changes in the WordPress's merged AndroidManifest.xml file were detected (build variant: wordpressVanillaRelease):

--- ./build/reports/diff_manifest/WordPress/wordpressVanillaRelease/base_manifest.txt	2025-10-15 06:16:23.040524728 +0000
+++ ./build/reports/diff_manifest/WordPress/wordpressVanillaRelease/head_manifest.txt	2025-10-15 06:16:26.350572105 +0000
@@ -491,6 +491,10 @@
         <activity
             android:name="org.wordpress.android.ui.subscribers.SubscribersActivity"
             android:label="@string/subscribers"
+            android:theme="@style/WordPress.NoActionBar" />
+        <activity
+            android:name="org.wordpress.android.support.aibot.ui.AIBotSupportActivity"
+            android:label="@string/ai_bot_conversations_title"
             android:theme="@style/WordPress.NoActionBar" /> <!-- Deep Linking Activity -->
         <activity
             android:name="org.wordpress.android.ui.deeplinks.DeepLinkingIntentReceiverActivity"

Go to https://buildkite.com/automattic/wordpress-android/builds/23622/canvas?sid=0199e67f-0d5d-440b-9d00-e9322119cc95, click on the Artifacts tab and audit the files.

@wpmobilebot
Copy link
Contributor

wpmobilebot commented Oct 14, 2025

Project manifest changes for WordPress

The following changes in the WordPress's merged AndroidManifest.xml file were detected (build variant: jetpackVanillaRelease):

--- ./build/reports/diff_manifest/WordPress/jetpackVanillaRelease/base_manifest.txt	2025-10-15 06:17:46.020328045 +0000
+++ ./build/reports/diff_manifest/WordPress/jetpackVanillaRelease/head_manifest.txt	2025-10-15 06:17:50.330331251 +0000
@@ -625,6 +625,10 @@
         <activity
             android:name="org.wordpress.android.ui.subscribers.SubscribersActivity"
             android:label="@string/subscribers"
+            android:theme="@style/WordPress.NoActionBar" />
+        <activity
+            android:name="org.wordpress.android.support.aibot.ui.AIBotSupportActivity"
+            android:label="@string/ai_bot_conversations_title"
             android:theme="@style/WordPress.NoActionBar" /> <!-- Reader Activities -->
         <activity
             android:name="org.wordpress.android.ui.reader.ReaderPostListActivity"

Go to https://buildkite.com/automattic/wordpress-android/builds/23622/canvas?sid=0199e67f-0d5e-4b26-ab31-dbaf65ad6324, click on the Artifacts tab and audit the files.

@wpmobilebot
Copy link
Contributor

wpmobilebot commented Oct 14, 2025

WordPress📲 You can test the changes from this Pull Request in WordPress by scanning the QR code below to install the corresponding build.
App NameWordPress WordPress
FlavorJalapeno
Build TypeDebug
Versionpr22284-167992c
Commit167992c
Direct Downloadwordpress-prototype-build-pr22284-167992c.apk
Note: Google Login is not supported on these builds.

@wpmobilebot
Copy link
Contributor

wpmobilebot commented Oct 14, 2025

Jetpack📲 You can test the changes from this Pull Request in Jetpack by scanning the QR code below to install the corresponding build.
App NameJetpack Jetpack
FlavorJalapeno
Build TypeDebug
Versionpr22284-167992c
Commit167992c
Direct Downloadjetpack-prototype-build-pr22284-167992c.apk
Note: Google Login is not supported on these builds.

@adalpari adalpari marked this pull request as ready for review October 14, 2025 16:00
@adalpari adalpari requested a review from Copilot October 14, 2025 16:00
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR introduces an AI bot support feature for WordPress, adding conversational UI screens for users to interact with a support bot named "Odie". The implementation uses dummy data for the initial iteration to demonstrate the UI functionality before connecting to real APIs.

  • Creates a new conversational support interface with list and detail views
  • Implements Jetpack Compose UI components for modern Android UI patterns
  • Adds theming support and navigation between conversation screens

Reviewed Changes

Copilot reviewed 13 out of 13 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
strings.xml Added localized strings for AI bot UI elements and time formatting
AppThemeM3.kt Enhanced theme functions to accept isJetpackApp parameter for flexible theming
HelpActivity.kt Added temporary hardcoded navigation to AI bot support screen
ConversationUtils.kt Implemented time formatting utilities and sample conversation data generation
ConversationsListScreen.kt Created conversation list UI with Material 3 design
ConversationDetailScreen.kt Implemented chat interface with message bubbles and input handling
AIBotSupportViewModel.kt Added ViewModel for managing conversation state and dummy API interactions
AIBotSupportActivity.kt Main activity coordinating navigation between conversation screens
BotMessage.kt, BotConversation.kt Data models for conversation and message entities
AndroidManifest.xml Registered new AI bot support activity
build.gradle, settings.gradle Minor formatting changes

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@adalpari adalpari requested a review from jkmassel October 14, 2025 16:08
} else {
createNewZendeskTicket()
}
// TODO: comment hardcoded lines. This TODO is preventing the PR to pass
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Ignore these changes. The TODO is preventing me to merge the PR until I remove them

Copy link
Contributor

@jkmassel jkmassel left a comment

Choose a reason for hiding this comment

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

This works great for me on-device.

Copy link

Copy link

codecov bot commented Oct 15, 2025

Codecov Report

❌ Patch coverage is 0% with 512 lines in your changes missing coverage. Please review.
✅ Project coverage is 39.66%. Comparing base (7510c4e) to head (167992c).
⚠️ Report is 1 commits behind head on trunk.

Files with missing lines Patch % Lines
...droid/support/aibot/ui/ConversationDetailScreen.kt 0.00% 174 Missing ⚠️
...ss/android/support/aibot/util/ConversationUtils.kt 0.00% 158 Missing ⚠️
...ndroid/support/aibot/ui/ConversationsListScreen.kt 0.00% 101 Missing ⚠️
.../android/support/aibot/ui/AIBotSupportViewModel.kt 0.00% 67 Missing ⚠️
...ess/android/support/aibot/model/BotConversation.kt 0.00% 6 Missing ⚠️
...ordpress/android/support/aibot/model/BotMessage.kt 0.00% 6 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##            trunk   #22284      +/-   ##
==========================================
- Coverage   39.85%   39.66%   -0.20%     
==========================================
  Files        2168     2174       +6     
  Lines      102904   103416     +512     
  Branches    14840    14865      +25     
==========================================
  Hits        41015    41015              
- Misses      58409    58921     +512     
  Partials     3480     3480              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 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.

@adalpari adalpari merged commit a7cfab8 into trunk Oct 15, 2025
23 checks passed
@adalpari adalpari deleted the feature/CMM-837-Oddie-bot-support-UI branch October 15, 2025 06:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants