====== FR-DEP-006 — Deployment Rollback ======
[[dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-03-deployment-orchestration:start|Go to Crucible Deployment Orchestration Requirements]]
===== Statement =====
[[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] SHALL perform [[dido:99_annexes:annex-b-terms-and-definitions:d:deployment_rollback|Deployment Rollback]].
===== Derived From =====
This requirement derives from:
* Crucible System Requirements Specification, Version 1.1 Draft, Functional Requirements, FR-DEP-006
The Original Requirement states:
> //The system shall support [[dido:99_annexes:annex-b-terms-and-definitions:d:deployment_rollback|Deployment Rollback]].//[[dido:02-crusible:99-annexes:annex-b:cr-001|[C1]]]
FR-DEP-006:
* Replaces **The system** with the defined system name [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]]
* Changes **shall** to the established uppercase normative form **SHALL**
* Replaces the weak verb **support** with the observable behavior **perform**
* Links **Deployment Rollback** to the controlling definition
No other substantive normalization is required.
===== Rationale =====
[[dido:99_annexes:annex-b-terms-and-definitions:d:deployment_rollback|Deployment Rollback]] provides a controlled response when a deployment must be reversed.
This requirement establishes the ability to perform Deployment Rollback without prescribing:
* The event that initiates the rollback
* Automatic rollback behavior
* The deployment subject
* The state restored by the rollback
* The rollback mechanism
* Recovery behavior
* Backup or restoration behavior
* Rollback validation
* Preservation of rollback records
Separate requirements, workflows, or policies define those subjects and behaviors.
===== Applies To =====
This requirement applies to:
* [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]]
* [[dido:99_annexes:annex-b-terms-and-definitions:d:deployment_rollback|Deployment Rollback]]
* Deployments
===== Verification =====
Verification confirms that:
- A tested Deployment is selected for rollback
- [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] performs [[dido:99_annexes:annex-b-terms-and-definitions:d:deployment_rollback|Deployment Rollback]] for the tested Deployment
- The result of the tested Deployment Rollback can be determined
===== Referenced By =====
The following pages reference this requirement:
{{backlinks>.#dido:02-crusible}}
===== Implementation Status =====
Implemented and Verified
===== Requirement Status =====
Review and approve FR-DEP-006 as a leaf requirement.
----
===== Issues =====
Determine whether separate requirements define the conditions that initiate Deployment Rollback.
Determine whether separate requirements define the required result of Deployment Rollback.
----
===== Notes for Editors =====
This requirement page retains the stable requirement identifier ''FR-DEP-006''.
This page is a leaf requirement page and omits a trailing '':start'' from its namespace.
The Statement preserves the approved source intent by requiring Crucible to perform Deployment Rollback.
Do not add automatic initiation, predeployment-state restoration, recovery, backup, replacement, validation, or rollback-record obligations unless the controlling requirement changes through an approved requirements process.
To reference this requirement Statement from another wiki page, insert:
{{section>dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-03-deployment-orchestration:fr-dep-006#Statement&noheader&nofooter&noeditbtn}}
----
© 2026 Dido Solutions, Inc. and Jackrabbit Consulting, Inc.