====== FR-BAS-004 — Perform Noninteractive Workspace Execution ======
[[dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-09-baseline-composition-and-workspace:start|Go to C.3.9 Baseline Composition and Workspace]]
===== Statement =====
[[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] SHALL execute [[dido:99_annexes:annex-b-terms-and-definitions:w:workspace|Workspace]] operations without interactive input.
===== Derived From =====
This requirement derives from:
* Crucible System Requirements Specification, Version 1.1 Draft, Functional Requirements, FR-BAS-004
The Original Requirement states:
> //The system shall support noninteractive workspace execution.//[[dido:02-crusible:99-annexes:annex-b:cr-001|[C1]]]
FR-BAS-004:
* 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 phrase **support noninteractive workspace execution** with the direct and observable behavior **execute Workspace operations without interactive input**
* Links [[dido:99_annexes:annex-b-terms-and-definitions:w:workspace|Workspace]] to its controlling definition
No other substantive normalization is required.
===== Rationale =====
Noninteractive execution allows [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] to perform operations within a [[dido:99_annexes:annex-b-terms-and-definitions:w:workspace|Workspace]] without requiring an operator to respond to prompts, enter values, select options, or approve intermediate actions during execution.
This capability enables Workspace operations to participate in automated [[dido:99_annexes:annex-b-terms-and-definitions:w:workflow|Workflows]], [[dido:99_annexes:annex-b-terms-and-definitions:g:gitops|GitOps]] Workflows, and [[dido:99_annexes:annex-b-terms-and-definitions:c:ci_cd_pipeline|CI/CD Pipelines]].
Inputs required by a noninteractive Workspace operation can be supplied through:
* Workspace content
* Configuration
* Parameters
* Environment variables
* Referenced files
* Repository content
* Pipeline inputs
* Identified credentials or access mechanisms
This requirement establishes execution without interactive input without prescribing:
* A particular command-line interface
* A particular application programming interface
* A particular automation platform
* A particular input mechanism
* A particular parameter format
* A particular credential mechanism
* A particular Workspace layout
* A particular operation performed within the Workspace
* Unattended approval of actions that require an external authorization decision
Separate requirements, architecture specifications, interface definitions, and Workflow definitions govern 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:w:workspace|Workspaces]]
* Workspace operations
* Automated [[dido:99_annexes:annex-b-terms-and-definitions:w:workflow|Workflows]]
* [[dido:99_annexes:annex-b-terms-and-definitions:g:gitops|GitOps]] Workflows
* [[dido:99_annexes:annex-b-terms-and-definitions:c:ci_cd_pipeline|CI/CD Pipelines]]
===== Verification =====
Verification confirms that:
- A [[dido:99_annexes:annex-b-terms-and-definitions:w:workspace|Workspace]] operation and all required inputs are selected for testing
- The selected inputs are supplied before execution begins
- [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] initiates the selected Workspace operation
- Crucible completes the selected Workspace operation without requesting interactive input
- The operation produces an observable result or recorded failure
- The result of the Workspace operation can be identified
===== Referenced By =====
The following pages reference this requirement:
{{backlinks>.#dido:02-crusible}}
===== Implementation Status =====
Implemented and Verified
===== Requirement Status =====
Review and approve FR-BAS-004 as a leaf requirement.
----
===== Issues =====
Determine whether separate requirements define the input mechanisms available to noninteractive Workspace operations.
Determine whether separate requirements govern credential delivery and secret handling during noninteractive execution.
Determine whether separate requirements define timeout, retry, cancellation, and failure-reporting behavior for noninteractive Workspace operations.
----
===== Notes for Editors =====
This requirement page retains the stable requirement identifier ''FR-BAS-004''.
This page is a leaf requirement page and omits a trailing '':start'' from its namespace.
The Statement uses the controlling Terms and Definitions entry:
* [[dido:99_annexes:annex-b-terms-and-definitions:w:workspace|Workspace]]
The Statement addresses execution of Workspace operations without interactive input.
FR-BAS-001 governs consumption of Baseline Repositories from a Workspace.
FR-BAS-002 governs composition of selected Baselines.
FR-BAS-003 governs processing of predeployment and postdeployment steps.
Noninteractive execution does not eliminate the need for required inputs, credentials, policy checks, or external authorization decisions. Those inputs and decisions must occur before execution or through a defined noninteractive mechanism.
Do not add particular interfaces, automation platforms, parameter formats, input mechanisms, credential mechanisms, timeout behavior, retry behavior, cancellation behavior, or unattended approval 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-09-baseline-composition-and-workspace:fr-bas-004#Statement&noheader&nofooter&noeditbtn}}
----
© 2026 Dido Solutions, Inc. and Jackrabbit Consulting, Inc.