Skip to content

Merge master to official for 2026.5 release#4491

Merged
ravirk91 merged 52 commits into
Releases/Official-Releasefrom
Merge-master-to-official-for-2026.5-release
May 7, 2026
Merged

Merge master to official for 2026.5 release#4491
ravirk91 merged 52 commits into
Releases/Official-Releasefrom
Merge-master-to-official-for-2026.5-release

Conversation

@ravirk91
Copy link
Copy Markdown
Collaborator

@ravirk91 ravirk91 commented May 7, 2026

Description

Type of Change

  • Bug fix - [ ] New feature - [ ] Breaking change - [ ] Plugin update

Checklist

  • PR description clearly describes the changes
  • Target branch is correct (master for features, Releases/* for fixes)
  • Latest code from target branch merged
  • No commented/junk code included
  • No new build warnings or errors
  • All existing unit tests pass
  • New unit tests added for new functionality
  • Cross-platform compatibility verified (Windows/Linux/macOS)
  • CI/CD pipeline passes
  • Code follows project conventions (Act{Platform}{Type}, {Platform}Driver)
  • Repository objects use [IsSerializedForLocalRepository] where needed
  • Error handling uses Reporter.ToLog() pattern
  • Documentation updated for user-facing changes
  • Self-review completed and code review comments addressed

Summary by CodeRabbit

  • New Features

    • Added URL column to the apps list grid view for easier reference.
  • Bug Fixes

    • Increased folder path validation limit from 100 to 255 characters in HTML report configuration.
    • Enhanced MySQL database connection handling with improved SSL mode configuration.
  • Improvements

    • Improved WireMock API request payload serialization and handling.
    • Added HTML encoding to GenAI service request fields for enhanced security.
  • Chores

    • Updated ImageMagick library to version 14.13.0 across all projects.

rathimayur and others added 30 commits December 23, 2025 22:24
…curity-scanning

Update codeql-analysis.yml
Rollbacked the changes made for handling the file name length
Removed the task implementation in unix agent
Fixed issue of special characters from toerh languages are not gettin…
* Shared Repository Folder View

* enhancement

* code rabbit comments handled

* code rabbit comments handle

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
* Merge master into beta (#4418)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b142.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* Removed the task implementation in unix agent

* Fixed issue of special characters from toerh languages are not getting sent to mainframe

* Shared Repository Folder View (#4416)

* Shared Repository Folder View

* enhancement

* code rabbit comments handled

* code rabbit comments handle

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>

* Feature/uft lab phone selection (#4414)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b142.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* added an api call to fetch the current devices in the UFT Mobile Agent configurations

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* added a button to see the phones when selecting utf device and select from the list

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* tested and fixed all edge cases of the device selection (wrong or empty fields and switching platform)

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* fixed uft devices button

* fixed the design and made a filtering for the phone list

* fixed phone lab filtering system

* Removed the task implementation in unix agent

* changed UI from rejects raised

* updated the ui design

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>

* fixed defect number 58085  (#4411)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b142.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* Removed the task implementation in unix agent

* Fixed issue of special characters from toerh languages are not getting sent to mainframe

* added the status code number in the json and the output of the rest api call

* Rename status code parameter for clarity

* Shared Repository Folder View (#4416)

* Shared Repository Folder View

* enhancement

* code rabbit comments handled

* code rabbit comments handle

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>

* Update version numbers in GingerCoreCommon.csproj

* Feature/android tv automation support (#4413)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b142.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Add Android TV support and enhance platform handling

Enhanced platform support by introducing Android TV as a new platform type (`ePlatformType.AndroidTV`) alongside Mobile and iOS. Updated platform descriptions to include "Mobile/TV" for better clarity and added new image types for visual representation.

UI components now display friendly platform descriptions and improved tooltips. Added ComboBox support for enum descriptions in grids.

Extended the Appium driver to support Android TV with specific capabilities, configurations. Improved error handling and fallback mechanisms for driver initialization.

Updated `ActMobileDevice` to include Android TV-specific actions and defaulted action descriptions to "Mobile/Tv Device Action."

Enhanced `DeviceViewPage` to handle Android TV resolutions and scaling. Added dynamic screen size calculations with fallbacks for Android TV.

Updated agent configurations to include Android TV as a selectable driver type and set default configurations for Android TV agents.

Refactored code for better maintainability, improved exception handling, and consolidated driver configuration logic. Added new image resources for Android TV.

Improved `GenericAppiumDriver` to handle Android TV-specific scenarios, including focused element detection and screenshot scaling.

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* Removed the task implementation in unix agent

* Fixed issue of special characters from toerh languages are not getting sent to mainframe

* enhancement relted android TV - livespy

* enhancement related to android TV

* Refactor and enhance platform-specific logic

Refactored multiple methods across the codebase to improve maintainability, performance, and platform-specific functionality. Key changes include:

- Simplified `timenow` method in `PomAllElementsPage.xaml.cs` with improved user feedback and streamlined logic.
- Enhanced `BitmapToBase64` in `PomLearnUtils.cs` with null-checks, fallback mechanisms, and better error handling.
- Removed redundant methods `LoadGingerLiveSpyScript` and `GetFocusedElementInfo` in `GenericAppiumDriver.cs`.
- Refactored `SimulatePhotoOrBarcode` to update `GingerLiveSpy.js` handling.
- Added platform-specific logic for `HighLightElement`, `GetElementAtMousePosition`, `FindElementXmlNodeByXY`, `GetElementAtPoint`, and `GetPointOnAppWindow` in `GenericAppiumDriver.cs` to support Android TV, Android (mobile), iOS, and Web.
- Improved shadow DOM support and optimized event handling in `GingerLiveSpy.js`.
- Enhanced error handling, logging, and fallback mechanisms across the codebase.

These changes improve cross-platform compatibility, user experience, and code maintainability.

* Refactor and improve code readability and performance

Refactored `ResizeDeviceButtons` and `GetDevicePoint` methods in `DeviceViewPage.xaml.cs` to simplify logic, remove redundant checks, and improve maintainability. Updated `eDeviceSource` enum in `MobileDriverCommon.cs` by removing `LambdaTest` and reassigning `AndroidTV`.

Replaced the license header in `GingerLiveSpy.js` with an updated Apache License 2.0 notice. Added a new `ElementFromPoint` method to determine the deepest DOM element at a specific point.

Refactored driver configuration logic in `AgentOperations.cs` to improve readability, simplify `DriverConfigParam` processing, enhance error handling, and remove duplicate code. Introduced a new `InitDriverConfigs` method for better organization.

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>
Co-authored-by: tanushah <tanushah@amdocs.com>

* Enhancement/shared repository folder view2 (#4419)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b142.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* Removed the task implementation in unix agent

* Fixed issue of special characters from toerh languages are not getting sent to mainframe

* Shared Repository Folder View (#4416)

* Shared Repository Folder View

* enhancement

* code rabbit comments handled

* code rabbit comments handle

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* folder view fix

* merge conflict resolved

* merge conflict resolved

* enahcnement

* code rabbit comments handled

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>

* Improve Sikuli SetValue handling and focus logic (#4420)

Refactored SetValue to check for empty text before typing and use KeyModifier.NONE for normal input. Now sets an error if the value is empty. Also, SetFocusToSelectedApplicationInstance is now called synchronously instead of asynchronously.

* Exclamation mark fix (#4421)

* Exclamation mark fix

* commit

* Improve circular reference handling in JSON schema tools (#4422)

Enhanced detection and prevention of circular references and stack overflows in JSON schema-to-object generation. Added try-catch blocks for safer property access, improved stack management, and more robust array/property traversal. Also improved error handling when adding API models to repository folders by logging and fallback to parent folder if needed.

* Add tests for circular refs in JsonSchemaFaker, update count (#4423)

Add unit tests to SwaggetTests.cs to ensure JsonSchemaFaker handles circular and self-referencing JSON schemas without infinite loops or errors. Import NJsonSchema for schema support. Update assertion for "Add a new pet to the store-JSON" to expect 7 return values instead of 8.

* Handled set DS value issue (#4425)

* add to BF iicon removal (#4426)

* add to BF iicon removal

* uncommented code

* code rabbit suggestion

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* resolved conflicts

* resolved conflicts

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>
Co-authored-by: omri1911 <51326278+omri1911@users.noreply.github.com>
Co-authored-by: tanushahande2003 <Tanusha.Hande@amdocs.com>
Co-authored-by: tanushah <tanushah@amdocs.com>
* Prevent Excel formula injection in CSV export

D56006_Added logic to prefix values starting with '=', '+', '-', or '@' with a single quote when exporting BusinessFlow, Activity, Act description, and input parameters to CSV. This ensures spreadsheet applications treat these fields as plain text, preventing misinterpretation as formulas. Also refactored code for clarity using intermediate variables.

* Refactor CSV export for clarity and null safety

Renamed method parameters and loop variables for clarity and consistency. Updated references to use descriptive names. Added null check for act.Description to prevent exceptions. Improves code readability and robustness.

---------

Co-authored-by: tanushah <tanushah@amdocs.com>
* Update to .NET 10, package versions, and minor UI tweaks

Upgraded all projects from .NET 8.0 to .NET 10.0. Updated System.Text.Json to 10.0.2 and System.Drawing.Common to 10.0.2. Added Microsoft.IdentityModel.JsonWebTokens and Microsoft.IdentityModel.Tokens (8.15.0) to support JWT features. Bumped protobuf-net packages to 3.2.56. Improved XAML grid layout in DataSourceExportToExcelPage.xaml and added DesignerSerializationVisibility attributes in SnippingTool.cs. No functional logic changes.

* upgrade dotnet version to 10

* push supported dotnet version for Github actions

* Fix Dotnet version on Test stage

* Fix CLI TestsGithub

* Fix Test Dotnet Framework of Github with new version of dotnet

* nuget packages updation

* Downgrade EPPlus and Excel Interop, update dependencies

Downgraded EPPlus to 6.0.4 and Microsoft.Office.Interop.Excel to 15.0.4795.1001 across multiple projects for compatibility. Removed Microsoft.IdentityModel.* and System.IdentityModel.Tokens.Jwt from core projects, and removed SixLabors.ImageSharp from GingerCoreNET. Reformatted System.Globalization entry in GingerCore. These changes address dependency and compatibility issues.

---------

Co-authored-by: tanushah <tanushah@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Nadeem Jazmawe <nadeemj@amdocs.com>
* Mask API key in UI and update only on user edit

Added masking for API key in VRTExternalConfigurationsPage to prevent exposure. The real key is hidden with a generic mask, and only updated if the user changes the field. Existing key is preserved unless explicitly edited.

* Addition of validation

* updated validation

* updated validation rule

---------

Co-authored-by: tanushah <tanushah@amdocs.com>
…nOnConsoleDriver

added an option to change text color in consoleDriver window
Upgrade Version of Workflow actions And Fix codeql-config.yml file place/path
Updated the copyright year in all license headers from 2014-2025 to 2014-2026 across the codebase. Added the standard license header to several files that were previously missing it. No functional code changes were made.

Co-authored-by: tanushah <tanushah@amdocs.com>
Ensure MyRepositoryItem is registered with the serializer before test solution creation in SolutionRepositoryMultiThreadTest. Remove redundant registration call. Add null check to IsReady property in GingerSocket2Test to prevent possible NullReferenceException.
Updated GingerCore.csproj and GingerCoreNET.csproj to use LibGit2Sharp.NativeBinaries version 2.0.278 instead of 2.0.323. No other changes were made.

Co-authored-by: tanushah <tanushah@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
AmanPrasad43 and others added 21 commits February 20, 2026 18:43
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
…ry and changed version to 2026.3 (#4443)

Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Rewrite CreateQueryWithWhereList to use LINQ for column selection, simplify WHERE clause construction with a switch statement, and return queries in the expected format. Update DataSourceExportToExcelPage to persist ExportQueryValue for both action and non-action table elements. Clean up code and improve maintainability.

Co-authored-by: tanushah <tanushah@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
…tected by Dependebot Github Security scan alert (#4451) (#4455)

Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
* Merge master to official branch (#4444)

* Update codeql-analysis.yml

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* Removed the task implementation in unix agent

* Fixed issue of special characters from toerh languages are not getting sent to mainframe

* Shared Repository Folder View (#4416)

* Shared Repository Folder View

* enhancement

* code rabbit comments handled

* code rabbit comments handle

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* Master for beta merge (#4429)

* Merge master into beta (#4418)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b142.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* Removed the task implementation in unix agent

* Fixed issue of special characters from toerh languages are not getting sent to mainframe

* Shared Repository Folder View (#4416)

* Shared Repository Folder View

* enhancement

* code rabbit comments handled

* code rabbit comments handle

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>

* Feature/uft lab phone selection (#4414)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b142.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* added an api call to fetch the current devices in the UFT Mobile Agent configurations

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* added a button to see the phones when selecting utf device and select from the list

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* tested and fixed all edge cases of the device selection (wrong or empty fields and switching platform)

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* fixed uft devices button

* fixed the design and made a filtering for the phone list

* fixed phone lab filtering system

* Removed the task implementation in unix agent

* changed UI from rejects raised

* updated the ui design

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>

* fixed defect number 58085  (#4411)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b142.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* Removed the task implementation in unix agent

* Fixed issue of special characters from toerh languages are not getting sent to mainframe

* added the status code number in the json and the output of the rest api call

* Rename status code parameter for clarity

* Shared Repository Folder View (#4416)

* Shared Repository Folder View

* enhancement

* code rabbit comments handled

* code rabbit comments handle

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>

* Update version numbers in GingerCoreCommon.csproj

* Feature/android tv automation support (#4413)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b142.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Add Android TV support and enhance platform handling

Enhanced platform support by introducing Android TV as a new platform type (`ePlatformType.AndroidTV`) alongside Mobile and iOS. Updated platform descriptions to include "Mobile/TV" for better clarity and added new image types for visual representation.

UI components now display friendly platform descriptions and improved tooltips. Added ComboBox support for enum descriptions in grids.

Extended the Appium driver to support Android TV with specific capabilities, configurations. Improved error handling and fallback mechanisms for driver initialization.

Updated `ActMobileDevice` to include Android TV-specific actions and defaulted action descriptions to "Mobile/Tv Device Action."

Enhanced `DeviceViewPage` to handle Android TV resolutions and scaling. Added dynamic screen size calculations with fallbacks for Android TV.

Updated agent configurations to include Android TV as a selectable driver type and set default configurations for Android TV agents.

Refactored code for better maintainability, improved exception handling, and consolidated driver configuration logic. Added new image resources for Android TV.

Improved `GenericAppiumDriver` to handle Android TV-specific scenarios, including focused element detection and screenshot scaling.

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* Removed the task implementation in unix agent

* Fixed issue of special characters from toerh languages are not getting sent to mainframe

* enhancement relted android TV - livespy

* enhancement related to android TV

* Refactor and enhance platform-specific logic

Refactored multiple methods across the codebase to improve maintainability, performance, and platform-specific functionality. Key changes include:

- Simplified `timenow` method in `PomAllElementsPage.xaml.cs` with improved user feedback and streamlined logic.
- Enhanced `BitmapToBase64` in `PomLearnUtils.cs` with null-checks, fallback mechanisms, and better error handling.
- Removed redundant methods `LoadGingerLiveSpyScript` and `GetFocusedElementInfo` in `GenericAppiumDriver.cs`.
- Refactored `SimulatePhotoOrBarcode` to update `GingerLiveSpy.js` handling.
- Added platform-specific logic for `HighLightElement`, `GetElementAtMousePosition`, `FindElementXmlNodeByXY`, `GetElementAtPoint`, and `GetPointOnAppWindow` in `GenericAppiumDriver.cs` to support Android TV, Android (mobile), iOS, and Web.
- Improved shadow DOM support and optimized event handling in `GingerLiveSpy.js`.
- Enhanced error handling, logging, and fallback mechanisms across the codebase.

These changes improve cross-platform compatibility, user experience, and code maintainability.

* Refactor and improve code readability and performance

Refactored `ResizeDeviceButtons` and `GetDevicePoint` methods in `DeviceViewPage.xaml.cs` to simplify logic, remove redundant checks, and improve maintainability. Updated `eDeviceSource` enum in `MobileDriverCommon.cs` by removing `LambdaTest` and reassigning `AndroidTV`.

Replaced the license header in `GingerLiveSpy.js` with an updated Apache License 2.0 notice. Added a new `ElementFromPoint` method to determine the deepest DOM element at a specific point.

Refactored driver configuration logic in `AgentOperations.cs` to improve readability, simplify `DriverConfigParam` processing, enhance error handling, and remove duplicate code. Introduced a new `InitDriverConfigs` method for better organization.

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>
Co-authored-by: tanushah <tanushah@amdocs.com>

* Enhancement/shared repository folder view2 (#4419)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b142.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* Removed the task implementation in unix agent

* Fixed issue of special characters from toerh languages are not getting sent to mainframe

* Shared Repository Folder View (#4416)

* Shared Repository Folder View

* enhancement

* code rabbit comments handled

* code rabbit comments handle

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* folder view fix

* merge conflict resolved

* merge conflict resolved

* enahcnement

* code rabbit comments handled

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>

* Improve Sikuli SetValue handling and focus logic (#4420)

Refactored SetValue to check for empty text before typing and use KeyModifier.NONE for normal input. Now sets an error if the value is empty. Also, SetFocusToSelectedApplicationInstance is now called synchronously instead of asynchronously.

* Exclamation mark fix (#4421)

* Exclamation mark fix

* commit

* Improve circular reference handling in JSON schema tools (#4422)

Enhanced detection and prevention of circular references and stack overflows in JSON schema-to-object generation. Added try-catch blocks for safer property access, improved stack management, and more robust array/property traversal. Also improved error handling when adding API models to repository folders by logging and fallback to parent folder if needed.

* Add tests for circular refs in JsonSchemaFaker, update count (#4423)

Add unit tests to SwaggetTests.cs to ensure JsonSchemaFaker handles circular and self-referencing JSON schemas without infinite loops or errors. Import NJsonSchema for schema support. Update assertion for "Add a new pet to the store-JSON" to expect 7 return values instead of 8.

* Handled set DS value issue (#4425)

* add to BF iicon removal (#4426)

* add to BF iicon removal

* uncommented code

* code rabbit suggestion

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* resolved conflicts

* resolved conflicts

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>
Co-authored-by: omri1911 <51326278+omri1911@users.noreply.github.com>
Co-authored-by: tanushahande2003 <Tanusha.Hande@amdocs.com>
Co-authored-by: tanushah <tanushah@amdocs.com>

* Prevent Excel formula injection in CSV export (#4431)

* Prevent Excel formula injection in CSV export

D56006_Added logic to prefix values starting with '=', '+', '-', or '@' with a single quote when exporting BusinessFlow, Activity, Act description, and input parameters to CSV. This ensures spreadsheet applications treat these fields as plain text, preventing misinterpretation as formulas. Also refactored code for clarity using intermediate variables.

* Refactor CSV export for clarity and null safety

Renamed method parameters and loop variables for clarity and consistency. Updated references to use descriptive names. Added null check for act.Description to prevent exceptions. Improves code readability and robustness.

---------

Co-authored-by: tanushah <tanushah@amdocs.com>

* added an option to change text color in consoleDriver window

* Action Description fix (#4434)

* Update to .NET 10, package versions, and minor UI tweaks (#4435)

* Update to .NET 10, package versions, and minor UI tweaks

Upgraded all projects from .NET 8.0 to .NET 10.0. Updated System.Text.Json to 10.0.2 and System.Drawing.Common to 10.0.2. Added Microsoft.IdentityModel.JsonWebTokens and Microsoft.IdentityModel.Tokens (8.15.0) to support JWT features. Bumped protobuf-net packages to 3.2.56. Improved XAML grid layout in DataSourceExportToExcelPage.xaml and added DesignerSerializationVisibility attributes in SnippingTool.cs. No functional logic changes.

* upgrade dotnet version to 10

* push supported dotnet version for Github actions

* Fix Dotnet version on Test stage

* Fix CLI TestsGithub

* Fix Test Dotnet Framework of Github with new version of dotnet

* nuget packages updation

* Downgrade EPPlus and Excel Interop, update dependencies

Downgraded EPPlus to 6.0.4 and Microsoft.Office.Interop.Excel to 15.0.4795.1001 across multiple projects for compatibility. Removed Microsoft.IdentityModel.* and System.IdentityModel.Tokens.Jwt from core projects, and removed SixLabors.ImageSharp from GingerCoreNET. Reformatted System.Globalization entry in GingerCore. These changes address dependency and compatibility issues.

---------

Co-authored-by: tanushah <tanushah@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Nadeem Jazmawe <nadeemj@amdocs.com>

* Mask API key in UI and update only on user edit (#4436)

* Mask API key in UI and update only on user edit

Added masking for API key in VRTExternalConfigurationsPage to prevent exposure. The real key is hidden with a generic mask, and only updated if the user changes the field. Existing key is preserved unless explicitly edited.

* Addition of validation

* updated validation

* updated validation rule

---------

Co-authored-by: tanushah <tanushah@amdocs.com>

* Fix codeql-config.yml file place

* Upgrade Github Actions versions

* Update license headers to 2026 and add missing headers (#4440)

Updated the copyright year in all license headers from 2014-2025 to 2014-2026 across the codebase. Added the standard license header to several files that were previously missing it. No functional code changes were made.

Co-authored-by: tanushah <tanushah@amdocs.com>

* Register serializer classes earlier; null check in IsReady (#4441)

Ensure MyRepositoryItem is registered with the serializer before test solution creation in SolutionRepositoryMultiThreadTest. Remove redundant registration call. Add null check to IsReady property in GingerSocket2Test to prevent possible NullReferenceException.

* Downgrade LibGit2Sharp.NativeBinaries to 2.0.278 (#4442)

Updated GingerCore.csproj and GingerCoreNET.csproj to use LibGit2Sharp.NativeBinaries version 2.0.278 instead of 2.0.323. No other changes were made.

Co-authored-by: tanushah <tanushah@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* Updated the SSH and Cryptography nuget package to latest (#4432)

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* contract update for pipeline run description (#4437)

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* Added Code to allow Solution File to be loaded using SolutionRepository and changed version to 2026.3 (#4443)

Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>

---------

Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: omri1911 <51326278+omri1911@users.noreply.github.com>
Co-authored-by: tanushahande2003 <Tanusha.Hande@amdocs.com>
Co-authored-by: tanushah <tanushah@amdocs.com>
Co-authored-by: Omri Agady <omri@agady.com>
Co-authored-by: Nadeem Jazmawe <nadeemj@amdocs.com>
Co-authored-by: Nadeem Jazmawe <44744877+NadeemJazmawe@users.noreply.github.com>

* Updated ginger core common nuget version (#4445)

* Revert solution iteminfo from SolutionRepository

* updated nuget version for publishing

---------

Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>

* Allow Fetching/Updating Ginger.Solution.xml through SolutionRepository/parser service

* Need to Update GingerCoreCommon Version to generate new nuget package

* Updated to latest version of Magick.NET nuget due to vulnarability detected by Dependebot Github Security scan alert (#4451)

Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>

* Enhance API Key encryption and remove masking logic (#4449)

* Enhance API Key encryption and remove masking logic

API Key is now encrypted on field exit and before saving, unless it is a value expression or already encrypted. Removed the previous masking/tag mechanism for the API Key textbox, simplifying the logic and improving security. Added necessary using directives for new functionality.

* Encrypt API keys and tokens and before save

Added automatic encryption for Applitools and Sealights sensitive fields (API keys, agent tokens) when text boxes lose focus and before saving configurations. Skips encryption for value expressions and already encrypted values. Event handlers are attached and re-attached as needed. Includes minor refactoring and comments.

* by mistake changes revert

---------

Co-authored-by: tanushah <tanushah@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* Refactor export query logic for Excel data source (#4452)

* Refactor export query logic for Excel data source

Improve CreateQueryWithWhereList using LINQ and switch for operators, skipping invalid conditions and returning cleaner query strings. Update DataSourceExportToExcelPage to persist ExportQueryValue in both action and standalone modes, ensuring consistent query generation and improved code clarity.

* Add NotStartsWith/NotEndsWith operators and improve where clause

Added support for "NotStartsWith" and "NotEndsWith" operators in SQL-like predicate generation using "Not Like". Also updated logic to omit the "where" keyword when no conditions are present, returning only the column list for cleaner output.

---------

Co-authored-by: tanushah <tanushah@amdocs.com>

* PipelineID Runset fix (#4453)

Co-authored-by: amanpras <amanpras@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* Shared repository folder item fix (#4454)

* Shared repository folder item fix

* Column hide for Overriting Share repo

---------

Co-authored-by: amanpras <amanpras@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* Update installer script for .NET runtime versions

* Update CI pipelines to use .NET 10.0.103 (#4456)

Switched Build.yml and Release.yml to install and reference .NET SDK 10.0.103 instead of 8.0.100. Updated all file copy and signing steps to use net10.0-windows10.0.17763.0 output directories. Adjusted comments and references to match the new .NET version.

* resolved conflicts

* resolved conflicts

---------

Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: omri1911 <51326278+omri1911@users.noreply.github.com>
Co-authored-by: tanushahande2003 <Tanusha.Hande@amdocs.com>
Co-authored-by: tanushah <tanushah@amdocs.com>
Co-authored-by: Omri Agady <omri@agady.com>
Co-authored-by: Nadeem Jazmawe <nadeemj@amdocs.com>
Co-authored-by: Nadeem Jazmawe <44744877+NadeemJazmawe@users.noreply.github.com>
Co-authored-by: amanpras <amanpras@amdocs.com>
* Selenium upgrade

* selenium upgrade

* selenium helper upgrade

* awaitiable Update driver

---------

Co-authored-by: amanpras <amanpras@amdocs.com>
* Add explicit Android TV handling for unsupported actions

Now, actions like PressMenuButton, OpenCamera, SimulatePhoto, and others set a clear error message when attempted on Android TV. Also updated SimulatePhotoOrBarcode to throw a specific exception for Android TV, improving error feedback and platform-specific handling.

* Refactor Android TV unsupported ops handling in Appium driver

Centralize error handling for unsupported Android TV actions
into a single method, reducing code duplication. Update
ToggleData to use DevicePlatformType checks instead of driver
type, improving clarity and maintainability.

---------

Co-authored-by: tanushah <tanushah@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: amanpras <amanpras@amdocs.com>
Upgraded Magick.NET-Q16-AnyCPU from 14.10.3 to 14.10.4 in Ginger, GingerCoreNET, and GingerTest projects. Updated MimeKit from 4.14.0 to 4.15.1 across all projects that reference it. No other changes were made.

Co-authored-by: tanushah <tanushah@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
* Update AutoMapper to 16.1.1 and add LoggerFactory support

Upgraded AutoMapper to version 16.1.1 across all projects. Updated all MapperConfiguration instantiations to include a LoggerFactory as required by the new version. Added Microsoft.Extensions.Logging imports where necessary. No changes to mapping logic; these updates ensure compatibility and proper logging configuration with the latest AutoMapper API.

* Use NullLoggerFactory.Instance for AutoMapper config instances

Replaced new LoggerFactory() with NullLoggerFactory.Instance in AutoMapper.MapperConfiguration across multiple files. Added Microsoft.Extensions.Logging.Abstractions where needed. This disables logging for AutoMapper configuration, reducing log output and potential overhead. No functional changes to mapping logic.

* Remove Microsoft.Extensions.Logging imports from codebase

Removed all using statements for Microsoft.Extensions.Logging across multiple files. No other code changes were made; this commit eliminates unused logging framework references.

---------

Co-authored-by: tanushah <tanushah@amdocs.com>
* Improve password variable handling and reset logic

VariablePasswordString now tracks initial value for proper reset.
Password setter only sets initial value once. SetInitialValue
stores encrypted value as initial and current. ActSetVariableValue
supports updating password variables. Unit test updated to verify
encryption/decryption. Password variables now selectable in UI.

* Add tests for Password String variable Set Value support

Updated activity-level test for Password String Set Value support and added new tests for Business Flow and Global levels. Tests verify encrypted storage and correct value resolution at all supported scopes.

---------

Co-authored-by: tanushah <tanushah@amdocs.com>
Upgraded the Magick.NET-Q16-AnyCPU NuGet package from 14.10.4 to 14.11.1 in Ginger, GingerCoreNET, and GingerTest project files to ensure compatibility with the latest features and bug fixes. No other changes were made.

Co-authored-by: tanushah <tanushah@amdocs.com>
* Add VE button to Path column in XML Tag Validation grid

Added a "..." button to each row in the Path column of the DynamicParametersGrid in ActXMLValidateTagsEditPage. Clicking the button opens the Value Expression Editor for the "Param" field of the selected row. Updated the event handler to support editing the correct field based on the button's Tag property.

* Refactor null check in InputGridVEButton_Click handler

Expanded the null check for ActInputValue (AIV) in the InputGridVEButton_Click event handler to use braces, improving code readability and consistency without changing functionality.

---------

Co-authored-by: tanushah <tanushah@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
* added an app selection as well on the uftMoblie selection

* added the app icons in the app selection

* made it so you can't select an opposite os app and phone

* fixed wrong capability on app selected

* Add loading spinner, fix device/app pre-selection matching, and rename button to Select Lab Device/App

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
…esign (#4474)

* Restyle email execution report to match GingerPlay online report

Made-with: Cursor

* fixed spacing issue in the table

* Update email report colors and fields ordering to match GingerPlay style

* added spacing between sections

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
* Merge master to official branch (#4444)

* Update codeql-analysis.yml

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* Removed the task implementation in unix agent

* Fixed issue of special characters from toerh languages are not getting sent to mainframe

* Shared Repository Folder View (#4416)

* Shared Repository Folder View

* enhancement

* code rabbit comments handled

* code rabbit comments handle

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* Master for beta merge (#4429)

* Merge master into beta (#4418)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b1428dfecc31b178de767073a22de26682a1c.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* Removed the task implementation in unix agent

* Fixed issue of special characters from toerh languages are not getting sent to mainframe

* Shared Repository Folder View (#4416)

* Shared Repository Folder View

* enhancement

* code rabbit comments handled

* code rabbit comments handle

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>

* Feature/uft lab phone selection (#4414)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b1428dfecc31b178de767073a22de26682a1c.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* added an api call to fetch the current devices in the UFT Mobile Agent configurations

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* added a button to see the phones when selecting utf device and select from the list

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* tested and fixed all edge cases of the device selection (wrong or empty fields and switching platform)

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* fixed uft devices button

* fixed the design and made a filtering for the phone list

* fixed phone lab filtering system

* Removed the task implementation in unix agent

* changed UI from rejects raised

* updated the ui design

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>

* fixed defect number 58085  (#4411)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b1428dfecc31b178de767073a22de26682a1c.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* Removed the task implementation in unix agent

* Fixed issue of special characters from toerh languages are not getting sent to mainframe

* added the status code number in the json and the output of the rest api call

* Rename status code parameter for clarity

* Shared Repository Folder View (#4416)

* Shared Repository Folder View

* enhancement

* code rabbit comments handled

* code rabbit comments handle

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>

* Update version numbers in GingerCoreCommon.csproj

* Feature/android tv automation support (#4413)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b1428dfecc31b178de767073a22de26682a1c.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Add Android TV support and enhance platform handling

Enhanced platform support by introducing Android TV as a new platform type (`ePlatformType.AndroidTV`) alongside Mobile and iOS. Updated platform descriptions to include "Mobile/TV" for better clarity and added new image types for visual representation.

UI components now display friendly platform descriptions and improved tooltips. Added ComboBox support for enum descriptions in grids.

Extended the Appium driver to support Android TV with specific capabilities, configurations. Improved error handling and fallback mechanisms for driver initialization.

Updated `ActMobileDevice` to include Android TV-specific actions and defaulted action descriptions to "Mobile/Tv Device Action."

Enhanced `DeviceViewPage` to handle Android TV resolutions and scaling. Added dynamic screen size calculations with fallbacks for Android TV.

Updated agent configurations to include Android TV as a selectable driver type and set default configurations for Android TV agents.

Refactored code for better maintainability, improved exception handling, and consolidated driver configuration logic. Added new image resources for Android TV.

Improved `GenericAppiumDriver` to handle Android TV-specific scenarios, including focused element detection and screenshot scaling.

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* Removed the task implementation in unix agent

* Fixed issue of special characters from toerh languages are not getting sent to mainframe

* enhancement relted android TV - livespy

* enhancement related to android TV

* Refactor and enhance platform-specific logic

Refactored multiple methods across the codebase to improve maintainability, performance, and platform-specific functionality. Key changes include:

- Simplified `timenow` method in `PomAllElementsPage.xaml.cs` with improved user feedback and streamlined logic.
- Enhanced `BitmapToBase64` in `PomLearnUtils.cs` with null-checks, fallback mechanisms, and better error handling.
- Removed redundant methods `LoadGingerLiveSpyScript` and `GetFocusedElementInfo` in `GenericAppiumDriver.cs`.
- Refactored `SimulatePhotoOrBarcode` to update `GingerLiveSpy.js` handling.
- Added platform-specific logic for `HighLightElement`, `GetElementAtMousePosition`, `FindElementXmlNodeByXY`, `GetElementAtPoint`, and `GetPointOnAppWindow` in `GenericAppiumDriver.cs` to support Android TV, Android (mobile), iOS, and Web.
- Improved shadow DOM support and optimized event handling in `GingerLiveSpy.js`.
- Enhanced error handling, logging, and fallback mechanisms across the codebase.

These changes improve cross-platform compatibility, user experience, and code maintainability.

* Refactor and improve code readability and performance

Refactored `ResizeDeviceButtons` and `GetDevicePoint` methods in `DeviceViewPage.xaml.cs` to simplify logic, remove redundant checks, and improve maintainability. Updated `eDeviceSource` enum in `MobileDriverCommon.cs` by removing `LambdaTest` and reassigning `AndroidTV`.

Replaced the license header in `GingerLiveSpy.js` with an updated Apache License 2.0 notice. Added a new `ElementFromPoint` method to determine the deepest DOM element at a specific point.

Refactored driver configuration logic in `AgentOperations.cs` to improve readability, simplify `DriverConfigParam` processing, enhance error handling, and remove duplicate code. Introduced a new `InitDriverConfigs` method for better organization.

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>
Co-authored-by: tanushah <tanushah@amdocs.com>

* Enhancement/shared repository folder view2 (#4419)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b1428dfecc31b178de767073a22de26682a1c.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* Removed the task implementation in unix agent

* Fixed issue of special characters from toerh languages are not getting sent to mainframe

* Shared Repository Folder View (#4416)

* Shared Repository Folder View

* enhancement

* code rabbit comments handled

* code rabbit comments handle

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* folder view fix

* merge conflict resolved

* merge conflict resolved

* enahcnement

* code rabbit comments handled

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>

* Improve Sikuli SetValue handling and focus logic (#4420)

Refactored SetValue to check for empty text before typing and use KeyModifier.NONE for normal input. Now sets an error if the value is empty. Also, SetFocusToSelectedApplicationInstance is now called synchronously instead of asynchronously.

* Exclamation mark fix (#4421)

* Exclamation mark fix

* commit

* Improve circular reference handling in JSON schema tools (#4422)

Enhanced detection and prevention of circular references and stack overflows in JSON schema-to-object generation. Added try-catch blocks for safer property access, improved stack management, and more robust array/property traversal. Also improved error handling when adding API models to repository folders by logging and fallback to parent folder if needed.

* Add tests for circular refs in JsonSchemaFaker, update count (#4423)

Add unit tests to SwaggetTests.cs to ensure JsonSchemaFaker handles circular and self-referencing JSON schemas without infinite loops or errors. Import NJsonSchema for schema support. Update assertion for "Add a new pet to the store-JSON" to expect 7 return values instead of 8.

* Handled set DS value issue (#4425)

* add to BF iicon removal (#4426)

* add to BF iicon removal

* uncommented code

* code rabbit suggestion

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* resolved conflicts

* resolved conflicts

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>
Co-authored-by: omri1911 <51326278+omri1911@users.noreply.github.com>
Co-authored-by: tanushahande2003 <Tanusha.Hande@amdocs.com>
Co-authored-by: tanushah <tanushah@amdocs.com>

* Prevent Excel formula injection in CSV export (#4431)

* Prevent Excel formula injection in CSV export

D56006_Added logic to prefix values starting with '=', '+', '-', or '@' with a single quote when exporting BusinessFlow, Activity, Act description, and input parameters to CSV. This ensures spreadsheet applications treat these fields as plain text, preventing misinterpretation as formulas. Also refactored code for clarity using intermediate variables.

* Refactor CSV export for clarity and null safety

Renamed method parameters and loop variables for clarity and consistency. Updated references to use descriptive names. Added null check for act.Description to prevent exceptions. Improves code readability and robustness.

---------

Co-authored-by: tanushah <tanushah@amdocs.com>

* added an option to change text color in consoleDriver window

* Action Description fix (#4434)

* Update to .NET 10, package versions, and minor UI tweaks (#4435)

* Update to .NET 10, package versions, and minor UI tweaks

Upgraded all projects from .NET 8.0 to .NET 10.0. Updated System.Text.Json to 10.0.2 and System.Drawing.Common to 10.0.2. Added Microsoft.IdentityModel.JsonWebTokens and Microsoft.IdentityModel.Tokens (8.15.0) to support JWT features. Bumped protobuf-net packages to 3.2.56. Improved XAML grid layout in DataSourceExportToExcelPage.xaml and added DesignerSerializationVisibility attributes in SnippingTool.cs. No functional logic changes.

* upgrade dotnet version to 10

* push supported dotnet version for Github actions

* Fix Dotnet version on Test stage

* Fix CLI TestsGithub

* Fix Test Dotnet Framework of Github with new version of dotnet

* nuget packages updation

* Downgrade EPPlus and Excel Interop, update dependencies

Downgraded EPPlus to 6.0.4 and Microsoft.Office.Interop.Excel to 15.0.4795.1001 across multiple projects for compatibility. Removed Microsoft.IdentityModel.* and System.IdentityModel.Tokens.Jwt from core projects, and removed SixLabors.ImageSharp from GingerCoreNET. Reformatted System.Globalization entry in GingerCore. These changes address dependency and compatibility issues.

---------

Co-authored-by: tanushah <tanushah@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Nadeem Jazmawe <nadeemj@amdocs.com>

* Mask API key in UI and update only on user edit (#4436)

* Mask API key in UI and update only on user edit

Added masking for API key in VRTExternalConfigurationsPage to prevent exposure. The real key is hidden with a generic mask, and only updated if the user changes the field. Existing key is preserved unless explicitly edited.

* Addition of validation

* updated validation

* updated validation rule

---------

Co-authored-by: tanushah <tanushah@amdocs.com>

* Fix codeql-config.yml file place

* Upgrade Github Actions versions

* Update license headers to 2026 and add missing headers (#4440)

Updated the copyright year in all license headers from 2014-2025 to 2014-2026 across the codebase. Added the standard license header to several files that were previously missing it. No functional code changes were made.

Co-authored-by: tanushah <tanushah@amdocs.com>

* Register serializer classes earlier; null check in IsReady (#4441)

Ensure MyRepositoryItem is registered with the serializer before test solution creation in SolutionRepositoryMultiThreadTest. Remove redundant registration call. Add null check to IsReady property in GingerSocket2Test to prevent possible NullReferenceException.

* Downgrade LibGit2Sharp.NativeBinaries to 2.0.278 (#4442)

Updated GingerCore.csproj and GingerCoreNET.csproj to use LibGit2Sharp.NativeBinaries version 2.0.278 instead of 2.0.323. No other changes were made.

Co-authored-by: tanushah <tanushah@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* Updated the SSH and Cryptography nuget package to latest (#4432)

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* contract update for pipeline run description (#4437)

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* Added Code to allow Solution File to be loaded using SolutionRepository and changed version to 2026.3 (#4443)

Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>

---------

Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: omri1911 <51326278+omri1911@users.noreply.github.com>
Co-authored-by: tanushahande2003 <Tanusha.Hande@amdocs.com>
Co-authored-by: tanushah <tanushah@amdocs.com>
Co-authored-by: Omri Agady <omri@agady.com>
Co-authored-by: Nadeem Jazmawe <nadeemj@amdocs.com>
Co-authored-by: Nadeem Jazmawe <44744877+NadeemJazmawe@users.noreply.github.com>

* Updated ginger core common nuget version (#4445)

* Revert solution iteminfo from SolutionRepository

* updated nuget version for publishing

---------

Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>

* Allow Fetching/Updating Ginger.Solution.xml through SolutionRepository/parser service

* Need to Update GingerCoreCommon Version to generate new nuget package

* Updated to latest version of Magick.NET nuget due to vulnarability detected by Dependebot Github Security scan alert (#4451)

Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>

* Enhance API Key encryption and remove masking logic (#4449)

* Enhance API Key encryption and remove masking logic

API Key is now encrypted on field exit and before saving, unless it is a value expression or already encrypted. Removed the previous masking/tag mechanism for the API Key textbox, simplifying the logic and improving security. Added necessary using directives for new functionality.

* Encrypt API keys and tokens and before save

Added automatic encryption for Applitools and Sealights sensitive fields (API keys, agent tokens) when text boxes lose focus and before saving configurations. Skips encryption for value expressions and already encrypted values. Event handlers are attached and re-attached as needed. Includes minor refactoring and comments.

* by mistake changes revert

---------

Co-authored-by: tanushah <tanushah@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* Refactor export query logic for Excel data source (#4452)

* Refactor export query logic for Excel data source

Improve CreateQueryWithWhereList using LINQ and switch for operators, skipping invalid conditions and returning cleaner query strings. Update DataSourceExportToExcelPage to persist ExportQueryValue in both action and standalone modes, ensuring consistent query generation and improved code clarity.

* Add NotStartsWith/NotEndsWith operators and improve where clause

Added support for "NotStartsWith" and "NotEndsWith" operators in SQL-like predicate generation using "Not Like". Also updated logic to omit the "where" keyword when no conditions are present, returning only the column list for cleaner output.

---------

Co-authored-by: tanushah <tanushah@amdocs.com>

* PipelineID Runset fix (#4453)

Co-authored-by: amanpras <amanpras@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* Shared repository folder item fix (#4454)

* Shared repository folder item fix

* Column hide for Overriting Share repo

---------

Co-authored-by: amanpras <amanpras@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* Update installer script for .NET runtime versions

* Update CI pipelines to use .NET 10.0.103 (#4456)

Switched Build.yml and Release.yml to install and reference .NET SDK 10.0.103 instead of 8.0.100. Updated all file copy and signing steps to use net10.0-windows10.0.17763.0 output directories. Adjusted comments and references to match the new .NET version.

* Merge master to official branch 2026.4 (#4475)

* Update codeql-analysis.yml

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* Removed the task implementation in unix agent

* Fixed issue of special characters from toerh languages are not getting sent to mainframe

* Shared Repository Folder View (#4416)

* Shared Repository Folder View

* enhancement

* code rabbit comments handled

* code rabbit comments handle

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* Master for beta merge (#4429)

* Merge master into beta (#4418)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b1428dfecc31b178de767073a22de26682a1c.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* Removed the task implementation in unix agent

* Fixed issue of special characters from toerh languages are not getting sent to mainframe

* Shared Repository Folder View (#4416)

* Shared Repository Folder View

* enhancement

* code rabbit comments handled

* code rabbit comments handle

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>

* Feature/uft lab phone selection (#4414)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b1428dfecc31b178de767073a22de26682a1c.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* added an api call to fetch the current devices in the UFT Mobile Agent configurations

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* added a button to see the phones when selecting utf device and select from the list

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* tested and fixed all edge cases of the device selection (wrong or empty fields and switching platform)

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* fixed uft devices button

* fixed the design and made a filtering for the phone list

* fixed phone lab filtering system

* Removed the task implementation in unix agent

* changed UI from rejects raised

* updated the ui design

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>

* fixed defect number 58085  (#4411)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b1428dfecc31b178de767073a22de26682a1c.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* Removed the task implementation in unix agent

* Fixed issue of special characters from toerh languages are not getting sent to mainframe

* added the status code number in the json and the output of the rest api call

* Rename status code parameter for clarity

* Shared Repository Folder View (#4416)

* Shared Repository Folder View

* enhancement

* code rabbit comments handled

* code rabbit comments handle

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>

* Update version numbers in GingerCoreCommon.csproj

* Feature/android tv automation support (#4413)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b1428dfecc31b178de767073a22de26682a1c.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Add Android TV support and enhance platform handling

Enhanced platform support by introducing Android TV as a new platform type (`ePlatformType.AndroidTV`) alongside Mobile and iOS. Updated platform descriptions to include "Mobile/TV" for better clarity and added new image types for visual representation.

UI components now display friendly platform descriptions and improved tooltips. Added ComboBox support for enum descriptions in grids.

Extended the Appium driver to support Android TV with specific capabilities, configurations. Improved error handling and fallback mechanisms for driver initialization.

Updated `ActMobileDevice` to include Android TV-specific actions and defaulted action descriptions to "Mobile/Tv Device Action."

Enhanced `DeviceViewPage` to handle Android TV resolutions and scaling. Added dynamic screen size calculations with fallbacks for Android TV.

Updated agent configurations to include Android TV as a selectable driver type and set default configurations for Android TV agents.

Refactored code for better maintainability, improved exception handling, and consolidated driver configuration logic. Added new image resources for Android TV.

Improved `GenericAppiumDriver` to handle Android TV-specific scenarios, including focused element detection and screenshot scaling.

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* Removed the task implementation in unix agent

* Fixed issue of special characters from toerh languages are not getting sent to mainframe

* enhancement relted android TV - livespy

* enhancement related to android TV

* Refactor and enhance platform-specific logic

Refactored multiple methods across the codebase to improve maintainability, performance, and platform-specific functionality. Key changes include:

- Simplified `timenow` method in `PomAllElementsPage.xaml.cs` with improved user feedback and streamlined logic.
- Enhanced `BitmapToBase64` in `PomLearnUtils.cs` with null-checks, fallback mechanisms, and better error handling.
- Removed redundant methods `LoadGingerLiveSpyScript` and `GetFocusedElementInfo` in `GenericAppiumDriver.cs`.
- Refactored `SimulatePhotoOrBarcode` to update `GingerLiveSpy.js` handling.
- Added platform-specific logic for `HighLightElement`, `GetElementAtMousePosition`, `FindElementXmlNodeByXY`, `GetElementAtPoint`, and `GetPointOnAppWindow` in `GenericAppiumDriver.cs` to support Android TV, Android (mobile), iOS, and Web.
- Improved shadow DOM support and optimized event handling in `GingerLiveSpy.js`.
- Enhanced error handling, logging, and fallback mechanisms across the codebase.

These changes improve cross-platform compatibility, user experience, and code maintainability.

* Refactor and improve code readability and performance

Refactored `ResizeDeviceButtons` and `GetDevicePoint` methods in `DeviceViewPage.xaml.cs` to simplify logic, remove redundant checks, and improve maintainability. Updated `eDeviceSource` enum in `MobileDriverCommon.cs` by removing `LambdaTest` and reassigning `AndroidTV`.

Replaced the license header in `GingerLiveSpy.js` with an updated Apache License 2.0 notice. Added a new `ElementFromPoint` method to determine the deepest DOM element at a specific point.

Refactored driver configuration logic in `AgentOperations.cs` to improve readability, simplify `DriverConfigParam` processing, enhance error handling, and remove duplicate code. Introduced a new `InitDriverConfigs` method for better organization.

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>
Co-authored-by: tanushah <tanushah@amdocs.com>

* Enhancement/shared repository folder view2 (#4419)

* Mobile accessibility issue for ios - fix

* added CodeQL WF

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* Update codeql-analysis.yml

* removed macOS build steps

* Java Explorer issue fix

* Update codeql-analysis.yml

excluding unwanted folders and projects

* Update README.md

updating for triggering security

* mobily accessibility locators identification issue fix

* codeql related updates

* coderabbit comments handled

* Fix: GitHub SecurityAlerts 198,199, 200, 201, 202

* its tested and working

* Codecy suggestions

* CodeRabit Suggestions

* CodeRabbit suggestions

* CodeRabbit Suggestions

* Fix for Git Security Alert 181

* codacy suggestions

* RemovedUnusedMethod

* Pull all variables  except password variables

* Removing code that passes Ginger variables to Robot script using temp file

* Revert "Removing code that passes Ginger variables to Robot script using temp file"

This reverts commit c62b1428dfecc31b178de767073a22de26682a1c.

* Fixed DBoperations Git Alerts

* Build Errors Fixed

* Removed Unused GingerExecutionReport folder from Ginger also handled few codacy comments

* Code Issues

* Enabled only Windows build for CodeQL

* added variable option

* MSSQL Fix Test

* Test Changes

* Bar user inputted connection string.

* Not using GetConnectionString method

* added removing variable value code

* code rabbit suggested changes

* code rabbit changes

* Do not assign the Expression to mValueCalculated if it was failed to evaluate.

* Enhancement Excel Action and Refactoring

* code refactor

* Enhanced the Unit test cases for excel action according to recent enhancements

* Codacy issues

* Upgraded Magick.NET-Q16-AnyCPU nugget to 14.10.0

* codacy

* removed unwanted check

* code refactoring

* updated ut

* codacy and code rabbit comments handled

* Pull Address adjustment

* serliazation added

* Serliazation error fix

* updating version

updating version

* Latest changes for Excel action

* workwork book

* coderabbit comments

* lock object

* coder rabbit issue

* Handled the file name length while api model configuration, and added length to subfolder creation

* resolved the review comment from code rabbit

* Handled the issue of value expression getting truncated

* fixing the index issue

* Update codeql-analysis.yml

* Exclude JavaScript from Scanning for security Vulnarabilities

* Exclude JavaScript from Scanning for security Vulnarabilities_Master

* store to added hidden option

* removed code

* code refactor

* code refactor

* Update codeql-analysis.yml

* Revert

* Bug fixes for excel action

* code removed

* coderabbit comments

* filter issue fix

* As stated in bug: modifed error log to "Error" instead of "Warning"

* push latest fixes

* unit test case change according to enhancement

* Latest

* Rollbacked the changes made for handling the file name length

* Modified code to support maxlength only for folder name

* Removed the task implementation in unix agent

* Fixed issue of special characters from toerh languages are not getting sent to mainframe

* Shared Repository Folder View (#4416)

* Shared Repository Folder View

* enhancement

* code rabbit comments handled

* code rabbit comments handle

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* folder view fix

* merge conflict resolved

* merge conflict resolved

* enahcnement

* code rabbit comments handled

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>

* Improve Sikuli SetValue handling and focus logic (#4420)

Refactored SetValue to check for empty text before typing and use KeyModifier.NONE for normal input. Now sets an error if the value is empty. Also, SetFocusToSelectedApplicationInstance is now called synchronously instead of asynchronously.

* Exclamation mark fix (#4421)

* Exclamation mark fix

* commit

* Improve circular reference handling in JSON schema tools (#4422)

Enhanced detection and prevention of circular references and stack overflows in JSON schema-to-object generation. Added try-catch blocks for safer property access, improved stack management, and more robust array/property traversal. Also improved error handling when adding API models to repository folders by logging and fallback to parent folder if needed.

* Add tests for circular refs in JsonSchemaFaker, update count (#4423)

Add unit tests to SwaggetTests.cs to ensure JsonSchemaFaker handles circular and self-referencing JSON schemas without infinite loops or errors. Import NJsonSchema for schema support. Update assertion for "Add a new pet to the store-JSON" to expect 7 return values instead of 8.

* Handled set DS value issue (#4425)

* add to BF iicon removal (#4426)

* add to BF iicon removal

* uncommented code

* code rabbit suggestion

---------

Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>

* resolved conflicts

* resolved conflicts

---------

Co-authored-by: Mahesh Kale <41791819+Maheshkale447@users.noreply.github.com>
Co-authored-by: AMAN PRASAD <44187990+AmanPrasad43@users.noreply.github.com>
Co-authored-by: makhlaque <mohd.akhlaque@vodafoneziggo.com>
Co-authored-by: mohd-amdocs <mohd.akhlaque@amdocs.com>
Co-authored-by: Gokul Bothe <gokulbothe39@gmail.com>
Co-authored-by: Meni Kadosh <menikadosh1@gmail.com>
Co-authored-by: Mayur Rathi <mayurrat@amdocs.com>
Co-authored-by: Mayur Rathi <92859083+rathimayur@users.noreply.github.com>
Co-authored-by: Gokul Bothe <96767038+GokulBothe99@users.noreply.github.com>
Co-authored-by: shahanemahesh <mahesh.shahane@amdocs.com>
Co-authored-by: Mahesh Shahane <41142993+shahanemahesh@users.noreply.github.com>
Co-authored-by: omri1911 <51326278+omri1911@users.noreply.github.com>
Co-authored-by: tanushahande2003 <Tanusha.Hande@amdocs.com>
Co-authored-by: tanushah <tanushah@amdocs.com>

* Prevent Excel formula injection in CSV export (#4431)

* Prevent Excel formula injection in CSV export

D56006_Added logic to prefix values starting with '=', '+', '-', or '@' with a single quote when exporting BusinessFlow, Activity, Act description, and input parameters to CSV. This ensures spreadsheet applications treat these fields as plain text, preventing misinterpretation as formulas. Also refactored code for clarity using intermediate variables.

* Refactor CSV export for clarity and null safety

Renamed method parameters and loop variables for clarity and consistency. Updated references to use descriptive names. Added null check for act.Description to prevent exceptions. Improves code readability and robustness.

---------

Co-authored-by: tanushah <tanushah@amdocs.com>

* added an option to change text color in consoleDriver window

* Action Description fix (#4434)

* Update to .NET 10, package versions, and minor UI tweaks (#4435)

* Update to .NET 10, package versions, and minor UI tweaks

Upgraded all projects from .NET 8.0 to .NET 10.0. Updated System.Text.Json to 10.0.2 and System.Drawing.Common to 10.0.2. Added Microsoft.IdentityModel.JsonWebTokens and Microsoft.IdentityModel.Tokens (8.15.0) to support JWT features. Bumped protobuf-net packages to 3.2.56. Improved XAML grid layout in DataSourceExportToExcelPage.xaml and added DesignerSerializationVisibility attributes in SnippingTool.cs. No functional logic changes.

* upgrade dotnet version to 10

* push supported dotnet version for Github actions

* Fix Dotnet version on Test stage

* Fix CLI TestsGithub

* Fix Test Dotnet Framework of Github with new version of dotnet

* nuget packages updation

* Downgrade EPPlus and Excel Interop, update dependencies

Downgraded EPPlus to 6.0.4 and Microsoft.Office.Interop.Excel to 15.0.4795.1001 across multiple projects for compatibility. Removed Microsoft.IdentityModel.* and System.IdentityModel.Tokens.Jwt from core projects, and removed SixLabors.ImageSharp from GingerCoreNET. Reformatted System.Globalization entry in GingerCore. These changes address dependency and compatibility issues.

---------

Co-authored-by: tanushah <tanushah@amdocs.com>
Co-authored-by: Ravi Kumar <41137863+ravirk91@users.noreply.github.com>
Co-authored-by: Nadeem Jazmawe <nadeemj@amdocs.com>

* Mask API key in UI and update only on user edit (#4436)

* Mask API key in UI and update only on user edit

Added masking for API key in VRTExternalConfigurationsPage to prevent exposure. The real key is hidden with a generic mask, and onl…
Raised the maximum allowed folder name length from 100 to 255 characters in all report-related configuration pages. Updated validation logic and user messages to reflect the new limit.

Co-authored-by: tanushah <tanushah@amdocs.com>
Upgraded the Magick.NET-Q16-AnyCPU NuGet package from version 14.11.1 to 14.13.0 in Ginger, GingerCoreNET, and GingerTest project files to ensure consistency and benefit from the latest fixes and improvements. No other changes were made.

Co-authored-by: tanushah <tanushah@amdocs.com>
* Improve JSON handling and HTML encoding in API helpers

Refactored WireMockAPI to use System.Text.Json for payload serialization and robust JSON parsing for stub mappings. Enhanced GenAIServiceHelper to HTML-encode error logs and multipart form data, ensuring safer handling of special characters and null values.

* Refactor error logging to use exception overload

Simplified exception handling by replacing manual error message construction and encoding with a single Reporter.ToLog call that passes the exception object, leveraging built-in logging features.

---------

Co-authored-by: tanushah <tanushah@amdocs.com>
Add logic to extract and set the SslMode property from the calculated connection string if present. Only assign Database.ConnectionString if the calculated string is empty. This improves MySQL connection configuration flexibility.

Co-authored-by: tanushah <tanushah@amdocs.com>
…4490)

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 7, 2026

Review Change Stack

Walkthrough

This PR consolidates five independent updates: stricter folder path validation with new messaging, external API payload serialization enhancements, MySQL SSL mode configuration parsing, UI layout spacing adjustments, and a Magick.NET library version bump across project files.

Changes

Folder Path Validation Enhancement

Layer / File(s) Summary
Message Pool Definition
Ginger/GingerCoreCommon/ReporterLib/UserMsgsPool.cs
Adds FolderPathsAreTooLong enum value and registers a 255-character path-length warning message in the user message pool.
Validation Threshold Update
Ginger/Ginger/Reports/HTMLReportAttachmentConfigurationPage.xaml.cs
Changes alternative HTML report folder length validation from > 100 to > 255 characters and updates the error message key reference.

External API Payload Handling

Layer / File(s) Summary
Namespace Imports
Ginger/GingerCoreNET/External/WireMock/WireMockAPI.cs, Ginger/GingerCoreNET/GenAIServices/GenAIServiceHelper.cs
Adds System.Net and System.Text.Json using directives to support JSON serialization and HTML encoding.
WireMock Request Serialization
Ginger/GingerCoreNET/External/WireMock/WireMockAPI.cs
StartRecordingAsync uses JsonSerializer.Serialize() instead of string interpolation; CreateStubAsync and UpdateStubAsync now parse JSON and send canonical raw JSON text, with HTML encoding applied in stub creation.
GenAI Service HTML Encoding
Ginger/GingerCoreNET/GenAIServices/GenAIServiceHelper.cs
Wraps credential-derived form fields (account, domainType, temperatureVal, maxTokensVal, dataPath) with WebUtility.HtmlEncode() and null-to-empty conversion; simplifies exception logging.

MySQL SSL Mode Configuration

Layer / File(s) Summary
Connection String SSL Parsing
Ginger/GingerCoreNET/Database/DatabaseOperations.cs
Connect() now parses ConnectionStringCalculated for SslMode settings, applies them to the connection builder, and conditionally assigns the final connection string only when calculated string is empty.

UI Layout Adjustments

Layer / File(s) Summary
Appium Driver Layout
Ginger/Ginger/Drivers/DriversConfigsEditPages/AppiumDriverEditPage.xaml
Increases xNativeHybRdBtn radio button margin from 8,0,0,0 to 36,0,0,0.
Applications Grid Column
Ginger/Ginger/Environments/AppsListPage.xaml.cs
Adds EnvApplication.Url column (labeled URL) to grid definition; removes SetAllColumnsDefaultView() and InitViewItems() calls from SetGridView() method.

Dependency Updates

Layer / File(s) Summary
Magick.NET Version Bump
Ginger/Ginger/Ginger.csproj, Ginger/GingerCoreNET/GingerCoreNET.csproj, Ginger/GingerTest/GingerTest.csproj
Updates Magick.NET-Q16-AnyCPU PackageReference from version 14.11.1 to 14.13.0 across all three project files.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

Suggested reviewers

  • Maheshkale447

Poem

🐰 A patchwork of tweaks, both great and small,
From folder paths stretching (255 chars, that's all!)
To JSON that's parsed with methodical care,
SSL modes secured, and margins to spare—
A rabbit's delight, these fixes so rare! 🌟

🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (2 warnings)

Check name Status Explanation Resolution
Description check ⚠️ Warning The PR description is largely empty with only the template structure present; the Description section contains no content and all checklist items are unchecked, providing no meaningful information about the changes. Fill in the Description section with a summary of the key changes being merged, and ensure relevant checklist items are verified and marked before merging.
Docstring Coverage ⚠️ Warning Docstring coverage is 37.50% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarizes the PR's main purpose: merging master into the official release branch for the 2026.5 release, which aligns with the changeset.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch Merge-master-to-official-for-2026.5-release

Tip

💬 Introducing Slack Agent: The best way for teams to turn conversations into code.

Slack Agent is built on CodeRabbit's deep understanding of your code, so your team can collaborate across the entire SDLC without losing context.

  • Generate code and open pull requests
  • Plan features and break down work
  • Investigate incidents and troubleshoot customer tickets together
  • Automate recurring tasks and respond to alerts with triggers
  • Summarize progress and report instantly

Built for teams:

  • Shared memory across your entire org—no repeating context
  • Per-thread sandboxes to safely plan and execute work
  • Governance built-in—scoped access, auditability, and budget controls

One agent for your entire SDLC. Right inside Slack.

👉 Get started


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.

@codacy-production
Copy link
Copy Markdown

Not up to standards ⛔

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 4

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@Ginger/GingerCoreCommon/ReporterLib/UserMsgsPool.cs`:
- Line 619: The user-facing message for eUserMsgKey.FolderPathsAreTooLong in
UserMsgsPool.cs contradicts the validation (which allows length == 255 and flags
> 255); update the message string in the UserMsg constructor (the entry keyed by
eUserMsgKey.FolderPathsAreTooLong) to say something like "Provided folder paths
are too long. Please change them to be 255 characters or less" (or "no more than
255 characters") so it matches the > 255 guard.

In `@Ginger/GingerCoreNET/External/WireMock/WireMockAPI.cs`:
- Around line 160-171: The stub payload construction is not null-safe and
incorrectly HTML-encodes JSON; change the logic around stubMapping/body so you
never pass null into new StringContent (use empty string or "{}" as appropriate)
and remove WebUtility.HtmlEncode so the JSON is sent raw; update the block that
parses stubMapping (the JsonDocument.Parse branch and the fallback) and the
StringContent creation (the call to new StringContent(..., Encoding.UTF8,
contentType)) to use the non-null raw JSON string instead of HtmlEncoded data.

In `@Ginger/GingerCoreNET/GenAIServices/GenAIServiceHelper.cs`:
- Around line 107-109: In GenAIServiceHelper.cs update the catch block that
currently sets var error = "Failed to get access token" and calls
Reporter.ToLog(eLogLevel.ERROR, error, ex): replace the three-argument call with
the repository-required message-only overload Reporter.ToLog(eLogLevel.ERROR,
error) (leave the error string and exception handling intact but remove passing
ex to Reporter.ToLog) so the code uses the standard logging signature used
across this codebase.
- Around line 248-252: The multipart form field values are being HTML-encoded
before being wrapped in StringContent in GenAIServiceHelper.cs; remove the
WebUtility.HtmlEncode(...) calls so the raw results of
CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration....) are
passed directly into the StringContent for the fields "account", "domainType",
"temperatureVal", "maxTokensVal" and "dataPath"; keep using
CredentialsCalculation and StringContent but do not mutate the values with
HtmlEncode when building the MultipartFormDataContent.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 2211d00a-2d09-49ff-95f7-0cc93fd1c45f

📥 Commits

Reviewing files that changed from the base of the PR and between 5ec586e and c626a3b.

📒 Files selected for processing (10)
  • Ginger/Ginger/Drivers/DriversConfigsEditPages/AppiumDriverEditPage.xaml
  • Ginger/Ginger/Environments/AppsListPage.xaml.cs
  • Ginger/Ginger/Ginger.csproj
  • Ginger/Ginger/Reports/HTMLReportAttachmentConfigurationPage.xaml.cs
  • Ginger/GingerCoreCommon/ReporterLib/UserMsgsPool.cs
  • Ginger/GingerCoreNET/Database/DatabaseOperations.cs
  • Ginger/GingerCoreNET/External/WireMock/WireMockAPI.cs
  • Ginger/GingerCoreNET/GenAIServices/GenAIServiceHelper.cs
  • Ginger/GingerCoreNET/GingerCoreNET.csproj
  • Ginger/GingerTest/GingerTest.csproj
💤 Files with no reviewable changes (1)
  • Ginger/Ginger/Environments/AppsListPage.xaml.cs

{ eUserMsgKey.ReportTemplateNotFound, new UserMsg(eUserMsgType.ERROR, "Report Template", "Report Template '{0}' not found", eUserMsgOption.OK, eUserMsgSelection.None) },
{ eUserMsgKey.AutomationTabExecResultsNotExists, new UserMsg(eUserMsgType.WARN, "Execution Results are not existing", "Results from last execution are not existing (yet). Nothing to report, please wait for execution finish and click on report creation.", eUserMsgOption.OK, eUserMsgSelection.None) },
{ eUserMsgKey.FolderNamesAreTooLong, new UserMsg(eUserMsgType.WARN, "Folders Names Are Too Long", "Provided folders names are too long. Please change them to be less than 100 characters", eUserMsgOption.OK, eUserMsgSelection.None) },
{ eUserMsgKey.FolderPathsAreTooLong, new UserMsg(eUserMsgType.WARN, "Folder Paths Are Too Long", "Provided folder paths are too long. Please change them to be less than 255 characters", eUserMsgOption.OK, eUserMsgSelection.None) },
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

User-facing message text is inaccurate — "less than 255" conflicts with the > 255 guard.

The validation in HTMLReportAttachmentConfigurationPage.xaml.cs fires when Length > 255, meaning a path of exactly 255 characters is valid. The current message text tells users to keep paths "less than 255 characters", which incorrectly implies 254 is the maximum.

✏️ Suggested fix
-{ eUserMsgKey.FolderPathsAreTooLong, new UserMsg(eUserMsgType.WARN, "Folder Paths Are Too Long", "Provided folder paths are too long. Please change them to be less than 255 characters", eUserMsgOption.OK, eUserMsgSelection.None) },
+{ eUserMsgKey.FolderPathsAreTooLong, new UserMsg(eUserMsgType.WARN, "Folder Paths Are Too Long", "Provided folder paths are too long. Please change them to be no more than 255 characters", eUserMsgOption.OK, eUserMsgSelection.None) },
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
{ eUserMsgKey.FolderPathsAreTooLong, new UserMsg(eUserMsgType.WARN, "Folder Paths Are Too Long", "Provided folder paths are too long. Please change them to be less than 255 characters", eUserMsgOption.OK, eUserMsgSelection.None) },
{ eUserMsgKey.FolderPathsAreTooLong, new UserMsg(eUserMsgType.WARN, "Folder Paths Are Too Long", "Provided folder paths are too long. Please change them to be no more than 255 characters", eUserMsgOption.OK, eUserMsgSelection.None) },
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@Ginger/GingerCoreCommon/ReporterLib/UserMsgsPool.cs` at line 619, The
user-facing message for eUserMsgKey.FolderPathsAreTooLong in UserMsgsPool.cs
contradicts the validation (which allows length == 255 and flags > 255); update
the message string in the UserMsg constructor (the entry keyed by
eUserMsgKey.FolderPathsAreTooLong) to say something like "Provided folder paths
are too long. Please change them to be 255 characters or less" (or "no more than
255 characters") so it matches the > 255 guard.

Comment on lines +160 to +171
string body;
if (string.IsNullOrEmpty(stubMapping))
{
body = stubMapping;
}
else
{
using JsonDocument doc = JsonDocument.Parse(stubMapping);
body = doc.RootElement.GetRawText();
}

var content = new StringContent(WebUtility.HtmlEncode(body), Encoding.UTF8, contentType);
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical | ⚡ Quick win

🧩 Analysis chain

🌐 Web query:

In .NET, what does new StringContent((string)null, Encoding.UTF8, "application/json")do, and shouldWebUtility.HtmlEncodebe used on JSON bodies sent asapplication/json?

💡 Result:

The expression new StringContent((string)null, Encoding.UTF8, "application/json") creates a StringContent instance intended to represent a null string value in the HTTP request body, with UTF-8 encoding and Content-Type header set to "application/json" [1][2][3]. In modern.NET versions (e.g.,.NET 8+ as of 2026), the constructor explicitly throws ArgumentNullException if the content string is null, as shown in the source code: ArgumentNullException.ThrowIfNull(content); before encoding [1]. This distinguishes null from empty string (which is allowed and sends an empty body). Earlier versions may have allowed it, treating null differently [4]. WebUtility.HtmlEncode should not be used on JSON bodies sent as application/json [5][6]. WebUtility.HtmlEncode converts special characters like < > " to HTML entities for safe insertion into HTML contexts [5]. JSON is a distinct format parsed directly by servers/clients based on Content-Type; HTML encoding corrupts valid JSON (e.g., "{"key": ""}" becomes invalid after encoding), causing parse errors [7][8]. JSON serializers handle escaping (e.g., \u003c for < in strings) as needed. Use it only for HTML output, not JSON payloads [6].

Citations:


🏁 Script executed:

cat -n Ginger/GingerCoreNET/External/WireMock/WireMockAPI.cs | sed -n '150,180p'

Repository: Ginger-Automation/Ginger

Length of output: 1628


🏁 Script executed:

cat -n Ginger/GingerCoreNET/External/WireMock/WireMockAPI.cs | sed -n '215,240p'

Repository: Ginger-Automation/Ginger

Length of output: 1338


🏁 Script executed:

head -30 Ginger/GingerCoreNET/External/WireMock/WireMockAPI.cs | cat -n

Repository: Ginger-Automation/Ginger

Length of output: 1181


Fix stub payload construction: null-safe content and no HTML encoding for JSON.

There are two correctness issues:

  1. Lines 161-164 and 223-226 assign body = stubMapping when stubMapping is null/empty, causing new StringContent(null, ...) to throw ArgumentNullException at runtime.
  2. Line 171 HTML-encodes the JSON body before sending as application/json, which corrupts valid JSON (e.g., " becomes &quot;).
Suggested fix
-                    string body;
-                    if (string.IsNullOrEmpty(stubMapping))
-                    {
-                        body = stubMapping;
-                    }
-                    else
-                    {
-                        using JsonDocument doc = JsonDocument.Parse(stubMapping);
-                        body = doc.RootElement.GetRawText();
-                    }
-
-                    var content = new StringContent(WebUtility.HtmlEncode(body), Encoding.UTF8, contentType);
+                    string body = string.IsNullOrWhiteSpace(stubMapping)
+                        ? string.Empty
+                        : JsonDocument.Parse(stubMapping).RootElement.GetRawText();
+
+                    var content = new StringContent(body, Encoding.UTF8, contentType);
@@
-                    string body;
-                    if (string.IsNullOrEmpty(stubMapping))
-                    {
-                        body = stubMapping;
-                    }
-                    else
-                    {
-                        using JsonDocument doc = JsonDocument.Parse(stubMapping);
-                        body = doc.RootElement.GetRawText();
-                    }
+                    string body = string.IsNullOrWhiteSpace(stubMapping)
+                        ? string.Empty
+                        : JsonDocument.Parse(stubMapping).RootElement.GetRawText();

Also applies to: 222-233

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@Ginger/GingerCoreNET/External/WireMock/WireMockAPI.cs` around lines 160 -
171, The stub payload construction is not null-safe and incorrectly HTML-encodes
JSON; change the logic around stubMapping/body so you never pass null into new
StringContent (use empty string or "{}" as appropriate) and remove
WebUtility.HtmlEncode so the JSON is sent raw; update the block that parses
stubMapping (the JsonDocument.Parse branch and the fallback) and the
StringContent creation (the call to new StringContent(..., Encoding.UTF8,
contentType)) to use the non-null raw JSON string instead of HtmlEncoded data.

Comment on lines 107 to 109
var error = "Failed to get access token";
Reporter.ToLog(eLogLevel.ERROR, $"{error}, Error :{ex.Message}");
Reporter.ToLog(eLogLevel.ERROR, $"{error}, Error :{ex.Message}, InnerException:{ex.InnerException},StackTrace:{ex.StackTrace}");
Reporter.ToLog(eLogLevel.ERROR, error, ex);
return false;
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Use the standard error-logging signature in this catch block.

Line 108 uses Reporter.ToLog(eLogLevel.ERROR, error, ex), but this repository requires the message-only overload for error logs.

Suggested fix
-                var error = "Failed to get access token";
-                Reporter.ToLog(eLogLevel.ERROR, error, ex);
+                var error = $"Failed to get access token. {ex.Message}";
+                Reporter.ToLog(eLogLevel.ERROR, error);

As per coding guidelines **/*.cs: Use Reporter.ToLog(eLogLevel.ERROR, message) for logging errors.

📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
var error = "Failed to get access token";
Reporter.ToLog(eLogLevel.ERROR, $"{error}, Error :{ex.Message}");
Reporter.ToLog(eLogLevel.ERROR, $"{error}, Error :{ex.Message}, InnerException:{ex.InnerException},StackTrace:{ex.StackTrace}");
Reporter.ToLog(eLogLevel.ERROR, error, ex);
return false;
var error = $"Failed to get access token. {ex.Message}";
Reporter.ToLog(eLogLevel.ERROR, error);
return false;
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@Ginger/GingerCoreNET/GenAIServices/GenAIServiceHelper.cs` around lines 107 -
109, In GenAIServiceHelper.cs update the catch block that currently sets var
error = "Failed to get access token" and calls Reporter.ToLog(eLogLevel.ERROR,
error, ex): replace the three-argument call with the repository-required
message-only overload Reporter.ToLog(eLogLevel.ERROR, error) (leave the error
string and exception handling intact but remove passing ex to Reporter.ToLog) so
the code uses the standard logging signature used across this codebase.

Comment on lines +248 to +252
{ new StringContent(WebUtility.HtmlEncode(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.Account) ?? string.Empty)), "account" },
{ new StringContent(WebUtility.HtmlEncode(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.DomainType) ?? string.Empty)), "domainType" },
{ new StringContent(WebUtility.HtmlEncode(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.TemperatureLevel) ?? string.Empty)), "temperatureVal" },
{ new StringContent(WebUtility.HtmlEncode(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.MaxTokenValue) ?? string.Empty)), "maxTokensVal" },
{ new StringContent(WebUtility.HtmlEncode(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.DataPath) ?? string.Empty)), "dataPath" }
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🌐 Web query:

In .NET, is System.Net.WebUtility.HtmlEncodeappropriate for values sent throughMultipartFormDataContent/StringContent, or is it intended only for HTML output encoding?

💡 Result:

Answer: No—System.Net.WebUtility.HtmlEncode is not the appropriate encoding step for values you put into MultipartFormDataContent/StringContent as general “HTTP/form data escaping”. It’s intended for HTML entity encoding (and its docs even describe HTML encoding behavior), not for making arbitrary multipart/form-data fields safe to transmit. For multipart form values, you should generally send the raw string (letting StringContent handle HTTP body bytes/charset) and only apply encoding appropriate to the receiving context (e.g., HTML-escape only when inserting into HTML, URL-encode only for URL/query-string components). Why: 1) WebUtility.HtmlEncode is defined as converting a string into an HTML-encoded string (HTML entities), including a remark that encoding converts characters into “character-entity equivalents” and gives < and > as examples for HTTP transmission when embedded in text/HTML blocks. That describes HTML entity encoding, not multipart/form-data field escaping rules [1]. 2) MultipartFormDataContent is a container for content encoded using the multipart/form-data MIME type. It “adds required Content-Disposition headers to [the] content object added to the collection” and serializes the multipart stream. It does not state that callers should pre–HTML-encode field values [2]. 3) If you HTML-encode form fields, you can change the payload semantics: e.g., a value containing & becomes &amp;, and the server will receive &amp; unless it explicitly HTML-decodes it. Multipart/form-data processing is governed by MIME/form encoding rules (e.g., how parts are structured and how headers like Content-Disposition are represented), not by HTML entity encoding. Practical guidance: - For MultipartFormDataContent fields, typically do: form.Add(new StringContent(value, Encoding.UTF8), "name"); and avoid HTML-encoding unless the server expects HTML entities. - Apply encoding at the “output to HTML” step: if (and only if) the server later renders the submitted value into an HTML page, then HTML encoding should happen right before HTML rendering. So: WebUtility.HtmlEncode is primarily an HTML entity encoder, not a general-purpose “safe for HTTP form data/multipart” encoder.

Citations:


Remove WebUtility.HtmlEncode() from multipart form field values.

Lines 248-252 apply WebUtility.HtmlEncode(...) before StringContent. HtmlEncode is intended for HTML entity encoding only and is inappropriate for form-data payloads. It mutates field values (e.g., & becomes &amp;), which can break backend parsing and value matching. For MultipartFormDataContent, send raw string values directly.

Suggested fix
-                { new StringContent(WebUtility.HtmlEncode(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.Account) ?? string.Empty)), "account" },
-                { new StringContent(WebUtility.HtmlEncode(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.DomainType) ?? string.Empty)), "domainType" },
-                { new StringContent(WebUtility.HtmlEncode(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.TemperatureLevel) ?? string.Empty)), "temperatureVal" },
-                { new StringContent(WebUtility.HtmlEncode(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.MaxTokenValue) ?? string.Empty)), "maxTokensVal" },
-                { new StringContent(WebUtility.HtmlEncode(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.DataPath) ?? string.Empty)), "dataPath" }
+                { new StringContent(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.Account) ?? string.Empty), "account" },
+                { new StringContent(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.DomainType) ?? string.Empty), "domainType" },
+                { new StringContent(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.TemperatureLevel) ?? string.Empty), "temperatureVal" },
+                { new StringContent(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.MaxTokenValue) ?? string.Empty), "maxTokensVal" },
+                { new StringContent(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.DataPath) ?? string.Empty), "dataPath" }
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
{ new StringContent(WebUtility.HtmlEncode(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.Account) ?? string.Empty)), "account" },
{ new StringContent(WebUtility.HtmlEncode(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.DomainType) ?? string.Empty)), "domainType" },
{ new StringContent(WebUtility.HtmlEncode(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.TemperatureLevel) ?? string.Empty)), "temperatureVal" },
{ new StringContent(WebUtility.HtmlEncode(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.MaxTokenValue) ?? string.Empty)), "maxTokensVal" },
{ new StringContent(WebUtility.HtmlEncode(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.DataPath) ?? string.Empty)), "dataPath" }
{ new StringContent(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.Account) ?? string.Empty), "account" },
{ new StringContent(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.DomainType) ?? string.Empty), "domainType" },
{ new StringContent(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.TemperatureLevel) ?? string.Empty), "temperatureVal" },
{ new StringContent(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.MaxTokenValue) ?? string.Empty), "maxTokensVal" },
{ new StringContent(CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration.DataPath) ?? string.Empty), "dataPath" }
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@Ginger/GingerCoreNET/GenAIServices/GenAIServiceHelper.cs` around lines 248 -
252, The multipart form field values are being HTML-encoded before being wrapped
in StringContent in GenAIServiceHelper.cs; remove the WebUtility.HtmlEncode(...)
calls so the raw results of
CredentialsCalculation(WorkSpace.Instance.Solution.AskLisaConfiguration....) are
passed directly into the StringContent for the fields "account", "domainType",
"temperatureVal", "maxTokensVal" and "dataPath"; keep using
CredentialsCalculation and StringContent but do not mutate the values with
HtmlEncode when building the MultipartFormDataContent.

@ravirk91 ravirk91 merged commit ac45651 into Releases/Official-Release May 7, 2026
6 of 7 checks passed
@ravirk91 ravirk91 deleted the Merge-master-to-official-for-2026.5-release branch May 7, 2026 06:15
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