feat(ccwidgets): Implementing Real Time Assistance feature within cc widgets#722
feat(ccwidgets): Implementing Real Time Assistance feature within cc widgets#722Kesari3008 wants to merge 8 commits into
Conversation
…x#668) Co-authored-by: Shreyas Sharma <shreyassharma9912@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
…ed response feature
|
This pull request is automatically being deployed by Amplify Hosting (learn more). |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 65e4090194
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| @@ -0,0 +1,70 @@ | |||
| { | |||
| "name": "@webex/cc-ai-assistant", | |||
There was a problem hiding this comment.
Add the AI assistant spec alongside the module
This introduces a new workspace package/widget, but the change contains no ai-assistant module spec or standing-doc/router update, so the new public surface cannot be routed or validated by the repo's SDD docs. Please add the module spec/standing doc updates in the same change as the code.
AGENTS.md reference: AGENTS.md:L68-L68
Useful? React with 👍 / 👎.
| ); | ||
| } | ||
|
|
||
| if (status === 'listening' || hasFiredInitialRequest) { |
There was a problem hiding this comment.
Show errors before the listening placeholder
When the first getRealTimeAssistance call rejects, the hook has already set hasFiredInitialRequest to true and then sets status to error; this branch runs before the error branch, so the panel keeps showing “Listening for information” and never exposes the retry/error message. Please check status === 'error' before the hasFiredInitialRequest listening fallback.
Useful? React with 👍 / 👎.
| oninput={(e: CustomEvent<{value: string}> & {target: HTMLInputElement}) => | ||
| onChange(e.detail?.value ?? e.target?.value ?? '') | ||
| } |
There was a problem hiding this comment.
Use React's input handler for context changes
For the Momentum React Input, the repo's existing usage is the camel-cased onInput; this lowercase oninput prop is not handled by the React wrapper, so typing in the “Add context” field never calls onChange and the controlled value stays empty. That blocks agents from submitting extra context after starting a suggestion session.
Useful? React with 👍 / 👎.
| onClose: 'function', | ||
| onClearChat: 'function', | ||
| onFullScreenToggle: 'function', | ||
| onSuggestionReceived: 'function', |
There was a problem hiding this comment.
Bridge the exposed suggestion callback
For Web Component consumers this is the only arrival callback exposed, but the AI assistant hook only reads and invokes onRealTimeAssistReceived, never onSuggestionReceived. As a result <widget-cc-ai-assistant onSuggestionReceived=...> will not fire when a suggestion arrives; please either expose onRealTimeAssistReceived here or bridge the deprecated prop to the new callback.
Useful? React with 👍 / 👎.
| <label key={widget}> | ||
| <input | ||
| type="checkbox" | ||
| name={widget} | ||
| checked={selectedWidgets[widget]} | ||
| onChange={handleCheckboxChange} | ||
| data-testid={`samples:widget-${widget}`} | ||
| /> |
There was a problem hiding this comment.
Remove the duplicate widget checkbox
Each widget now renders this second label in addition to the original one above it, producing duplicate checkboxes with the same name and data-testid. In WebRTC-locked mode the duplicate also omits the disabled guard, so users can still toggle widgets that the first checkbox correctly disables, and tests querying by test id become ambiguous.
Useful? React with 👍 / 👎.
COMPLETES #https://jira-eng-sjc12.cisco.com/jira/browse/CAI-8037
This pull request addresses
Implementing Real Time Assistant Widget within existing cc widgets
by making the following changes
Added new widget: AI Assiatnt under which real time assistance feature is implemented
Change Type
The following scenarios were tested
< ENUMERATE TESTS PERFORMED, WHETHER MANUAL OR AUTOMATED >
The GAI Coding Policy And Copyright Annotation Best Practices
Checklist before merging
Make sure to have followed the contributing guidelines before submitting.