Elements
graph TD;
%% REQVIRE-AUTOGENERATED-DIAGRAM
%% Graph styling
classDef userRequirement fill:#D1C4E9,stroke:#7E57C2,stroke-width:2px;
classDef systemRequirement fill:#E1D8EE,stroke:#673AB7,stroke-width:1.5px;
classDef verification fill:#DCEDC8,stroke:#4CAF50,stroke-width:2px;
classDef folder fill:#FAFAFA,stroke:#9E9E9E,stroke-width:3px;
classDef file fill:#FFF8E1,stroke:#FFCA28,stroke-width:2px;
classDef default fill:#F5F5F5,stroke:#424242,stroke-width:1.5px;
subgraph 6ac6c5ebccc78d5e["๐ requirements/Functional/Output/Verifications"]
subgraph 561c220cadb6e74d["๐ DiagramVerifications.md"]
a125312e2a52f1c5["Automated Documentation Export on PR Merge Verification"];
class a125312e2a52f1c5 verification;
click a125312e2a52f1c5 "DiagramVerifications.html#automated-documentation-export-on-pr-merge-verification";
dc6eabd419d3f364["Diagram Generation Test"];
class dc6eabd419d3f364 verification;
click dc6eabd419d3f364 "DiagramVerifications.html#diagram-generation-test";
6e29457ef7c1661a["Diagram Relation Filtering Verification"];
class 6e29457ef7c1661a verification;
click 6e29457ef7c1661a "DiagramVerifications.html#diagram-relation-filtering-verification";
948d575da460bbd3["File Diagram Attachment Test"];
class 948d575da460bbd3 verification;
click 948d575da460bbd3 "DiagramVerifications.html#file-diagram-attachment-test";
4149573a28941f35["Visualize Model Relationships Verification"];
class 4149573a28941f35 verification;
click 4149573a28941f35 "DiagramVerifications.html#visualize-model-relationships-verification";
end
end
4c152fa6d1232d99["update_docs.yml_disabled"];
class 4c152fa6d1232d99 default;
click 4c152fa6d1232d99 "../../../../.github/workflows/update_docs.yml_disabled";
a125312e2a52f1c5 -->|satisfiedBy| 4c152fa6d1232d99;
6da864fbba49def6["test.sh"];
class 6da864fbba49def6 default;
click 6da864fbba49def6 "../../../../tests/test-attachment-export/test.sh";
948d575da460bbd3 -->|satisfiedBy| 6da864fbba49def6;
Automated Documentation Export on PR Merge Verification
This test verifies that the system automatically exports and updates HTML documentation when pull requests are merged to the main branch.
Details
Acceptance Criteria
- System should have a GitHub workflow that automatically exports documentation on PR merge
- The workflow should only be triggered when PRs are merged to the main branch
- Exported documentation should be committed back to the main branch
- The commit message should clearly indicate the automated nature of the change
Test Criteria
- Workflow defined in the GitHub workflow configuration correctly
- Workflow triggers only on PR merge to main branch
- Workflow correctly checks out code, builds the tool, and exports documentation
- Workflow commits and pushes changes back to the main branch
- Commit message is informative and standardized
Metadata
Relations
Diagram Generation Test
This test verifies that the HTML export correctly generates and embeds mermaid diagrams for requirements.
Details
Acceptance Criteria
- System should process requirements files and generate embedded mermaid diagrams during export
- System should create diagrams that represent relationships between elements
- System should properly visualize all relationship types (verifies, trace, derives, satisfies, etc.)
- System should render relationships with appropriate arrows and formatting
- All auto-generated diagrams must include the REQVIRE-AUTOGENERATED-DIAGRAM marker for identification
- Marker should be embedded within the mermaid diagram as a comment for reliable identification
Test Criteria
- Export command exits with success (0) return code
- Generated HTML files contain the expected mermaid diagrams
- Diagram content accurately reflects the relationships defined in the requirements
- All relationship types are correctly visualized with proper arrows and labels (verifies, trace, derives, satisfies)
- Special relationship types like โderiveReqTโ are properly rendered
- All auto-generated diagrams contain the REQVIRE-AUTOGENERATED-DIAGRAM marker
- Marker appears as a mermaid comment within the diagram block
Metadata
Relations
Diagram Relation Filtering Verification
This test verifies that the system correctly filters relations in diagram generation to render only forward relations while ensuring complete element hierarchy representation.
Details
Acceptance Criteria
- System should render only relations from DIAGRAM_RELATIONS list to prevent duplicate arrows for bidirectional relationships
- System should start with file-local parent requirements and include all children even if they are defined outside of the file
- System should apply list-based rendering according to DIAGRAM_RELATIONS specification
- Generated diagrams should not contain both relations from opposite pairs for the same logical relationship
Test Criteria
- Command exits with success (0) return code
- Diagrams contain only relations specified in DIAGRAM_RELATIONS (e.g.,
derive but not derivedFrom)
- Bidirectional relationships appear as single arrows using the relation specified in DIAGRAM_RELATIONS
- Child elements are included when parent elements are in the file, even if children are in different files
- No duplicate arrows exist for the same logical relationship
- Arrow rendering follows the DIAGRAM_RELATIONS list specification
Metadata
Relations
File Diagram Attachment Test
This test verifies that element attachments are displayed within file-based diagram node boxes with clickable links.
Test Steps
- Create a model with elements that have attachments
- Run export or generate-diagrams command
- Verify element nodes show attachment filenames with ๐ prefix
- Verify attachments appear below element name using
<br/> separator
- Verify attachment links are clickable (click handlers present)
Expected Results
- Elements with attachments show
Element Name<br/>๐ filename.md format
- Multiple attachments are each on separate lines
- Elements without attachments show only their name
- Click handlers navigate to attachment files
Metadata
Relations
Visualize Model Relationships Verification
This test verifies that the system provides visual representations of relationships within the System model in the generated diagrams.
Details
Acceptance Criteria
- System should generate diagrams showing relationships between model elements
- Diagrams should clearly represent different relationship types
- Visual representation should aid in understanding dependencies between elements
Test Criteria
- Command exits with success (0) return code
- Generated diagrams contain all expected relationship types
- Relationships are visually differentiated based on their type
- Element dependencies are clearly displayed in the diagrams
Metadata
Relations