FR-MC-002 — Provider-Specific Extensions
Statement
Crucible SHALL provide provider-specific extensions through Provider Plugins.
Derived From
This requirement derives from:
-
Crucible System Requirements Specification, Version 1.1 Draft, Functional Requirements, FR-MC-002
The Original Requirement states:
The system shall support provider-specific extensions through plugins.[C1]
FR-MC-002:
-
Replaces The system with the defined system name Crucible
-
Changes shall to the established uppercase normative form SHALL
-
Replaces the weak verb support with provide
-
Uses the defined Provider Plugin concept
-
Preserves plugins as the source-required extension mechanism
No other substantive normalization is required.
Rationale
Providers expose capabilities, interfaces, parameters, and lifecycle operations that differ from those exposed by other Providers.
A Provider Plugin allows Crucible to provide provider-specific behavior without incorporating that behavior directly into provider-independent Crucible components.
Provider-specific extensions can address:
-
Provider resource types
-
Provider interfaces
-
Provider authentication
-
Provider regions
-
Provider networking
-
Provider storage
-
Provider machine types
-
Provider-managed services
-
Provider-specific deployment operations
-
Provider-specific validation
-
Provider-specific error handling
This requirement establishes Provider Plugins as the extension mechanism without prescribing:
-
Plugin discovery
-
Plugin installation
-
Plugin loading
-
Plugin activation
-
Version compatibility
-
Plugin isolation
-
Plugin signing
-
Plugin substitution
-
Plugin removal
-
A programming language or packaging format
Separate requirements, architecture specifications, or interface definitions govern those subjects.
Applies To
This requirement applies to:
-
Provider-specific extensions
-
Provider-specific behavior
Verification
Verification confirms that:
-
Provider-specific behavior is selected for testing
-
The tested provider-specific behavior is provided through a Provider Plugin
-
Crucible uses the Provider Plugin to provide the tested provider-specific behavior
-
The observed behavior demonstrates a provider-specific extension supplied through the Provider Plugin
Referenced By
The following pages reference this requirement:
Implementation Status
Implemented and Verified
Requirement Status
Review and approve FR-MC-002 as a leaf requirement.
Issues
Determine whether separate requirements govern Provider Plugin discovery, installation, loading, and activation.
Determine whether separate requirements require Provider Plugins to conform to a Provider Contract.
Notes for Editors
This requirement page retains the stable requirement identifier FR-MC-002.
This page is a leaf requirement page and omits a trailing :start from its namespace.
The Statement preserves the source-required use of plugins for provider-specific extensions.
Do not generalize the extension mechanism beyond Provider Plugins without a corresponding change to the controlling requirement.
Do not add Provider Plugin discovery, installation, loading, activation, Provider Contract conformance, version compatibility, isolation, signing, substitution, or removal 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-04-multi-cloud-management:fr-mc-002#Statement&noheader&nofooter&noeditbtn}}
© 2026 Dido Solutions, Inc. and Jackrabbit Consulting, Inc.