## ADDED Requirements

### Requirement: SOP markdown as secondary format
Workflows MAY be defined as `.sop.md` files in addition to YAML. The engine SHALL detect `.sop.md` files during discovery and transpile them to the DAG node representation.

#### Scenario: SOP file discovered alongside YAML
- **WHEN** a `.sop.md` file exists in the workflows directory alongside `.yaml` workflow files
- **THEN** both SHALL be discovered and listed as available workflows

#### Scenario: SOP transpiled to prompt nodes
- **WHEN** a `.sop.md` file is loaded
- **THEN** each `## Steps` section item SHALL become a `prompt:` node
- **THEN** `## Parameters` SHALL be extracted as node metadata

### Requirement: RFC 2119 constraint extraction
The transpiler SHALL extract RFC 2119 constraints from `**Constraints:**` blocks and embed them in the prompt text of the corresponding node.

#### Scenario: Constraints included in prompt
- **WHEN** a step has `**Constraints:** - You MUST do X`
- **THEN** the constraint text SHALL be appended to the node's prompt

### Requirement: Overview as workflow description
The `## Overview` section of a `.sop.md` file SHALL become the workflow's `description` field.

#### Scenario: Overview maps to description
- **WHEN** a `.sop.md` has `## Overview\nThis SOP does X`
- **THEN** the resulting workflow SHALL have `description: "This SOP does X"`

### Requirement: Parameter acquisition constraints
The transpiler SHALL validate that all required parameters from `## Parameters` are present before execution, using the constraint pattern from the SOP.

#### Scenario: Missing required parameter
- **WHEN** a required parameter has no value provided
- **THEN** the workflow SHALL prompt the user for the missing parameter before executing
