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 295862b78f71931e["📁 requirements/Functional/Integration"]
subgraph ab9daa77a1cb1221["📄 GitHubIntegration.md"]
b37b9282f6da886["Automate Documentation Export"];
class b37b9282f6da886 userRequirement;
click b37b9282f6da886 "GitHubIntegration.html#automate-documentation-export";
39bccf245057be71["Automate Pull Request Validations"];
class 39bccf245057be71 userRequirement;
click 39bccf245057be71 "GitHubIntegration.html#automate-pull-request-validations";
80f699a01d9db166["Automated Documentation Export on PR Merge"];
class 80f699a01d9db166 systemRequirement;
click 80f699a01d9db166 "GitHubIntegration.html#automated-documentation-export-on-pr-merge";
ac8e1ef6e6aaf2de["Generate Change Logs for Pull Requests"];
class ac8e1ef6e6aaf2de userRequirement;
click ac8e1ef6e6aaf2de "GitHubIntegration.html#generate-change-logs-for-pull-requests";
end
end
subgraph 6ac6c5ebccc78d5e["📁 requirements/Functional/Output/Verifications"]
subgraph 561c220cadb6e74d["📄 DiagramVerifications.md"]
a125312e2a52f1c5["Automated Documentation Export on PR Merge Verification"];
class a125312e2a52f1c5 verification;
click a125312e2a52f1c5 "../Output/Verifications/DiagramVerifications.html#automated-documentation-export-on-pr-merge-verification";
end
end
b37b9282f6da886 -.->|deriveReqT| 80f699a01d9db166;
39bccf245057be71 -.->|deriveReqT| 80f699a01d9db166;
376c8d0428b96897["update_docs.yml"];
class 376c8d0428b96897 default;
click 376c8d0428b96897 "../../../.github/workflows/update_docs.yml";
80f699a01d9db166 -->|satisfiedBy| 376c8d0428b96897;
80f699a01d9db166 -.->|verifiedBy| a125312e2a52f1c5;
a125312e2a52f1c5 -->|satisfiedBy| 376c8d0428b96897;
Automate Documentation Export
The system shall automate export of HTML documentation in the GitHub workflow on PR merge event, so that the documentation is always accessible and up-to-date for GitHub Pages.
Metadata
Relations
Automated Documentation Export on PR Merge
The system shall implement a GitHub workflow that automatically exports and commits updated HTML documentation when pull requests are merged to the main branch.
Details
The GitHub workflow shall:
- Be triggered only when a pull request is merged to the main branch (not on PR creation or updates)
- Check out the latest code from the main branch post-merge
- Build the Reqvire tool from source
- Run the HTML export process using
reqvire export --output docs
- Check if any documentation files have been added or modified
- Commit any updated files with a standardized commit message
- Push the updates back to the main branch
This ensures that the HTML documentation in the docs/ folder is always up-to-date after changes are merged to the main branch, providing accurate documentation for GitHub Pages without requiring manual intervention.
Metadata
Relations
Automate Pull Request Validations
The system shall automate validations of pull requests in the GitHub workflow to ensure model consistency before merging.
Metadata
Relations
Generate Change Logs for Pull Requests
The system shall generate detailed change logs for pull requests, summarizing modifications to the System model and related components.
Metadata
Relations