Callback Manager for Automated Code Rollback in CI Pipelines

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Continuous integration and delivery (CID) pipelines face challenges in completing thorough code testing within short end-to-end cycles, leading to potential bugs in released code and resource wastage due to manual testing and separate development lanes, which can result in performance issues and resource-intensive rollbacks.

Innovation Solution

Implementing a synchronous CID pipeline with an automated, asynchronous testing mechanism using a callback address manager and simulation manager to perform code testing and rollback processes without detaching from the pipeline, allowing for reliable, self-service code evaluation and automatic rollback or expansion based on testing results.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a synchronous CID pipeline is used to maintain code reliability through thorough testing, then code quality improves, but the end-to-end deployment cycle time increases

Engineering Contradiction:
Improvecode qualityVSAvoiddeployment cycle time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the monolithic synchronous testing process into multiple independent parallel testing lanes. Each lane can execute different test types (functional testing, performance testing, security testing) simultaneously, allowing thorough code evaluation while reducing overall deployment cycle time by eliminating sequential dependencies.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by performing automated code analysis, static code analysis, and preliminary test execution before the main deployment process. This preliminary evaluation filters out obviously defective code early, allowing faster synchronous testing for remaining code while maintaining reliability standards.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If manual testing and separate development lanes are used to speed up deployment, then deployment cycle time decreases, but resource wastage increases

Engineering Contradiction:
Improvedeployment cycle timeVSAvoidresource wastage
Core Design Contradiction:
Loss of timeVSLoss of energy

Solution Approach 1:

The patent implements self-service through automated testing orchestration where the system automatically selects appropriate test cases, allocates computing resources, executes tests across multiple lanes, and consolidates results without human intervention. This eliminates resource wastage associated with manual testing coordination while maintaining fast deployment cycles.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent dynamically adjusts testing parameters such as test depth, resource allocation, and lane configuration based on code risk assessment, historical data, and current system capacity. This optimization reduces resource wastage by applying appropriate testing intensity only where needed while maintaining fast deployment overall.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If incremental code release is used to reduce testing time, then deployment speed increases, but performance issues and rollback frequency increase

Engineering Contradiction:
Improvedeployment speedVSAvoidperformance stability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements comprehensive feedback mechanisms that continuously monitor deployed code performance, user behavior, and system metrics. This feedback loop enables real-time detection of performance issues and automatic triggering of rollback procedures or additional testing, ensuring that incremental releases maintain stability while enabling fast deployment.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10884909B1Code release with automatic callback
Publication Date: 2021.01.05 INTUIT INC
  • US10884909B1 patent drawing
  • US10884909B1 patent drawing
  • US10884909B1 patent drawing

AI summary

A continuous integration and delivery (CID) pipeline may deploy code in a state of incomplete testing to at least one user. While the code is deployed, a callback address manager of at least one processor in communication with the CID pipeline may hand the code off to a simulation manager of the at least one processor. The simulation manager may test the code and generate a score decision based on a result of the testing. The simulation manager may send the score decision to the callback address manager. The callback address manager may modify deployment of the code based on the score decision.