Skip to content

Feature/workflow completion#890

Open
pavelsima wants to merge 11 commits intoCognigy:masterfrom
pavelsima:feature/workflow-completion
Open

Feature/workflow completion#890
pavelsima wants to merge 11 commits intoCognigy:masterfrom
pavelsima:feature/workflow-completion

Conversation

@pavelsima
Copy link
Copy Markdown

No description provided.

Added extension description - CXone Authenticated Call node

Remove uneeded code - CXone Authenticated Call node

Added tests in CXone Authenticated Call node

Added Logging and Security colabsable in CXone Authenticated Call node

Added Timeout and retry to the CXone Authenticated Call node

Fix retry attempts logic in CXone authenticated call node

Fixed calculation where retryAttempts now correctly represents additional
retry attempts beyond the initial request, not total attempts. This ensures
retryAttempts=1 results in 2 total attempts (initial + 1 retry) as expected.

Co-Authored-By: Claude <noreply@anthropic.com>

Enhance CXone authenticated call node with improved UI and complete response storage

- Organize UI into collapsible sections (Headers, Payload, Storage Options)
- Add conditional payload fields that only show for POST, PUT, PATCH methods
- Implement payload type selector with support for JSON, Text, and Form Data
- Store complete response object with status, body, and optional headers
- Move Store Response Headers option to Headers section for better UX
- Simplify storage configuration with single key-based approach
- Remove hardcoded cxoneApiResponse storage to prevent duplicates
- Exclude request bodies from GET and DELETE methods per HTTP standards
- Update tests to validate new response structure and storage behavior
- Maintain backward compatibility with existing configurations

Co-Authored-By: Claude <noreply@anthropic.com>

Fix build errors in CXone authenticated call node

- Remove unsupported 'defaultCollapsed' property from form section definition
- Replace 'any' types with proper type annotations for better type safety
- Use proper type checking instead of 'as any' casting for API methods
- Improve error handling with instanceof Error checks

Co-Authored-By: Claude <noreply@anthropic.com>

Added CXone Authenticated Call node

Enhance logging in handover node: added detailed log for transformed TMS payload in handoverToCXone function.

Refactor CXone extension: corrected spelling in package.json, updated author information, and enhanced README for clarity. Removed unused cxone-utils helper functions and transitioned to using CXoneApiClient for API interactions in handover and send-signal nodes. Updated tests to reflect these changes.

Update CXone extension to version 1.0.10, adding environmentUrl field to connection configuration and removing deprecated environment and baseUrl fields from handover and send-signal nodes. Adjusted related tests accordingly.

Update CXone extension to use Jest for testing and remove unused nodes. Added Jest and ts-jest as dev dependencies, updated package-lock.json, and enhanced README with testing instructions.

CXone extension v1.0.9 moved from forked repo
Copilot AI review requested due to automatic review settings March 17, 2026 12:13
@graymalkin77
Copy link
Copy Markdown

graymalkin77 commented Mar 17, 2026

Snyk checks have passed. No issues have been found so far.

Status Scan Engine Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues
Licenses 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

Copy link
Copy Markdown
Contributor

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 CXone-related extensions: a new “workflow completion” extension for emitting completion status/metrics to CXone Copilot, and a CXone authenticated HTTP call extension (plus catalog metadata updates).

Changes:

  • Add extensions/workflow-completion TypeScript extension with a terminal-like node (sendCopilotStatus) and Jest tests.
  • Add/expand extensions/cxone extension implementing an authenticated HTTP request node with retries, timeouts, structured errors, and extensive unit tests.
  • Update metadata/extensions.json to include CXone; adjust extensions/8x8/package-lock.json dependency metadata.

Reviewed changes

Copilot reviewed 27 out of 32 changed files in this pull request and generated 10 comments.

File Description
metadata/extensions.json Adds CXone entry to extension catalog metadata.
extensions/workflow-completion/* New extension implementation, tests, build/lint config, packaging script, docs, icons.
extensions/cxone/* CXone authenticated HTTP call node, helper types/errors, tests, packaging script, docs, icons.
extensions/8x8/package-lock.json Updates lockfile metadata/dependencies (e.g., removes xml2js).
Files not reviewed (1)
  • extensions/8x8/package-lock.json: Language not supported

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copilot AI review requested due to automatic review settings March 17, 2026 12:20
Copy link
Copy Markdown
Contributor

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 a new workflow-completion Cognigy extension for emitting “completion status” output (intended for CXone Copilot consumption) and adds a new cxone entry to the extension registry metadata.

Changes:

  • Added a new workflow-completion extension (node descriptor, module wiring, build/lint/test tooling, and Jest unit tests).
  • Added a cxone entry to metadata/extensions.json.

Reviewed changes

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

Show a summary per file
File Description
metadata/extensions.json Registers a new cxone extension in the extensions metadata catalog.
extensions/workflow-completion/zip.js Adds a packaging script to create a versioned .tar.gz artifact.
extensions/workflow-completion/tslint.json Adds TSLint configuration for the new extension.
extensions/workflow-completion/tsconfig.json Adds TypeScript build configuration for the new extension.
extensions/workflow-completion/src/test-utils/mockCognigyApi.ts Adds test helpers to mock Cognigy cognigy.api/input/context.
extensions/workflow-completion/src/test-utils/jest-setup.ts Adds Jest global setup for tests.
extensions/workflow-completion/src/nodes/sendCopilotStatus.ts Implements the sendCopilotStatus node that outputs status + basic session metrics.
extensions/workflow-completion/src/module.ts Registers the node via createExtension.
extensions/workflow-completion/src/tests/sendCopilotStatus.spec.ts Adds unit tests for the node behavior and logging.
extensions/workflow-completion/package.json Adds extension package manifest and scripts.
extensions/workflow-completion/jest.config.cjs Adds Jest/coverage configuration.
extensions/workflow-completion/icon.png Adds the extension icon asset.
extensions/workflow-completion/icon.b64 Adds base64-encoded icon content.
extensions/workflow-completion/README.md Adds usage and behavior documentation for the extension/node.
extensions/workflow-completion/.claude/settings.local.json Adds a local Claude tool permissions file.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

…dling

- Align README node name with palette label ("Send Status to CXone Copilot")
- Fix README Additional Data description to match actual pass-through behavior
- Correct README metrics fields to match implementation (sessionId, channel, language, completionTimestamp)
- Sync package-lock.json version from 0.0.4 to 0.0.6
- Fix jest-setup.ts comment to reference correct extension name
- Write error status to context in catch block so downstream nodes can detect failures

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
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.

4 participants