| Next revision | Previous revision |
| dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-10-dependency-capture-and-offline-transfer:start [2026/07/17 00:22] – created nick_dido | dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-10-dependency-capture-and-offline-transfer:start [2026/07/31 07:08] (current) – nick_dido |
|---|
| ====== C.3.11 Management Interfaces ====== | ====== C.3.10 Dependency Capture and Offline Transfer ====== |
| |
| [[dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:start|Go to Crucible Functional Requirements]] | [[dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:start|Go to Crucible Functional Requirements]] |
| |
| The Management Interfaces [[dido:99_annexes:annex-b-terms-and-definitions:f:functional_requirement|requirements]] define how [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] presents a web-based interface for managing multiple [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_environment|Infrastructure Environments]] and ensures that the web interface uses the same engine and command-line capabilities as the primary command-line interface. | The [[dido:99_annexes:annex-b-terms-and-definitions:d:dependency_capture|Dependency Capture]] and [[dido:99_annexes:annex-b-terms-and-definitions:o:offline_transfer|Offline Transfer]] [[dido:99_annexes:annex-b-terms-and-definitions:f:functional_requirement|requirements]] define how [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] captures [[dido:99_annexes:annex-b-terms-and-definitions:b:build_dependency|Build Dependencies]], preserves those dependencies in a managed [[dido:99_annexes:annex-b-terms-and-definitions:d:dependency_store|Dependency Store]], produces a [[dido:99_annexes:annex-b-terms-and-definitions:t:transfer_bundle|Transfer Bundle]], populates [[dido:99_annexes:annex-b-terms-and-definitions:o:offline_repository|Offline Repositories]] in a [[dido:99_annexes:annex-b-terms-and-definitions:d:disconnected_environment|Disconnected Environment]], and permits the Dependency Store implementation to evolve without changing the Dependency Capture [[dido:99_annexes:annex-b-terms-and-definitions:c:contract]]. |
| |
| Together, these requirements establish an additional management interface without replacing or duplicating the primary command-line execution path. | Together, these requirements establish controlled Dependency Capture and Offline Transfer across a [[dido:99_annexes:annex-b-terms-and-definitions:t:transfer_boundary|Transfer Boundary]] while preserving the applicable [[dido:99_annexes:annex-b-terms-and-definitions:t:transfer_authorization|Transfer Authorization]], [[dido:99_annexes:annex-b-terms-and-definitions:t:transfer_bundle_integrity|Transfer Bundle Integrity]], [[dido:99_annexes:annex-b-terms-and-definitions:p:provenance|Provenance]], and [[dido:99_annexes:annex-b-terms-and-definitions:t:traceability|Traceability]]. |
| |
| ===== Contents ===== | ===== Contents ===== |
| |
| {{indexmenu>dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-11-management-interfaces#1|js navbar nocookie maxjs#1 id#crucible_management_interfaces_requirements_nav}} | |
| |
| | {{indexmenu>dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-10-dependency-capture-and-offline-transfer#1|js navbar nocookie maxjs#1 id#crucible_dependency_capture_offline_transfer_requirements_nav}} |
| | |
| | ===== Requirement Status ===== |
| | |
| | <todo>Review and approve the Dependency Capture and Offline Transfer requirement set.</todo> |
| | |
| | <todo>Review and approve FR-DEPC-001 through FR-DEPC-005 as leaf requirements.</todo> |
| | |
| | ---- |
| | ===== Issues ===== |
| | |
| | <todo>Confirm that the requirement set distinguishes Dependency Capture, Dependency Store management, Transfer Bundle creation, Offline Repository population, and Dependency Store implementation independence without overlapping normative behavior.</todo> |
| | |
| | <todo>Confirm that requirements governing Offline Transfer identify the source environment, destination environment, Transfer Boundary, and required transfer result when the controlling source establishes that information.</todo> |
| | |
| | <todo>Confirm that requirements governing transfer across a Transfer Boundary identify the applicable Transfer Authorization and Transfer Bundle Integrity obligations.</todo> |
| | |
| | ---- |
| ===== Notes for Editors ===== | ===== Notes for Editors ===== |
| |
| The individual requirement pages should retain the stable identifiers ''FR-UI-001'' through ''FR-UI-002''. | This page is a non-leaf requirement page and therefore retains a trailing '':start'' in its namespace. |
| | |
| | The namespace for this page is: |
| | |
| | ''dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-10-dependency-capture-and-offline-transfer:start'' |
| | |
| | Use the following controlling Terms and Definitions entries: |
| | |
| | * [[dido:99_annexes:annex-b-terms-and-definitions:d:dependency_capture|Dependency Capture]] |
| | * [[dido:99_annexes:annex-b-terms-and-definitions:o:offline_transfer|Offline Transfer]] |
| | * [[dido:99_annexes:annex-b-terms-and-definitions:t:transfer_bundle|Transfer Bundle]] |
| | * [[dido:99_annexes:annex-b-terms-and-definitions:b:build_dependency|Build Dependency]] |
| | * [[dido:99_annexes:annex-b-terms-and-definitions:o:offline_repository|Offline Repository]] |
| | * [[dido:99_annexes:annex-b-terms-and-definitions:d:dependency_store|Dependency Store]] |
| |
| These requirements apply to Phase 2. | The individual requirement pages retain the stable identifiers ''FR-DEPC-001'' through ''FR-DEPC-005''. |
| |
| Individual requirement pages are leaf nodes and should not include a trailing '':start'' in their namespaces. | Individual requirement pages are leaf nodes nested beneath the Dependency Capture and Offline Transfer namespace and omit a trailing '':start''. |
| |
| The Source Statement on each requirement page should preserve the original wording from the controlling System Requirements Specification. | The Derived From section on each leaf requirement page preserves the original wording from the controlling System Requirements Specification. |
| |
| Normalized Statements should use direct, testable behavior and should identify the applicable interface, managed Infrastructure Environment information, shared engine capability, command-line operation, and required result. | Normalized Statements use direct, testable behavior and identify the following only when the controlling source establishes that information: |
| |
| The web-based management application should remain an additional interface. The command-line interface remains the primary interface. | * The captured Build Dependency |
| | * The Dependency Capture event |
| | * The Dependency Store |
| | * The Transfer Bundle |
| | * The source environment |
| | * The destination environment |
| | * The [[dido:99_annexes:annex-b-terms-and-definitions:t:transfer_boundary|Transfer Boundary]] |
| | * The transfer operation |
| | * The required result |
| |
| Verification criteria should test only the behavior stated in the normalized Statement and should not introduce additional normative obligations. | Requirements governing transfer across a Transfer Boundary identify the applicable [[dido:99_annexes:annex-b-terms-and-definitions:t:transfer_authorization|Transfer Authorization]] and the controls used to preserve [[dido:99_annexes:annex-b-terms-and-definitions:t:transfer_bundle_integrity|Transfer Bundle Integrity]] only when the controlling source establishes those obligations. |
| |
| Incoming [[dido:99_annexes:annex-b-terms-and-definitions:t:traceability|Traceability]] should use the wiki Backlinks function rather than a manually maintained list. | Requirements governing a [[dido:99_annexes:annex-b-terms-and-definitions:d:disconnected_environment|Disconnected Environment]] or [[dido:99_annexes:annex-b-terms-and-definitions:a:air-gapped_environment|Air-Gapped Environment]] do not assume access to external repositories or network services. |
| |
| To reference a requirement Statement from another wiki page, insert: | The Dependency Capture contract remains independent of the internal representation or implementation of the Dependency Store unless a lower-level requirement explicitly establishes that constraint. |
| |
| <code dokuwiki> | Verification criteria test only the behavior stated in the normalized Statement and do not introduce additional normative obligations. |
| {{section><namespace>#Statement&noheader&nofooter&noeditbtn}} | |
| </code> | |
| |
| Replace ''<namespace>'' with the namespace of the requirement leaf page. | Incoming [[dido:99_annexes:annex-b-terms-and-definitions:t:traceability|Traceability]] uses the wiki Backlinks function rather than a manually maintained list. |
| |
| The section name following ''#'' SHALL match the section heading verbatim on the requirement page. | Each leaf requirement page includes its actual namespace in the DokuWiki section-transclusion example. |
| |
| Do not rename a requirement page after an external citation unless a redirect or move plan is in place. | Do not rename a requirement page after an external citation unless a redirect or move plan is in place. |