dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-01-configuration-management:fr-cfg-004

This is an old revision of the document!


FR-CFG-004 — Environment Inheritance

Crucible SHALL produce a resolved Infrastructure Configuration by combining configuration values inherited from an identified parent Infrastructure Configuration with explicit overrides defined by the child Infrastructure Configuration.

The system SHALL support environment inheritance models.

Crucible System Requirements Specification, Version 1.1 Draft, Functional Requirements, Configuration Management, FR-CFG-004.

The source statement expresses the approved functional intent but does not provide all information required for deterministic verification.

The following Specification Discipline and Authoring findings apply:

  • The system does not use the defined system name
  • Support is a weak verb that does not identify the behavior Crucible performs
  • Environment inheritance model does not identify the configuration artifacts that participate in inheritance
  • The source statement does not distinguish a parent Infrastructure Configuration from a child Infrastructure Configuration
  • The source statement does not identify the result produced by resolving inherited values and child overrides
  • The source statement does not identify how an explicit child override affects an inherited value
  • The source statement does not identify how a value without an explicit override is resolved
  • The source statement does not identify the observable result used to verify inheritance

The normalized Statement:

  • Replaces The system with the defined system name
  • Replaces support with the direct behavior produce
  • Identifies the parent and child Infrastructure Configurations
  • Identifies the resolved Infrastructure Configuration as the required result
  • Defines how inherited values and explicit child overrides contribute to the resolved result

The normalized Statement does not introduce configuration validation, approval, deployment, revision-history, provenance, traceability, or multiple-parent inheritance obligations. Separate requirements govern those behaviors when required.

Environment inheritance allows related Infrastructure Environments to share common configuration without duplicating the complete configuration for each environment.

A parent Infrastructure Configuration defines values that apply to one or more child configurations.

A child Infrastructure Configuration identifies its parent and defines the differences required for its target environment.

For each configuration value:

  • The resolved Infrastructure Configuration retains the inherited value when the child does not define an explicit override
  • The resolved Infrastructure Configuration uses the child value when the child defines an explicit override
  • The resolved Infrastructure Configuration includes values introduced by the child

For example, development, test, staging, and production environments may inherit common infrastructure structure while defining different values for:

  • Resource capacity
  • Scaling limits
  • Network addresses
  • Environment identifiers
  • Deployment regions
  • Access restrictions
  • Retention periods

Environment inheritance contributes to:

  • Reduced configuration duplication
  • Consistent configuration across related environments
  • Controlled environment-specific variation
  • Explicit configuration overrides
  • Configuration reuse

This requirement applies to:

  1. Verification SHALL confirm that each tested child Infrastructure Configuration identifies its parent Infrastructure Configuration
  2. Verification SHALL confirm that Crucible produces a resolved Infrastructure Configuration from the identified parent and child configurations
  3. Verification SHALL confirm that the resolved Infrastructure Configuration contains values inherited from the identified parent
  4. Verification SHALL confirm that an explicit child override replaces the corresponding inherited value in the resolved Infrastructure Configuration
  5. Verification SHALL confirm that a value without an explicit child override retains the value inherited from the parent Infrastructure Configuration
  6. Verification SHALL confirm that a value introduced by the child Infrastructure Configuration appears in the resolved Infrastructure Configuration

Verification may include:

  • Parent Infrastructure Configuration inspection
  • Child Infrastructure Configuration inspection
  • Inheritance relationship inspection
  • Inherited-value comparison
  • Explicit override tests
  • Child-introduced value tests
  • Resolved Infrastructure Configuration inspection

The verification record SHALL identify:

  1. The tested parent Infrastructure Configuration
  2. The tested child Infrastructure Configuration
  3. The inherited configuration values
  4. The explicit child overrides
  5. The values introduced by the child Infrastructure Configuration
  6. The resulting resolved Infrastructure Configuration
  7. The observed results
  8. The generated Evidence

The wiki Backlinks function provides the current list of pages that reference FR-CFG-004.

Incoming traceability should be derived dynamically from backlinks rather than maintained as a duplicate manual list.

Backlinks identify incoming references but do not define the semantics of each relationship. Referencing pages should identify whether the relationship represents realization, refinement, verification, dependency, or another defined traceability relationship.

The Crucible Concept of Operations describes the use of reusable configuration content within a CI/CD Pipeline workspace.

Environment inheritance allows the workflow to:

  • Retrieve a parent Infrastructure Configuration
  • Retrieve a child Infrastructure Configuration
  • Inherit common configuration values from the parent
  • Apply explicit overrides defined by the child
  • Include values introduced by the child
  • Produce a resolved Infrastructure Configuration

This model reduces duplicated configuration while preserving explicit differences among related environments.

Phase 1 and subsequent phases

Not Assessed

Implementation status requires verification that Crucible produces a resolved Infrastructure Configuration by combining values inherited from an identified parent Infrastructure Configuration with explicit overrides defined by the child Infrastructure Configuration.

Draft

The source System Requirements Specification identifies Version 1.1 as a draft.


This requirement page should retain the stable requirement identifier FR-CFG-004.

Changes to the Statement SHALL preserve the approved intent of the source requirement.

Material changes should receive review and should update the related outbound traceability, verification criteria, and source records.

The Source Statement should preserve the original wording from the controlling System Requirements Specification.

Verification criteria should test only production of the resolved Infrastructure Configuration from inherited values and explicit child overrides.

Validation, approval, deployment, revision history, provenance, traceability, conflict handling, inheritance depth, and multiple-parent inheritance should not be introduced as normative behavior on this page unless the Statement changes through an approved requirements process.

Incoming traceability should use the wiki Backlinks function rather than a manually maintained list.

To reference this requirement Statement from another wiki page, insert:

{{section>dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-01-configuration-management:fr-cfg-004#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.

  • dido/02-crusible/99-annexes/annex-c-requirements/03-functional-requirements/03-01-configuration-management/fr-cfg-004.1784653070.txt.gz
  • Last modified: 2026/07/21 09:57
  • by nick_dido