IP Library › Granted Patent US 12,461,843
Granted Patent B2
US 12,461,843 · App. 18/467,446 · Granted Nov 4, 2025

Fallback engine for updating selectors of an automation

Inventor: Gerd Weishaar (Wollerau, CH)
Assignee: UiPath, Inc.
G06F11/368G06F11/3698
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,461,843
App. No.
18/467,446
Granted
Nov 4, 2025
Kind
B2
Abstract

A method executed by a fallback engine is provided. The fallback engine is implemented as a computer program within a computing system. The method includes tracking information for versions for a selector stored in a selector repository. The information includes a proof of work defining an amount of use per version of the versions. The method includes determining a current state of an original selector version of the selector utilized by an automation and automatically implementing a fallback operation that updates a target of the selector of the automation from the original selector version to a different selector version based the proof of work for the different selector version in the selector repository.

Claims (25)

1 . A method executed by a fallback engine of a non-transitory computer readable medium within a computing system to improve processing capabilities of the computing system by comparing last-updated information, the method comprising:

tracking, by the fallback engine, information for one or more versions for a selector stored in a selector repository, wherein the information comprises a proof of work defining an amount of use per version of the one or more versions and changes in the one or more versions of the selector, last-usage of the one or more versions, and last-updated of the one or more versions;

determining, by the fallback engine, a current state of an original selector version of the selector utilized by an automation by analyzing the information for the one or more versions of the selector to determine a different selector version; and

automatically implementing, by the fallback engine, a fallback operation that updates a target of the selector of the automation from the original selector version to the different selector version based the proof of work for the different selector version in the selector repository,

wherein the fallback engine compares an automation failure time with last-updated information to find a newest version.

2 . The method of claim 1 , wherein the fallback engine comprises an object browser configured to browse through the selector repository.

3 . The method of claim 1 , wherein the selector repository receives the selector and the one or more versions as contributions from one or more user devices and stores the selector and the one or more versions.

4 . The method of claim 1 , wherein the proof of work comprises a hit count that defines the amount of use via an incrementing numerical value.

5 . The method of claim 1 , wherein the current state comprises operable, inoperable, out-of-date, and out-of-use, or pointer error.

6 . The method of claim 1 , wherein the fallback engine determines the current state of the selector of the automation based on an alert issued when the automation fails by a user device executing the automation.

7 . The method of claim 1 , wherein the different selector version is a next best selector version comprising a highest value for a proof of work from the one or more versions in a selector repository.

8 . The method of claim 1 , wherein the automation comprises a test automation or a robotic process automation.

9 . The method of claim 1 , wherein the fallback engine analyzes hit counts for all versions and selects a highest hit count version with a last-updated information after an automation failure time.

10 . A computer system comprising a non-transitory computer readable medium storing computer program code and at least one processor executing the computer program code for a fallback engine system to improve processing capabilities of the computing system by comparing last-updated information and to cause the computer system to perform operations comprising:

tracking, by the fallback engine, information for one or more versions for a selector stored in a selector repository, wherein the information comprises a proof of work defining an amount of use per version of the one or more versions and changes in the one or more versions of the selector, last-usage of the one or more versions, and last-updated of the one or more versions;

determining, by the fallback engine, a current state of an original selector version of the selector utilized by an automation by analyzing the information for the one or more versions of the selector to determine a different selector version; and

automatically implementing, by the fallback engine, a fallback operation that updates a target of the selector of the automation from the original selector version to the different selector version based the proof of work for the different selector version in the selector repository,

wherein the fallback engine compares an automation failure time with last-updated information to find a newest version.

11 . The computer system of claim 10 , wherein the fallback engine comprises an object browser configured to browse through the selector repository.

12 . The computer system of claim 10 , wherein the selector repository receives the selector and the one or more versions as contributions from one or more user devices and stores the selector and the one or more versions.

13 . The computer system of claim 10 , wherein the proof of work comprises a hit count that defines the amount of use via an incrementing numerical value.

14 . The computer system of claim 10 , wherein the current state comprises operable, inoperable, out-of-date, and out-of-use, or pointer error.

15 . The computer system of claim 10 , wherein the fallback engine determines the current state of the selector of the automation based on an alert issued when the automation fails by a user device executing the automation.

16 . The computer system of claim 10 , wherein the different selector version is a next best selector version comprising a highest value for a proof of work from the one or more versions in a selector repository.

17 . The computer system of claim 10 , wherein the automation comprises a test automation or a robotic process automation.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 15, 2023
From: WEISHAAR, GERD
To: UIPATH, INC.
Reel/Frame 064922/0633 →
Continuity (1)
Related Publication 20250094322A1 · Mar 20, 2025
References Cited (17)
US 7653896B2 · Herdeg, III · 2010 [cited by applicant]
US 10275339B2 · Vignesh · 2019 [cited by applicant]
US 10963624B2 · Akhoury et al. · 2021 [cited by applicant]
US 11625312B2 · Latkar · 2023 [cited by examiner]
US 20190227912A1 · Banuelos · 2019 [cited by examiner]
US 20190265990A1 · Hall et al. · 2019 [cited by applicant]
US 20190332508A1 · Goyal · 2019 [cited by examiner]
US 20210109834A1 · Singh · 2021 [cited by examiner]
US 20210347062A1 · Dinica · 2021 [cited by examiner]
US 20210349430A1 · Munteanu · 2021 [cited by examiner]
US 20220012025A1 · Grigore · 2022 [cited by applicant]
US 20220114044A1 · Singh · 2022 [cited by examiner]
US 20240338248A1 · Bose · 2024 [cited by examiner]
US 20250013910A1 · Grigore · 2025 [cited by examiner]
CN 112231034A · 2021 [cited by applicant]
WO 2020047040A1 · 2020 [cited by applicant]
Jiménez-Ramírez, et al., “Automated testing in robotic process automation projects,” J Softw Evol Proc, Feb. 18, 2020, pp. 1-11. [cited by applicant]