====== MO-003b — Provider-Independent Crucible Description ======
[[dido:02-crusible:99-annexes:annex-c-requirements:01-mission-objectives:mo-003:start|Go to MO-003 — Cloud-Agnostic Deployment]]
===== Statement =====
[[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] SHALL use the same identified version of the provider-independent [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible_description|Crucible Description]] for each selected [[dido:99_annexes:annex-b-terms-and-definitions:d:deployment_platform|Deployment Platform]].
===== Derived From =====
This requirement derives from:
* [[dido:02-crusible:99-annexes:annex-c-requirements:01-mission-objectives:mo-003:start|MO-003 — Cloud-Agnostic Deployment]]
The Original Requirement states:
> //The system SHALL provide cloud-agnostic deployment capabilities.//[[dido:02-crusible:99-annexes:annex-b:cr-002|[C2]]]
MO-003b preserves the portion of the Original Requirement that requires common provider-independent deployment intent across the selected Deployment Platforms.
The separate requirements derived from MO-003 address:
* [[dido:02-crusible:99-annexes:annex-c-requirements:01-mission-objectives:mo-003:mo-003a|MO-003a — Cross-Platform Deployment]]
* [[dido:02-crusible:99-annexes:annex-c-requirements:01-mission-objectives:mo-003:mo-003c|MO-003c — Provider-Independent Infrastructure Baseline]]
* [[dido:02-crusible:99-annexes:annex-c-requirements:01-mission-objectives:mo-003:mo-003d|MO-003d — Limitation of Provider-Specific Dependencies]]
===== Rationale =====
A provider-independent [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible_description|Crucible Description]] allows the same deployment intent to apply across multiple Deployment Platforms.
Using the same identified version prevents a change of Deployment Platform from implicitly changing the provider-independent deployment intent.
The Crucible Description should express the required deployment without embedding the proprietary interfaces, services, data formats, software development kits, or operational mechanisms of a particular Cloud Provider.
Platform-specific information remains separate from the provider-independent Crucible Description. A [[dido:99_annexes:annex-b-terms-and-definitions:p:provider_implementation|Provider Implementation]] translates the provider-independent deployment intent into mechanisms supported by the selected Deployment Platform.
Using the same identified version supports:
* Consistent deployment intent
* Controlled comparison of deployment results
* Change control
* Detection of provider-specific information within provider-independent content
* Reuse across supported Deployment Platforms
* [[dido:99_annexes:annex-b-terms-and-definitions:p:provenance|Provenance]]
* [[dido:99_annexes:annex-b-terms-and-definitions:t:traceability|Traceability]]
This requirement does not require use of the same Infrastructure Baseline. MO-003c addresses that outcome.
===== 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:c:cloud_agnosticism|Cloud Agnosticism]]
* [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible_description|Crucible Descriptions]]
* Crucible Description identifiers
* Crucible Description versions
* [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_independent_information|Platform Independent Information]]
* [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_specific_information|Platform Specific Information]]
* [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_specific_parameter|Platform Specific Parameters]]
* [[dido:99_annexes:annex-b-terms-and-definitions:d:deployment_platform|Deployment Platforms]]
* [[dido:99_annexes:annex-b-terms-and-definitions:p:provider_contract|Provider Contracts]]
* [[dido:99_annexes:annex-b-terms-and-definitions:p:provider_implementation|Provider Implementations]]
* [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_deployment|Infrastructure Deployments]]
* [[dido:99_annexes:annex-b-terms-and-definitions:a:artifact|Artifacts]]
* [[dido:99_annexes:annex-b-terms-and-definitions:e:evidence|Evidence]]
* [[dido:99_annexes:annex-b-terms-and-definitions:p:provenance|Provenance]]
* [[dido:99_annexes:annex-b-terms-and-definitions:t:traceability|Traceability]]
===== Verification =====
Verification confirms that:
- Two or more selected [[dido:99_annexes:annex-b-terms-and-definitions:d:deployment_platform|Deployment Platforms]] are identified
- The provider-independent [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible_description|Crucible Description]] is identified
- Each deployment uses a Crucible Description with the same identifier
- Each deployment uses the same identified version of the Crucible Description
- The Crucible Description contains provider-independent deployment intent
- Changing the selected Deployment Platform does not require modification of the identified Crucible Description version
- [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_specific_information|Platform Specific Information]] remains separate from the provider-independent Crucible Description
- Each deployment record identifies the Crucible Description identifier and version used for the selected Deployment Platform
- The verification record preserves [[dido:99_annexes:annex-b-terms-and-definitions:t:traceability|Traceability]] among the Crucible Description, selected Deployment Platform, Provider Implementation, platform-specific information, and deployment result
===== Referenced By =====
The following pages reference this requirement:
{{backlinks>.#dido:02-crusible}}
===== Delivery Phase =====
Implemented and Verified
===== Implementation Status =====
Assess whether deployments to the selected Deployment Platforms use the same identified version of the provider-independent Crucible Description.
===== Requirement Status =====
Review and accept MO-003b as a proposed derived requirement created from the evaluation and decomposition of MO-003 in the Crucible System Requirements Specification, Version 1.1 Draft.
----
===== Issues =====
The following unresolved issues affect this requirement:
Define the provider-independent information that the Crucible Description must contain.
Define the provider-specific information that must remain separate from the Crucible Description.
Identify the controlling source that defines the boundary between provider-independent and provider-specific information.
Determine whether changing the selected Deployment Platform may require any controlled transformation of the Crucible Description without creating a new Crucible Description version.
Define the identifier and versioning rules used to determine that each deployment uses the same Crucible Description.
----
===== Notes for Editors =====
This requirement page should retain the stable requirement identifier ''MO-003b''.
This page is a leaf requirement page and omits a trailing '':start'' from its namespace.
The parent MO-003 page is a non-leaf page and retains a trailing '':start'' in its namespace.
Changes to the Statement should preserve:
* [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] as the responsible actor
* The provider-independent [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible_description|Crucible Description]] as the common source of deployment intent
* Use of the same identified Crucible Description version across the selected Deployment Platforms
* Separation of provider-independent and provider-specific information
The unresolved boundary between provider-independent and provider-specific information should remain recorded in the Issues section until a controlling source defines it.
Material changes should receive review and should update the verification criteria, source records, and Issues section.
To reference this requirement Statement from another wiki page, insert:
{{section>dido:02-crusible:99-annexes:annex-c-requirements:01-mission-objectives:mo-003:mo-003b#Statement&noheader&nofooter&noeditbtn}}
Do not rename this page after an external citation unless a redirect or move plan is in place.
----
© 2026 Dido Solutions, Inc. and Jackrabbit Consulting, Inc.